Introducing the Irmx® Operating Systems
Total Page:16
File Type:pdf, Size:1020Kb
Introducing the iRMX® Operating Systems RadiSys Corporation 5445 NE Dawson Creek Drive Hillsboro, OR 97124 (503) 615-1100 FAX: (503) 615-1150 www.radisys.com 07-00634-01 December 1999 EPC, iRMX, INtime, Inside Advantage, and RadiSys are registered trademarks of RadiSys Corporation. Spirit, DAI, DAQ, ASM, Brahma, and SAIB are trademarks of RadiSys Corporation. Microsoft and MS-DOS are registered trademarks of Microsoft. IBM and PC/AT are registered trademarks of International Business Machines Corporation. Microsoft Windows and MS-DOS are registered trademarks of Microsoft Corporation. Intel is a registered trademark of Intel Corporation. All other trademarks, registered trademarks, service marks, and trade names are property of their respective owners. December 1999 Copyright 1999 by RadiSys Corporation All rights reserved. ii Quick Contents Chapter 1. Basic Concepts Chapter 2. Nucleus and Kernel Features Chapter 3. BIOS and EIOS Features Chapter 4. Human Interface Features Chapter 5. Application Loader Features Chapter 6. UDI Features Chapter 7. Networking Features Chapter 8. System Development Chapter 9. Application Debugging Chapter 10. System Configuration Appendix A. Related Publications Glossary Index Introducing the iRMX Operating Systems iii Notational Conventions Most of the references to system calls in the text and graphics use C syntax instead of PL/M (for example, the system call send_message instead of send$message). If you are working in C, you must use the C header files, rmx_c.h, udi_c.h, and rmx_err.h. If you are working in PL/M, you must use dollar signs ($) and use the rmxplm.ext and error.lit header files. This manual uses the following conventions: ✏ Note Notes indicate important information. LL! CAUTION Cautions indicate situations which may damage hardware or data. iv Contents 1 Basic Concepts iRMX Operating System Features................................................................... 2 Real-time Processing................................................................................ 2 Multitasking ...................................................................................... 3 Preemptive, Priority-based Scheduling ............................................. 4 Interrupt Processing........................................................................... 5 Predictable Response Time ............................................................... 6 Multiprogramming ............................................................................ 7 Objects and System Calls ......................................................................... 9 Intertask Coordination and Communication...................................... 10 Memory Pools and Memory Sharing................................................. 13 Virtual Memory Allocation With the Paging Subsystem .................. 14 System Calls...................................................................................... 14 Operating System Layers .................................................................. 15 Example Code and Demonstration Programs........................................... 16 Network Support ...................................................................................... 17 32-Bit Architecture, Addressing, and Protection...................................... 17 Bus Architecture Support ......................................................................... 19 iRMX for PCs Special Features....................................................................... 20 2 Nucleus and Kernel Features Nucleus Objects............................................................................................... 21 Jobs........................................................................................................... 22 Object Directories ............................................................................. 24 Memory Pools ................................................................................... 25 Tasks ........................................................................................................ 26 Memory Segments.................................................................................... 26 Buffer Pools and Heaps............................................................................ 27 Exchange Objects..................................................................................... 28 Mailboxes.......................................................................................... 28 Semaphores ....................................................................................... 28 Regions.............................................................................................. 30 Introducing the iRMX Operating System Contents v Ports .................................................................................................. 30 Extension Objects and Composite Objects............................................... 31 Object Directories, Tokens and Descriptors............................................. 32 Nucleus Task Scheduling ................................................................................ 33 Priority ..................................................................................................... 33 Execution State......................................................................................... 34 Round-robin Scheduling........................................................................... 35 Nucleus Interrupt and Exception Handling...................................................... 35 Interrupt Handlers .................................................................................... 36 Interrupt Handler Alone .................................................................... 36 Interrupt Handler/Task Combination................................................. 36 Exceptional Conditions ............................................................................ 37 Environmental and Programmer Errors............................................. 38 Hardware Exceptions ........................................................................ 38 Nucleus Messaging Service............................................................................. 39 Services............................................................................................. 39 Kernel Features ............................................................................................... 40 Kernel Objects.......................................................................................... 40 Kernel Task Management ........................................................................ 41 Kernel Time Management........................................................................ 41 Kernel Interrupt Handling ........................................................................ 41 When To Use the Kernel.......................................................................... 42 3 BIOS and EIOS Features I/O System Objects, Logical Names and System Calls ................................... 43 User Objects, Users and User Access Control.......................................... 43 Example: Multiuser System and the User Object............................. 44 Connections and File Access Modes ........................................................ 45 File Connections................................................................................ 45 Device Connections........................................................................... 46 I/O Jobs .................................................................................................... 46 Logical Names for Files and Devices (EIOS Only) ................................. 47 BIOS and EIOS System Call Differences ................................................ 47 System Call Names ........................................................................... 47 Synchronous and Asynchronous System Calls (BIOS Only) ............ 48 Files and Directories........................................................................................ 48 Hierarchical File System .......................................................................... 48 File Access Rights.................................................................................... 49 File Types................................................................................................. 50 Named Files ...................................................................................... 50 Remote Files ..................................................................................... 50 DOS Files.......................................................................................... 51 vi Contents CD-ROM Files.................................................................................. 51 Physical Files .................................................................................... 51 Stream Files....................................................................................... 51 Devices and Device Control ............................................................................ 52 Device Independence................................................................................ 52 File Drivers ....................................................................................... 53 Device Drivers .................................................................................. 53 Loading and Configuring Drivers.....................................................