Search
 Advanced SearchView Cart   Checkout   
 Location:  Home » Books » Macintosh » Programming Embedded Systems: With C and GNU Development Tools, 2nd EditionDecember 2, 2008  
Browse
Books
Computers
Electronics
Related Categories
• Macintosh
O'Reilly
By Publisher
Custom Stores
Specialty Stores
• C & C++
Programming
O'Reilly
By Publisher
Custom Stores
• General
Programming
O'Reilly
By Publisher
Custom Stores
• General AAS
Qualifying Textbooks
Custom Stores
Specialty Stores
Books
• Systems Analysis & Design
Computer Science
Computers & Internet
Subjects
Books
• General
Computer Science
Computers & Internet
Subjects
Books
• General AAS
Computer Science
Computers & Internet
Subjects
Books
• Embedded Systems
Microprocessors & System Design
Hardware
Computers & Internet
Subjects
• Design & Architecture
Hardware
Computers & Internet
Subjects
Books
• General
Hardware
Computers & Internet
Subjects
Books
• General AAS
Hardware
Computers & Internet
Subjects
Books
• Object-Oriented Design
Software Design, Testing & Engineering
Programming
Computers & Internet
Subjects
• General
C
Programming
Computers & Internet
Subjects
• General AAS
C
Programming
Computers & Internet
Subjects
• General
Programming
Computers & Internet
Subjects
Books
• General AAS
Programming
Computers & Internet
Subjects
Books
• General
Software
Computers & Internet
Subjects
Books
• General AAS
Software
Computers & Internet
Subjects
Books
• General
Computers & Internet
Subjects
Books
• General AAS
Computers & Internet
Subjects
Books
• Illustrated
Edition (format)
Refinements
Books
• Paperback
Binding (binding)
Refinements
Books
• Printed Books
Format (feature_browse-bin)
Refinements
Books
Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition
Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition
Author: Michael Barr
Publisher: O'Reilly Media, Inc.
Category: Book

List Price: $49.99
Buy New: $37.45
You Save: $12.54 (25%)
Buy New/Used from $37.29

Avg. Customer Rating: 4.0 out of 5 stars(5 reviews)
Sales Rank: 109209

Format: Illustrated
Languages: English (Original Language), English (Unknown), English (Published)
Media: Paperback
Edition: 2
Number Of Items: 1
Pages: 301
Shipping Weight (lbs): 1.2
Dimensions (in): 9.1 x 7 x 0.9

ISBN: 0596009836
Dewey Decimal Number: 005.26
EAN: 9780596009830
ASIN: 0596009836

Publication Date: October 1, 2006
Release Date: October 1, 2006
Availability: Usually ships in 1-2 business days

Similar Items:

  • Designing Embedded Hardware
  • Embedded Linux Primer: A Practical Real-World Approach (Prentice Hall Open Source Software Development Series)
  • Building Embedded Linux Systems
  • An Embedded Software Primer
  • Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers (Embedded Technology)

Editorial Reviews:

Product Description
If you have programming experience and a familiarity with i-the dominant language in embedded systems--"Programming Embedded Systems," Second Edition is exactly what you need to get started with embedded software. This software is ubiquitous, hidden away inside our watches, DVD players, mobile phones, anti-lock brakes, and even a few toasters. The military uses embedded software to guide missiles, detect enemy aircraft, and pilot UAVs. Communication satellites, deep-space probes, and many medical instruments would have been nearly impossible to create without embedded software.

The first edition of "Programming Embedded Systems" taught the subject to tens of thousands of people around the world and is now considered the bible of embedded programming. This second edition has been updated to cover all the latest hardware designs and development methodologies.

The techniques and code examples presented here are directly applicable to real-world embedded software projects of all sorts. Examples use the free GNU software programming tools, the eCos and Linux operating systems, and a low-cost hardware platform specially developed for this book. If you obtain these tools along with "Programming Embedded Systems," Second Edition, you'll have a full environment for exploring embedded systems in depth. But even if you work with different hardware and software, the principles covered in this book apply.

Whether you are new to embedded systems or have done embedded work before, you'll benefit from the topics in this book, which include: How building and loading programs differ from desktop or server computers Basic debugging techniques--a critical skill when working with minimallyendowed embedded systems Handling different types of memory Interrupts, and the monitoring and control of on-chip and external peripherals Determining whether you have real-time requirements, and whether your operating system and application can meet those requirements Task synchronization with real-time operating systems and embedded Linux Optimizing embedded software for size, speed, and power consumption Working examples for eCos and embedded Linux

So whether you're writing your first embedded program, designing the latest generation of hand-held whatchamacalits, or managing the people who do, this book is for you. "Programming Embedded Systems" will help you develop the knowledge and skills you need to achieve proficiency with embedded software.

Praise for the first edition: ""This lively and readable book is the perfect introduction for those venturing into embedded systems software development for the first time. It provides in one place all the important topics necessary to orient programmers to the embedded development process."
--Lindsey Vereen, Editor-in-Chief, Embedded Systems Programming



Customer Reviews:

3 out of 5 stars Good book, bad development kit   September 22, 2008
  5 out of 6 found this review helpful

Presents a good introduction to embedded system programming; no complaints there. However, their choice of development kit is poor. The Arcom (now EuroTech) kit is $600, rather than the $300 stated in the book. And it took almost 3 weeks for them to respond to a quote request. Fortunately, there are kits available from other vendors (BiPom, Olimex, etc.) which can be substituted for less than $300. However, the impracticality of using the Arcom kit robs the book of its purpose of being a hands-on, guided tutorial.


4 out of 5 stars Learning Tool for a Foundation Course   May 6, 2008
  2 out of 2 found this review helpful

If you are just getting into embedded systems and you want to understand the myriad of interacting concepts, this book is a good start. You will get a solid overview of the basic elements, such as hardware, software tools and techniques, memory and peripherals, processing controls and design strategies.

As with any embedded systems book, there has to be some alignment with specific hardware and application examples. The author uses these examples to tie together embedded elements, but the integration is a bit choppy.

The book is organized as a general introduction to embedded systems. About half the book describes the system elements and about half provides full system examples. A single book cannot cover all topologies and development platforms, so I wouldn't recommend it for someone who is trying to solve a specific problem on his/her embedded application. For cases like that, your vendors and FAEs are probably your best bet.

So if you are trying to learn embedded systems development, this is a great resource. If you intend to use it to guide a current project or debug an embedded problem, it may become more of a distraction.



4 out of 5 stars Great Introduction to Embedded Systems Programming.   December 16, 2006
  11 out of 13 found this review helpful

This book gives an excellent overview of programming embedded systems. It provides numerous examples of real-world hands-on embedded programming. I'd recommend that you have experience in C. Experience with operating systems concepts (such as interrupt service routines) would also be helpful.

Unlike usual programming books, you won't be able to pick up the book, download something, and start working. You'll need to have an embedded system that you can use. The authors use a system from Arcom that will run you about $300. I've not used it and was very wary about it when I first started reading, but as I read through the various examples I gained a great appreciation for the system. It looks like a great way to gain hands-on experience with embedded programming.

Before getting this book I read through the Lego Mindstorm NXT documentation and felt very lost. I didn't understand the symbols on the schematics and they used strange acronyms (like I2C and PWM). I also have an Iguanaworks USB infrared transceiver. I bought it to use in a MythTV system I am building. This book has enabled me to understand the schematics of both the Mindstorm and the transceiver as well as the documentation of both systems. I now feel ready to do my own embedded systems programming.

That said, I did not like everything in this book. They gloss over areas that I felt would have helped me (such as how to use a JTAG adapter and how to create an interrupt service routine under Linux). There are areas where the writing does not flow well and is redundant. The book switched from using an embedded x86 processor in the first edition to using an ARM processor in the second and there are still references to the old processor.

Even with its faults I am glad I got this book. It filled in many of the gaps that I have as a software engineer who is wanting to learn about embedded systems programming. I feel a whole new world has just been opened up to me and I can't wait to jump in.



5 out of 5 stars A classroom and lending collection standard.   December 11, 2006
  2 out of 5 found this review helpful

Programming Embedded Systems with C and GNU Development Tools appears in its second updated edition to include even more real-world and Linux examples, and is a recommended pick for programmers with a familiarity with C. It's been used as a college textbook and covers everything from basic debugging skills to determining the applications and needs of real-time projects. In updating details and clarifying routines, the 2nd edition of Programming Embedded Systems should be considered both a classroom and lending collection standard.

Diane C. Donovan
California Bookwatch



5 out of 5 stars Great guide to developing embedded systems   November 8, 2006
  19 out of 19 found this review helpful

This book is the much needed update to the book on embedded systems also published by O'Reilly. This book assumes that the reader already has some programming experience and is at least familiar with the syntax of the C language. It also helps if you have some familiarity with basic data structures, such as linked lists. The book does not assume that you have a great deal of knowledge about computer hardware, but it does expect that you are willing to learn a little bit about hardware along the way. This is, after all, a part of the job of an embedded programmer.

The book contains 14 chapters and 5 appendixes. The chapters can be divided into two parts. The first part consists of Chapters 1 through 5 and is intended mainly for newcomers to embedded systems. These chapters should be read in their entirety and in the order that they appear. This will bring you up to speed quickly and introduce you to the basics of embedded software development. After completing Chapter 5, you will be ready to develop small pieces of embedded software on your own.

The second part of the book consists of Chapters 6 through 14 and discusses advanced topics that are of interest to inexperienced and experienced embedded programmers alike. These chapters are mostly self-contained and can be read in any order. In addition, Chapters 6 through 12 contain example programs that might be useful to you on a future embedded software project.

Throughout the book, the authors strike a balance between specific examples and general information. Minor details have been eliminated making the book more readable, at least in my opinion. You will gain the most from the book if you view the examples primarily as tools for understanding important concepts. Try not to get bogged down in the details of any one circuit board or chip. If you understand the general C programming concepts, you should be able to apply them to any embedded system you encounter. To focus the book's example code on specific concepts, these examples have been left intentionally incomplete. For example, certain include files and redundant variable declarations are omitted. For complete details about the code, you can refer to the full example source code on the book's web site. I discuss this book further in the context of its table of contents:

Chapter 1, Introduction - Explains the field of embedded programming and lays out the parameters of the book, including the reference hardware used for examples.

Chapter 2, Getting to Know the Hardware - Shows how to explore the documentation for your hardware and represent the components you need to interact with in C.

Chapter 3, Your First Embedded Program - Creates a simple blinking light application that illustrates basic principles of embedded programming.

Chapter 4, Compiling, Linking, and Locating - Goes over the ways that embedded systems differ from conventional computer systems during program building steps, covering such issues as cross-compilers.

Chapter 5, Downloading and Debugging - Introduces the tools you'll need in order to iron out problems in both hardware and software.

Chapter 6, Memory - Describes the different types of memory that developers choose for embedded systems and the issues involved in using each type.

Chapter 7, Peripherals - Introduces the notion of a device driver, along with other coding techniques for working with devices.

Chapter 8, Interrupts - Covers this central area of working with peripherals.

Chapter 9, Putting It All Together - Combines the concepts and code from the previous chapter with convenience functions and a main program, to create a loadable, testable application.

Chapter 10, Operating Systems - Introduces common operating system concepts, including tasks and synchronization mechanisms, along with the reasons for adding a real-time operating system.

Chapter 11, eCos Examples - Shows how to use some features of the eCos real-time operating system.

Chapter 12, Embedded Linux Examples - Accomplishes the same task as the previous chapter, but for the embedded Linux operating system.

Chapter 13, Extending Functionality - Describes options for adding buses, networking, and other communication features to a system.

Chapter 14, Optimization Techniques - Describes ways to decrease code size, reduce memory use, and conserve power.

Appendix A, The Arcom VIPER-Lite Development Kit - Describes the board used for the examples in this book and how to order one for yourself.

Appendix B, Setting Up Your Software Development Environment - Gives instructions for loading the software described in this book on your host Windows or Linux computer.

Appendix C, Building the GNU Software Tools - Shows you how to compile the GNU development tools

Appendix D, Setting Up the eCos Development Environment - Shows you how to build an eCos library appropriate for your embedded system so you can compile programs to run on your system.

Appendix E, Setting Up the Embedded Linux Development Environment - Describes how to install the embedded Linux tools for your Arcom system and build and run a program on it.


Powered by: Dknc, inc. and Amazon.com


For your safety and security, orders are processed through amazon.com