This book is to help you learn the basic principles of writing software for embedded systems. It surveys the issues and discusses the various techniques for dealing with them. In particular, it discusses approaches to the appropriate use of the real-time operating systems upon which much embedded software is based. In addition to explaining what these systems do, this book points out how you can use them most effectively.
You need know nothing about embedded-systems software and its problems to read this book; we'll discuss everything from the very beginning. You should be familiar with basic computer programming concepts: you might be a software engineer with a year or more of experience, or perhaps a student with a few programming courses under your belt. You should understand the problems involved in writing application programs. This book requires a reading knowledge of the C programming language; since C is the lingua franca of embedded systems, you will have to learn it sooner or later if you hope to get into the field. A little knowledge of assembly language will also be helpful.
You have no doubt seen many books about software that are 800 or 900 or even 1000 pages long. Presumably you have noticed by now that this book is much smaller than that. This is intentional--the idea is that you might actually want to read all the way through it. This book is not entitled Everything There Is to Know about Embedded Systems Software. Nobody could write that book, and if someone could and did, you wouldn't want to read it anyway. This book is more like What You Need to Know to Get Started in Embedded Systems Software, telling you enough that you'll understand the issues you will face and getting you started on finding the information about your particular system so that you can resolve those issues.
This book is not specific to any microprocessor or real-time operating system nor is it oriented towards any particular software design methodology. The principles are the same, regardless of which microprocessor and which realtime operating system and which software design methodology you use. We will concentrate on the principles--principles that you can apply to almost any embedded system project. When you need to know the specifics of your microprocessor and your real-time operating system, look in the voluminous manuals that hardware and software vendors provide with their products. This book will help you know what information to look for.
This book is not academic or theoretical; it offers engineering information and engineering advice. In short, this book is the cornerstone of the knowledge that you'll need for writing embedded-systems software.David E. Simon
It's just what it say "a primer". This book seems like it would be great for someone who has never programmed for embedded systems. Read morePublished on Dec 18 2003
A good book for introducing embedded systems concepts from a practical point of view. It is used, along with uCOS-II by Jean J Labrosse, in a one of a kind certificate program... Read morePublished on Nov. 10 2003
I've been working with embedded systems for 10 years, and found lots of info, I hadn't seen or read before. Read morePublished on Nov. 3 2003 by Steven P Cavanagh
This book is very good overview of the process of embedded software design. Experts in embedded software design will probably not get much out of this book as he doesn't go into... Read morePublished on July 15 2002 by Jonathan Happel
This book gives a solid overview of embedded systems and how they work in conjunction with hardware and software, but it does not give enough in depth analysis of embedded systems. Read morePublished on May 13 2002 by Obaid Haqqi
This is a readable, good overview on embedded system in a nutshell. The author bundled a sample using microC/OS RTOS kernel. However, the compilation is done using Borland 3. Read morePublished on Aug. 17 2001 by B. K. Lau
Great book. Easy to read. Comprehensive. The only thing preventing it from the 5th star is lack of more OS specific examples. Read morePublished on April 4 2001 by KD
Particularly useful for those just starting out in embedded software or for students at the bachelors level. Read morePublished on Dec 6 2000 by Scotty Doodelly