One of the books that can help aspiring and practicing engineers to learn more about embedded real time systems is Embedded / Real-Time Systems: Concepts, Design and Programming Black Book by Dr. K.V.K.K. Prasad. This book comprehensively covers the three main areas of the subject: concepts, design, and programming. It also provides information on the applications of the embedded/real-time systems in various domains, such as navigation systems, protocol converters, embedded databases, and mobile Java applications.
Book Overview
The book is divided into 20 chapters, each focusing on a different aspect of embedded real time systems. The chapters are organized as follows:
Chapter 1: Introduction to Embedded Systems. This chapter gives an overview of the characteristics, classification, and applications of embedded systems. It also discusses the challenges and trends in embedded system development.
Chapter 2: Architecture of Embedded Systems. This chapter describes the hardware architecture and the various hardware platforms used for embedded systems, such as microcontrollers, microprocessors, digital signal processors, field-programmable gate arrays, and system-on-chip.
Chapter 3: Programming for Embedded Systems. This chapter explains the programming languages, tools, and techniques used for developing embedded software, such as assembly language, C/C++, Java, compilers, debuggers, simulators, and emulators.
Chapter 4: The Process of Embedded System Development. This chapter presents the steps involved in embedded system development, such as requirement analysis, design specification, implementation, testing, integration, and maintenance. It also introduces some of the design methodologies and models used for embedded system development.
Chapter 5: Hardware Platforms. This chapter provides a detailed description of some of the popular hardware platforms used for embedded systems, such as 89C51 microcontroller, AVR microcontroller, Intel StrongARM processor, and Motorola PowerPC processor.
Chapter 6: Communication Interfaces. This chapter discusses the various communication interfaces used for data transfer between embedded devices and external devices or networks, such as serial ports, parallel ports, universal serial bus (USB), wireless communication (Bluetooth), Ethernet, and Internet protocols (TCP/IP).
Chapter 7: Embedded/Real-Time Operating System Concepts. This chapter introduces the concepts and features of embedded/real-time operating systems (RTOS), such as multitasking, scheduling algorithms, inter-task communication and synchronization mechanisms, memory management techniques, device drivers, file systems, and exception handling.
Chapter 8: Overview of Embedded/Real-Time Operating Systems. This chapter gives an overview of some of the widely used embedded/real-time operating systems (RTOS), such as Linux, RTLinux,
VxWorks,
QNX,
Windows CE,
and Symbian OS.
Chapter 9: Target Image Creation. This chapter explains how to create a target image or executable file that can be loaded into the embedded device for execution. It covers topics such as cross-compilation, linking,
loading,
booting,
and debugging.
Chapter 10: Representative Embedded Systems. This chapter presents some examples of representative embedded systems that illustrate the concepts and techniques discussed in the previous chapters. The examples include digital camera, MP3 player,
DVD player,
and cellular phone.
Chapter 11: Programming in Linux. This chapter describes how to program in Linux for embedded systems using C/C++ language and GNU tools. It covers topics such as Linux kernel, processes,
threads,
signals,
pipes,
sockets,
and shared memory.
Chapter 12: Programming in RTLinux. This chapter describes how to program in RTLinux for real-time applications using C language and RTLinux API. It covers topics such as RTLinux architecture, real-time tasks,
interrupt handlers,
semaphores,
mutexes,
and timers.
Chapter 13: Development of Navigation System. This chapter demonstrates how to develop a navigation system for an automobile using embedded hardware and software components. It covers topics such as GPS receiver, map database,
route planning algorithm,
and graphical user interface.
Chapter 14: Development of Protocol Converter. This chapter demonstrates how to develop a protocol converter that can convert data from one communication protocol to another using embedded hardware and software components. It covers topics such as RS-232 protocol, Modbus protocol,
and TCP/IP protocol.
Chapter 15: Embedded Database Application. This chapter demonstrates how to develop an embedded database application that can store and retrieve data from a flash memory device using embedded hardware and software components. It covers topics such as flash memory device, SQLite database engine,
and SQL language.
Chapter 16: Mobile Java Applications. This chapter demonstrates how to develop mobile Java applications that can run on embedded devices such as cellular phones and personal digital assistants (PDAs) using Java language and Java 2 Micro Edition (J2ME) platform. It covers topics such as J2ME architecture, configuration,
profile,
MIDlet,
and user interface.
Chapter 17: Embedded Software Development on 89C51 Microcontroller Platform. This chapter demonstrates how to develop embedded software for the 89C51 microcontroller platform using assembly language and C language. It covers topics such as 89C51 microcontroller architecture, instruction set,
programming model,
peripheral devices,
and interfacing circuits.
Chapter 18: Embedded Software Development on AVR Microcontroller Platform. This chapter demonstrates how to develop embedded software for the AVR microcontroller platform using assembly language and C language. It covers topics such as AVR microcontroller architecture, instruction set,
programming model,
peripheral devices,
and interfacing circuits.
Chapter 19: Embedded Systems Applications Using Intel StrongARM Platform. This chapter demonstrates how to develop embedded systems applications for the Intel StrongARM platform using C/C++ language and Linux operating system. It covers topics such as Intel StrongARM processor architecture, instruction set,
programming model,
peripheral devices,
and interfacing circuits.
Chapter 20: Future Trends. This chapter discusses the future trends and challenges in embedded systems, such as multicore processors, reconfigurable hardware, wireless sensor networks, ubiquitous computing, and nanotechnology.
Book Benefits
The book offers several benefits to the readers, such as:
It provides a comprehensive and up-to-date coverage of the concepts, design, and programming of embedded real time systems.
It explains the topics in a clear and concise manner with the help of examples, diagrams, tables, and code snippets.
It includes numerous exercises and review questions at the end of each chapter to test the understanding of the readers.
It provides a CD-ROM that contains the source code of the examples, exercises, and projects discussed in the book, along with the software tools required for embedded system development.
Book Summary
In summary, Embedded / Real-Time Systems: Concepts, Design and Programming Black Book by Dr. K.V.K.K. Prasad is a useful book for anyone who wants to learn more about embedded real time systems. It covers the theoretical and practical aspects of the subject in a comprehensive and systematic way. It is suitable for students, teachers, researchers, and professionals who are interested in embedded system development.
: [Embedded / Real-Time Systems: Concepts, Design and Programming Black Book]
524038ac18