Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Software Environment This chapter presents some software components relevant to real-time applications. The first part of the chapter is concerned with operating systems. Real-time requirements for operating system behaviour forbid the use of standard Unix, although the Posix/Unix interface is very useful for software engineering. Three approaches are presented. In the first one, the real-time executive has been customized to provide a Posix interface. This is illustrated by VxWorks, the executive of the Mars Pathfinder rover, which is the second case study which will be presented in Chapter 9 | Scheduling in Real-Time Systems. Francis Cottet Joëlle Delacroix Claude Kaiser and Zoubir Mammeri Copyright 2002 John Wiley Sons Ltd. ISBN 0-470-84766-2 8 Software Environment This chapter presents some software components relevant to real-time applications. The first part of the chapter is concerned with operating systems. Real-time requirements for operating system behaviour forbid the use of standard Unix although the Posix Unix interface is very useful for software engineering. Three approaches are presented. In the first one the real-time executive has been customized to provide a Posix interface. This is illustrated by VxWorks the executive of the Mars Pathfinder rover which is the second case study which will be presented in Chapter 9. The second approach is that of RT-Linux where a small companion kernel is attached to a Unix-like system. In the third approach a system based on a Unix architecture has been engineered from scratch in order to fulfil real-time requirements. This is illustrated by LynxOs the executive of the rolling mill acquisition system which will be presented in Chapter 9 as the first case study. The second part of the chapter deals with programming languages designed with real-time potential. Some of them provide asynchronous programming. The Ada programming language is largely developed with the example of a mine pump control implementation. Real-time Java is outlined. Synchronous languages that make the assumption of instantaneously reacting to external events are also presented. The last part of the chapter is an overview of the real-time capabilities which are being added to distributed platforms that provide standardized middleware for nonreal-time distributed applications. The challenge is to be able to use distributed objects and components and common-off-the-shelf hardware and software components that are developed extensively for non-real-time distributed applications. The chapter ends by summarizing the real-time capabilities of