Author: Jim Cooling
Four 5-star reviews at https://www.amazon.com/dp/B00GO6VSGEThis book deals with the fundamentals of operating systems for use in real-time embedded systems. It is aimed at those who wish to develop RTOS-based designs, using either commercial or free products. It does not set out to give you the knowledge to design an RTOS; leave that to the specialists. The target readership includes:Students.Engineers, scientists and mathematicians moving into software systems.Professional and experienced software engineers entering the embedded field.Programmers having little or no formal education in the underlying principles of software-based real-time systems.The material covers the key 'nuts and bolts' of RTOS structures and usage (as you would expect, of course). In many cases it shows how these are handled by practical real-time operating systems. After studying this even the absolute beginner will see that it isn't particularly difficult to implement RTOS-based designs and should be confident to take on such work. Now, that's the easy part; the really challenging aspect is how to best structure the application software in the first place. If your design is poorly-structured then, no matter which RTOS you use, you are very likely to run into problems of reliability, performance, safety and maintainability. Hence the book places great emphasis on ways to structure the application software so that it can be effectively implemented using an RTOS. The author: Jim Cooling has had many years experience in the area of real-time embedded systems, including electronic, software and system design, project management, consultancy, education and course development. He has published extensively on the subject, his books covering many aspects of embedded-systems work such as real-time interfacing, programming, software design and software engineering. Currently he is a partner in Lindentree Associates (which he formed in 1998), providing consultancy and training for real-time embedded systems.See: www.lindentreeuk.co.uk
Author: K.C. Wang
This book covers the basic concepts and principles of operating systems, showing how to apply them to the design and implementation of complete operating systems for embedded and real-time systems. It includes all the foundational and background information on ARM architecture, ARM instructions and programming, toolchain for developing programs, virtual machines for software implementation and testing, program execution image, function call conventions, run-time stack usage and link C programs with assembly code. It describes the design and implementation of a complete OS for embedded systems in incremental steps, explaining the design principles and implementation techniques. For Symmetric Multiprocessing (SMP) embedded systems, the author examines the ARM MPcore processors, which include the SCU and GIC for interrupts routing and interprocessor communication and synchronization by Software Generated Interrupts (SGIs).“/div>divThroughout the book, complete working sample systems demonstrate the design principles and implementation techniques. The content is suitable for advanced-level and graduate students working in software engineering, programming, and systems theory.
Author: Qing Li, Caroline Yao
Publisher: CRC Press
'... a very good balance between the theory and practice of real-time embedded system designs.' —Jun-ichiro itojun Hagino, Ph.D., Research Laboratory, Internet Initiative Japan Inc., IETF IPv6 Operations Working Group (v6ops) co-chair 'A cl
Author: Ivan Cibrario Bertolotti, Gabriele Manduchi
Publisher: CRC Press
From the Foreword: "...the presentation of real-time scheduling is probably the best in terms of clarity I have ever read in the professional literature. Easy to understand, which is important for busy professionals keen to acquire (or refresh) new knowledge without being bogged down in a convoluted narrative and an excessive detail overload. The authors managed to largely avoid theoretical-only presentation of the subject, which frequently affects books on operating systems. ... an indispensable [resource] to gain a thorough understanding of the real-time systems from the operating systems perspective, and to stay up to date with the recent trends and actual developments of the open-source real-time operating systems." —Richard Zurawski, ISA Group, San Francisco, California, USA Real-time embedded systems are integral to the global technological and social space, but references still rarely offer professionals the sufficient mix of theory and practical examples required to meet intensive economic, safety, and other demands on system development. Similarly, instructors have lacked a resource to help students fully understand the field. The information was out there, though often at the abstract level, fragmented and scattered throughout literature from different engineering disciplines and computing sciences. Accounting for readers’ varying practical needs and experience levels, Real Time Embedded Systems: Open-Source Operating Systems Perspective offers a holistic overview from the operating-systems perspective. It provides a long-awaited reference on real-time operating systems and their almost boundless application potential in the embedded system domain. Balancing the already abundant coverage of operating systems with the largely ignored real-time aspects, or "physicality," the authors analyze several realistic case studies to introduce vital theoretical material. They also discuss popular open-source operating systems—Linux and FreRTOS, in particular—to help embedded-system designers identify the benefits and weaknesses in deciding whether or not to adopt more traditional, less powerful, techniques for a project.
Author: Jim Cooling
IMPORTANT: This is a rebadged version of Real-time Operating Systems, Book 1, The Theory which (so far) has received eleven 5-star, one 4-star and one 3-star reviews. This book deals with the fundamentals of operating systems for use in real-time embedded systems. It is aimed at those who wish to develop RTOS-based designs, using either commercial or free products. It does not set out to give you a knowledge to design an RTOS; leave that to the specialists. The target readership includes: - Students. - Engineers, scientists and mathematicians moving into software systems. - Professional and experienced software engineers entering the embedded field. - Programmers having little or no formal education in the underlying principles of software-based real-time systems. The material covers the key
Author: Sam Siewert, John Pratt
Publisher: Stylus Publishing, LLC
This book is intended to provide a senior undergraduate or graduate student in electrical engineering or computer science with a balance of fundamental theory, review of industry practice, and hands-on experience to prepare for a career in the real-time embedded system industries. It is also intended to provide the practicing engineer with the necessary background to apply real-time theory to the design of embedded components and systems. Typical industries include aerospace, medical diagnostic and therapeutic systems, telecommunications, automotive, robotics, industrial process control, media systems, computer gaming, and electronic entertainment, as well as multimedia applications for general-purpose computing. This updated edition adds three new chapters focused on key technology advancements in embedded systems and with wider coverage of real-time architectures. The overall focus remains the RTOS (Real-Time Operating System), but use of Linux for soft real-time, hybrid FPGA (Field Programmable Gate Array) architectures and advancements in multi-core system-on-chip (SoC), as well as software strategies for asymmetric and symmetric multiprocessing (AMP and SMP) relevant to real-time embedded systems, have been added. Companion files are provided with numerous project videos, resources, applications, and figures from the book. Instructors’ resources are available upon adoption. FEATURES: • Provides a comprehensive, up to date, and accessible presentation of embedded systems without sacrificing theoretical foundations • Features the RTOS (Real-Time Operating System), but use of Linux for soft real-time, hybrid FPGA architectures and advancements in multi-core system-on-chip is included • Discusses an overview of RTOS advancements, including AMP and SMP configurations, with a discussion of future directions for RTOS use in multi-core architectures, such as SoC • Detailed applications coverage including robotics, computer vision, and continuous media • Includes a companion disc (4GB) with numerous videos, resources, projects, examples, and figures from the book • Provides several instructors’ resources, including lecture notes, Microsoft PP slides, etc.
Author: Jiacun Wang
Publisher: John Wiley & Sons
Offering comprehensive coverage of the convergence of real-time embedded systems scheduling, resource access control, software design and development, and high-level system modeling, analysis and verification Following an introductory overview, Dr. Wang delves into the specifics of hardware components, including processors, memory, I/O devices and architectures, communication structures, peripherals, and characteristics of real-time operating systems. Later chapters are dedicated to real-time task scheduling algorithms and resource access control policies, as well as priority-inversion control and deadlock avoidance. Concurrent system programming and POSIX programming for real-time systems are covered, as are finite state machines and Time Petri nets. Of special interest to software engineers will be the chapter devoted to model checking, in which the author discusses temporal logic and the NuSMV model checking tool, as well as a chapter treating real-time software design with UML. The final portion of the book explores practical issues of software reliability, aging, rejuvenation, security, safety, and power management. In addition, the book: Explains real-time embedded software modeling and design with finite state machines, Petri nets, and UML, and real-time constraints verification with the model checking tool, NuSMV Features real-world examples in finite state machines, model checking, real-time system design with UML, and more Covers embedded computer programing, designing for reliability, and designing for safety Explains how to make engineering trade-offs of power use and performance Investigates practical issues concerning software reliability, aging, rejuvenation, security, and power management Real-Time Embedded Systems is a valuable resource for those responsible for real-time and embedded software design, development, and management. It is also an excellent textbook for graduate courses in computer engineering, computer science, information technology, and software engineering on embedded and real-time software systems, and for undergraduate computer and software engineering courses.
Author: Chowdary Venkateswara Penumuchu
Publisher: Trafford Publishing
The first motivation for writing this book is to teach my colleagues about RTOS (Real-Time Operating System) concepts and the proprietary RTOS developed for our project by me. I realized that the same material with some extension can be useful to most embedded engineers who are beginners in learning about RTOS. I came across many embedded engineers who are not comfortable to use real-time operating system. A significant fraction of these people have taken operating systems course during their undergraduate or graduate studies! The unease obviously even more aggravated for those embedded engineers who do not take operating systems course during their college level studies. I think this is the main reason that some companies still use tricky, messy workarounds to solve their scheduling problems in their simple and moderately complex projects. The operating systems course the engineers studied during their undergraduation is too broad which only cover theoretical aspects of all kinds of systems, and mostly devoid of practical training that students can not gain the ability to develop one! RTOS market share surveys show a significant fraction of companies use their proprietary operating systems. The proprietary RTOS has the advantages of leanness, higher efficiency and much more configurability as it is entirely open. Even though the market share for proprietary RTOS is slowly declining, the fraction of the companies that use proprietary RTOSes will be significant for many more years. This book can be a great resource for the engineers who are developing and maintaining a proprietary RTOS for his/her company. This book address the needs of the people who want to learn about RTOS and also those who want to develop one. This book gives in-depth understanding of RTOS, make the reader comfortable in understanding a code written using RTOS, make the reader comfortable using RTOS to develop a new piece of code. This book explains all basic RTOS concepts starting from scratch in detail. So a beginner or a person only with little experience with RTOS can significantly benefit from this book. This book discusses most of the RTOS concepts and implements them in a piece of code and develops one simple RTOS kernel, named as SROS (Simple Real-time Operating System). All the features for SROS kernel are developed one at a time in an evolutionary manner. So this book can also benefit an experienced person who wants to know more about RTOS kernel. As this book develop feature by feature in a piece meal fashion, this book can greatly benefit the people who want to develop a proprietary RTOS for their projects. As this book covers the kernel of RTOS and point out some short term projects a reader can do, this book can also be used by students who want to know about the kernel of RTOS and want to do some short term projects on RTOS. This book introduces the RTOS concepts one by one and shows their implementations in C code, or pseudo C code together with ARM assembly code when C implementation is not possible (i.e. in case of Hardware Abstraction Layer functions). Every piece of code shown as example in this book has either C code or pseudo C code so readers with out the knowledge of ARM architecture and instruction set can also understand the functionality of the code easily. (The ARM code given in this book and CDROM is developed for ARM architecture V5 and tested on ARM9 platform). Allover the book when we mention ARM processor, it means we are referring to an ARM core that implement ARM V5 architecture. The RTOS code developed in the book is named as SROS (Simple Real-time Operating System). The SROS kernel implementation is on similar lines to many commercially available RTOSes. The SROS kernel features are added chapter after chapter. At any level of development, SROS code available in the accompanied CDROM can be readily used in an ARM based system and can be ported easily to other processor platforms. SROS features are implemented incrementally so that user has the choice of using it at any level of complexity. SROS with minimal features provide minimum code, execution time overheads and vice versa. The code size and execution complexity of SROS is less in the initial version compared to the later version even after unused functions are removed by linker. The accompanied CD-ROM provides 2 versions of SROS which were incrementally developed and finished by the end of 2nd and 3rd chapters. The author assumes that the reader is familiar with C programming, and simple data structure - linked lists. No knowledge about assembly programming of ARM processor is assumed, even though the accompanying CDROM provide the SROS implementation on ARM platform, which is auxiliary. The readers of this book after reading it can have the comfort of working/evaluating any RTOS, can have the comfort of knowing the internals of RTOS, can use highly simple and optimal SROS without any royalties with the flexibility of customizations, or can develop a simple proprietary real-time operating system in a few days.
Author: Elecia White
Publisher: "O'Reilly Media, Inc."
Interested in developing embedded systems? Since they don’t tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate a host of good development practices, based on classic software design patterns and new patterns unique to embedded programming. Learn how to build system architecture for processors, not operating systems, and discover specific techniques for dealing with hardware difficulties and manufacturing requirements. Written by an expert who’s created embedded systems ranging from urban surveillance and DNA scanners to children’s toys, this book is ideal for intermediate and experienced programmers, no matter what platform you use. Optimize your system to reduce cost and increase performance Develop an architecture that makes your software robust in resource-constrained environments Explore sensors, motors, and other I/O devices Do more with less: reduce RAM consumption, code space, processor cycles, and power consumption Learn how to update embedded code directly in the processor Discover how to implement complex mathematics on small processors Understand what interviewers look for when you apply for an embedded systems job "Making Embedded Systems is the book for a C programmer who wants to enter the fun (and lucrative) world of embedded systems. It’s very well written—entertaining, even—and filled with clear illustrations." —Jack Ganssle, author and embedded system expert.
Author: J. E. Cooling
Publisher: Pearson Education
The comprehensive coverage and real-world perspective makes the book accessible and appealing to both beginners and experienced designers. Covers both the fundamentals of software design and modern design methodologies Provides comparisons of different development methods, tools and languages Blends theory and practical experience together Emphasises the use of diagrams and is highly illustrated
Author: Janez Puhan
Publisher: Fe Publishing
The textbook is used at the Faculty of Electrical Engineering of the University of Ljubljana. It introduces the students of Electronics into the operating systems and real-time concepts having the embedded systems perspective in mind. In the opening chapters, the textbook presents the basic properties of operating systems and computer networks with the Internet Protocol. Linux is used as an example platform. It continues with embedded system peculiarities using the PYHTEC phyCORE-i.MX27 development kit as a platform. Programing of peripheral devices and graphical applications is described. The characteristics of real-time systems follow. The real-time application structure is given. The principles of the inter-process communication, addressing resource sharing problem with synchronization and deadlock situations are presented.
Author: Insup Lee, Joseph Y-T. Leung, Sang H. Son
Publisher: CRC Press
Real-time and embedded systems are essential to our lives, from controlling car engines and regulating traffic lights to monitoring plane takeoffs and landings to providing up-to-the-minute stock quotes. Bringing together researchers from both academia and industry, the Handbook of Real-Time and Embedded Systems provides comprehensive coverage of the most advanced and timely topics in the field. The book focuses on several major areas of real-time and embedded systems. It examines real-time scheduling and resource management issues and explores the programming languages, paradigms, operating systems, and middleware for these systems. The handbook also presents challenges encountered in wireless sensor networks and offers ways to solve these problems. It addresses key matters associated with real-time data services and reviews the formalisms, methods, and tools used in real-time and embedded systems. In addition, the book considers how these systems are applied in various fields, including adaptive cruise control in the automobile industry. With its essential material and integration of theory and practice, the Handbook of Real-Time and Embedded Systems facilitates advancements in this area so that the services we rely on can continue to operate successfully.
Author: Hassan Gomaa
Publisher: Cambridge University Press
This tutorial reference takes the reader from use cases to complete architectures for real-time embedded systems using SysML, UML, and MARTE and shows how to apply the COMET/RTE design method to real-world problems. The author covers key topics such as architectural patterns for distributed and hierarchical real-time control and other real-time software architectures, performance analysis of real-time designs using real-time scheduling, and timing analysis on single and multiple processor systems. Complete case studies illustrating design issues include a light rail control system, a microwave oven control system, and an automated highway toll system. Organized as an introduction followed by several self-contained chapters, the book is perfect for experienced software engineers wanting a quick reference at each stage of the analysis, design, and development of large-scale real-time embedded systems, as well as for advanced undergraduate or graduate courses in software engineering, computer engineering, and software design.
Author: Xiaocong Fan
This book integrates new ideas and topics from real time systems, embedded systems, and software engineering to give a complete picture of the whole process of developing software for real-time embedded applications. You will not only gain a thorough understanding of concepts related to microprocessors, interrupts, and system boot process, appreciating the importance of real-time modeling and scheduling, but you will also learn software engineering practices such as model documentation, model analysis, design patterns, and standard conformance. This book is split into four parts to help you learn the key concept of embedded systems; Part one introduces the development process, and includes two chapters on microprocessors and interrupts---fundamental topics for software engineers; Part two is dedicated to modeling techniques for real-time systems; Part three looks at the design of software architectures and Part four covers software implementations, with a focus on POSIX-compliant operating systems. With this book you will learn: The pros and cons of different architectures for embedded systems POSIX real-time extensions, and how to develop POSIX-compliant real time applications How to use real-time UML to document system designs with timing constraints The challenges and concepts related to cross-development Multitasking design and inter-task communication techniques (shared memory objects, message queues, pipes, signals) How to use kernel objects (e.g. Semaphores, Mutex, Condition variables) to address resource sharing issues in RTOS applications The philosophy underpinning the notion of "resource manager" and how to implement a virtual file system using a resource manager The key principles of real-time scheduling and several key algorithms Coverage of the latest UML standard (UML 2.4) Over 20 design patterns which represent the best practices for reuse in a wide range of real-time embedded systems Example codes which have been tested in QNX---a real-time operating system widely adopted in industry