Program C Ansi Programming Embedded Systems in C and C++ phần 10 - Pdf 20

A piece of software that is independent of the processor on which it will be run. Most
programs that can be written in a high-level language are processor-independent. Contrast
with processor-specific.
processor-specific
A piece of software that is highly dependent on the processor on which it will be run. Such
code must usually be written in assembly language. Contrast with processor-independent.
profiler
A software development tool that collects and reports execution statistics for your programs.
These statistics include the number of calls to each subroutine and the total amount of time
spent within each. This data can be used to learn which subroutines are the most critical and,
therefore, demand the greatest code efficiency.
program counter
See instruction pointer.
R
RAM
Random-Access Memory. A broad classification of memory devices that includes all devices
in which individual memory locations can be read or written as required.
RISC
Reduced Instruction Set Computer. Describes the architecture of a processor family. RISC
processors generally feature fixed-length instructions, a load-store memory architecture, and
a large number of general-purpose registers or register windows. The MIPS processor family
is an excellent example. Contrast with CISC.
ROM
Read-Only Memory. A broad classification of memory devices that includes all devices in
which the individual memory locations can be read but not written.
ROM emulator
A debugging tool that takes the place of-or emulates-the ROM on your target board. A ROM
emulator acts very much like a debug monitor, except that it includes its own serial or
network connection to the host.
ROM monitor
See debug monitor.

The address from which the first instruction will be fetched after the processor is powered on
or reset.
reset code
A small piece of code that is placed at the reset address. The reset code is usually written in
assembly language and might simply be the equivalent of "jump to the startup code."
reset vector
See reset address.
S
SRAM
Static Random-Access Memory. A type of RAM that retains its contents as long as power is
supplied to it. Data stored in an SRAM is lost when the system is powered down or reset.
scheduler
The part of an operating system that decides which task to run next. This decision is based on
the readiness of each task, their relative priorities, and the specific scheduling algorithm
implemented.
semaphore
A data structure that is used for intertask communication. Semaphores are usually provided
by the operating system.
simulator
A debugging tool that runs on the host and pretends to be the target processor. A simulator
can be used to test pieces of the software before the embedded hardware is available.
Unfortunately, attempts to simulate interactions with complex peripherals are often more
trouble than they are worth.
software interrupt
An interrupt that is generated by a software instruction. Software interrupts are commonly
used to implement breakpoints and operating system entry points. Compare with trap.
stack
An area of memory that contains a last-in-first-out queue of storage for parameters, automatic
variables, return addresses, and other information that must be maintained across function
calls. In multitasking situations, each task generally has its own stack.

W
watchdog timer
A hardware timer that is periodically reset by software. If the software crashes or hangs, the
watchdog timer will expire, and the entire system will be reset automatically.
Bibliography
One of the most frustrating aspects of developing embedded software is that there are few references available.
Many of the books that have been written are poor or out of print, and there are only a handful of periodicals
dedicated to the subject. What follows is an annotated list of the books, magazines, and other resources I found most
helpful in writing this book. This is not an attempt to itemize all of the relevant publications. In fact, I have
specifically omitted several books and magazines that did not impress me. What's left is a list of books worth
owning, magazines and conferences worthy of your time, and World Wide Web sites worth bookmarking.
12.1 Books
Ball, Stuart R. Embedded Microprocessor Systems: Real World Design. Newton, Mass.:
Butterworth-Heinemann, 1996.
This tiny book is packed full of information about hardware design and embedded system
development that every embedded software engineer should understand to be effective.
Brown, John Forrest. Embedded Systems Programming in C and Assembly. New York: Van
Nostrand Reinhold, 1994.
It's a good thing I didn't know about this book a few years ago. If I had, I might not have tried
writing my own. It is obvious to me that Mr. Brown and I had similar visions for our books.
And since I have tried to stay away from assembly language as much as possible, this book
would make an excellent companion to the one you are reading.
Ganssle, Jack G. The Art of Programming Embedded Systems. San Diego: Academic Press,
1992.
Some very practical advice from one of our industry's most vocal gurus. The author of a
monthly column in Embedded Systems Programming (described later in this bibliography),
Mr. Ganssle has helpfully collected some of his most lasting tips and rules of thumb in this
book. A handy reference for topics that are too specific to be covered here.
Kernighan, Brian W., and Dennis M. Ritchie. The C Programming Language. Englewood Cliffs,
N.J.: Prentice-Hall, 1988.

on the job. Every article and column is packed with practical advice and written in a casual
style familiar to readers of this and other Nutshell Handbooks. I highly recommend that
everyone reading this sentence immediately put my book down and take a few minutes to
sign up for a free subscription at It usually takes
several months to get going, but is well worth the wait.
In addition, you might want to purchase a copy of the CD-ROM archive. This searchable
database contains hundreds of past articles and columns and was an indispensable reference
in the creation of this book. More information is available at
/>Embedded Systems Conference
A technical conference hosted several times each year by the publishers of the magazine just
described. The conference has been running for about 10 years, and the number of exhibitors
and attendees continues to grow each year. The knowledge to be gained here far outweighs
the cost of traveling to the conference and attending the classes. I try to go as often as I can.
Chip Directory ( />An unbelievably large collection of information about common processors and peripherals. This is not the only
such site on the Web, but it is one of the best maintained and it has links to many of the others.
CPU Info Center ( />Tons of information about new and old processors alike. Includes a section specifically about common
embedded processors.
CRC Pitstop ( />A site dedicated to information about CRC implementation, including Ross Williams' "Painless Guide to CRC
Error Detection Algorithms." The latter is the most readable explanation of CRC calculations I've ever found.
Electronic Engineers' Toolbox ( />Focused on embedded systems, real-time software development issues, and Internet-enabling technologies, the
"EE Toolbox" is designed to make your job easier. The publishers of this site have identified, indexed, and
summarized thousands of relevant Internet resources and brought them all together in one place.
Embedded Intel Architecture ( />Intel's home page for their embedded processor line, including the 80188EB. In addition to technical
information about the hardware, there are also free development and debugging tools and example source code
listings.
news:comp.arch.embedded
A newsgroup devoted to many of the topics discussed in this book. Discussions frequently involve software
development tools and processes, comparisons of commercial real-time operating systems, and suggestions for
processor selection criteria.
news:comp.realtime

The inside layout was designed by Edie Freedman and implemented in FrameMaker by Mike Sierra. The text and
heading fonts are ITC Garamond Light and Garamond Book. The illustrations that appear in the book were created
in Macromedia Freehand 7.0 by Robert Romano. This colophon was written by Clairemarie Fisher O'Leary.


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status