Книга: Real-Time Concepts for Embedded Systems

3.1 Introduction

3.1 Introduction

It takes just minutes for a developer to compile and run a “Hello World!” application on a non-embedded system. On the other hand, for an embedded developer, the task is not so trivial. It might take days before seeing a successful result. This process can be a frustrating experience for a developer new to embedded system development.

Booting the target system, whether a third-party evaluation board or a custom design, can be a mystery to many newcomers. Indeed, it is daunting to pick up a programmer’s reference manual for the target board and pore over tables of memory addresses and registers or to review the hardware component interconnection diagrams, wondering what it all means, what to do with the information (some of which makes little sense), and how to relate the information to running an image on the target system.

Questions to resolve at this stage are

· how to load the image onto the target system,

· where in memory to load the image,

· how to initiate program execution, and

· how the program produces recognizable output.

We answer these questions in this chapter and hopefully reduce frustration by demystifying the booting and initialization process of embedded systems.

Chapter 2 discusses constructing an executable image with multiple program sections according to the target system memory layout. After the final image is successfully built and residing on the host system, the next step is to execute it on the target.

The focus of this chapter is

· image transfer from the host to the target system,

· the embedded monitor and debug agent,

· the target system loader,

· the embedded system booting process,

· various initialization procedures, and

· an introduction to BDM and JTAG interfaces.

Оглавление книги


Генерация: 0.081. Запросов К БД/Cache: 0 / 2
поделиться
Вверх Вниз