Corporate What's New? Support Contact Us Home



 

Real Time Product Descriptions

Model 8272 REAL/IX PX Operating System for X86/Pentium Based Systems


* Features
* Overview of benefits
* Description
-- Preemptive kernel
-- Process scheduling
-- Multiprocessing
-- Pre-page and process memory locking
-- Interprocess communications
-- Real-time timers
-- File system
-- ONC/NFS
-- I/O subsystem
-- TCP/IP protocol
-- User-extensible kernel
-- Shells
-- X Window System
-- Application programming interface
-- Window manager
-- Sytle guide
* Customer support
* Support category

Features

REAL/IX PX Overview
Functional overview of REAL/IX PX operating system

  • Real-time event driven implementation of UNIX System V operating system
  • POSIX 1003.1 conformant
  • Fully preemptive kernel
  • Symmetrical multiprocessing (SMP)
  • Performs automatic CPU load balancing
  • Supports targeted processes and interrupts
  • Real-time and time-sharing process scheduling
  • Dynamic allocation of system resources
  • Pre-page and process memory locking support
  • Enhanced interprocess communication facilities
  • Real-time timer mechanisms
  • Real-time file system with support for up to 124 character file names
  • CD-ROM file system support (ISO 9660)
  • Synchronous and asynchronous disk I/O
  • Host-based networking support including UNIX-domain sockets
  • Supports TCP/IP protocol over Ethernet networks
  • Integral Open Network Computing/Network File System (ONC/NFS)
  • Bourne and Korn shells
  • Integral industry-standard graphical interface based on the X Window System
  • Provides comprehensive, full-featured tools for creating and manipulating windows
  • User defined system calls


Overview of benefits
The REAL/IX PX operating system is MODCOMP's real-time implementation of the UNIX System V operating system for Intel microprocessor based platforms. The REAL/IX PX operating system combines full featured real-time performance with the benefits of the UNIX operating system to provide true open systems functionality and is ideally suited to time-critical applications. Furthermore, the REAL/IX PX operating system is fully "C" source code compatible with MODCOMP's RISC based implementation of the REAL/IX operating system.

The UNIX operating system, from which MODCOMP derived the REAL/IX PX operating system, is a powerful time-sharing operating system with many high-level utility programs. As an industry standard with strong development capabilities, the UNIX operating system serves as an excellent foundation for MODCOMP's REAL/IX PX operating system. By implementing full kernel preemption, enhanced process scheduling, interprocess communications, as well as file system and I/O subsystem capabilities, the REAL/IX PX operating system delivers the predictable, deterministic response rates and fast context switch times required by real-time applications for event driven processing.

Real-time applications demand CPU time be apportioned according to user-defined priorities. The REAL/IX PX operating system combines a fully preemptive kernel with 256 real-time and time-sharing scheduling priorities to control and allocate CPU processing. Time-critical processes are ensured immediate access to required system resources.

Prompt, predictable response to internal and external events is required by real-time applications. Improved methods of interrupt handling and interprocess communication enable the REAL/IX PX operating system to offer extremely fast, deterministic response times.

Processes in a real-time environment demand fast execution that is not compromised by disk I/O latency. File system enhancements enable the REAL/IX PX operating system to overlap disk I/O with CPU execution; at the same time, an improved I/O subsystem provides prioritized disk I/O. By reducing the overhead associated with disk I/O, the REAL/IX PX operating system delivers extremely fast file access.

The REAL/IX PX operating system provides the TCP/IP protocol, allowing users to network systems via Ethernet interfaces. The feature allows users to transfer data quickly and easily among systems. Also, authorized users can log on to any system on the network. Additionally, user-written programs can access TCP/IP functions.

Based on X11R5 and X11R6, the integral REAL/VU Graphical Environment provides industry-standard graphical user interfaces. In addition to the system console, a wide variety of networked graphics terminal devices are supported.

A choice of several interfaces are provided, including the Open Software Foundation's (OSF), Motif environment. Another optional interface is one which resembles the Windows95 interface.

The REAL/VU Graphical Environment makes code portable and users adaptable to different platforms. The Motif environment's widespread acceptance throughout the computer industry promotes code portability, preserving users' software investments. In addition, since the graphical interface is virtually identical regardless of the platform, once users become familiar with the Motif environment, they can easily transfer their skills among platforms.

The REAL/VU Graphical Environment is easy to learn and easy to use. The user-friendly interface incorporates intuitively obvious pop-up and pull-down menus. The attractive and easy-to-read, three-dimensional screen appearance boosts user productivity.

The user interface includes simplified log-in procedures and remote display management menus for the user's convenience. For enhanced user productivity, the REAL/VU Graphical Environment incorporates features for direct programmer support for focus management, context-specific help information, and the ability to perform most functions with either the keyboard or mouse.

Offering quick response and efficient memory usage, the REAL/VU Graphical Environment provides high-speed performance even when users are working with large, cumbersome text files.

The REAL/VU Graphical Environment includes a comprehensive set of tools, called widgets and gadgets. These tools make it easy for users to customize their environment to best suit the needs of their unique application. By following the guidelines for application programming that are included with the REAL/VU Graphical Environment, all customization can be done to conform to standards.

The REAL/IX PX operating system is a full-featured bundled system. It comes with a complete C and C++ language development system. Items included are C and C++ compilers, linkers, libraries, assembler, and symbolic debugger. For enhanced usage in graphic-intensive applications, the REAL/IX PX operating system fully supports the X Window System for bit-mapped graphic display user interfaces. Using the REAL/IX PX operating system's integral REAL/VU Graphical Environment product, users can write applications to run with a wide variety of graphic devices.

Because of its compliance to industry standards, the REAL/IX PX operating system enables the user to acquire and run many "shrink wrapped" applications available for Intel based UNIX System V operating system. These, combined with the REAL/IX PX operating system's real-time features and performance, provide the user with an unprecedented set of capabilities in a real-time system.

Designed for PCI and ISA bus based systems utilizing the Intel X86 and Pentium microprocessors, the REAL/IX PX operating system conveys and enhances their architectural capabilities. Furthermore, the REAL/IX PX operating system balances the three dimensions of real-time computer performance: computational speed, interrupt handling, and I/O throughput. By maximizing performance in these three dimensions, the REAL/IX PX operating system delivers superior performance for real-time applications.

The REAL/IX PX operating system provides transparent enhancements for all users. Time critical applications can make use of further enhancements specifically tailored for real-time programming.

Features Transparent Time-Critical
Performance-tuned kernel X X
Priority-based scheduling X X
Prioritized disk I/O X X
High-performance file system X X
Fast interprocess communications X X
Asynchronous I/O X
Non-buffered file I/O X
Memory locking X
Real-time timers X
Enhanced interprocess communications X


Description
The REAL/IX PX operating system is a functional superset of the UNIX System V operating system. The REAL/IX PX operating system conforms to a number of industry standards such as FIPS-151-1, and IEEE POSIX 1003.1.

The REAL/IX PX operating system incorporates many enhancements which address the requirements of real-time applications for user control and responsiveness.


Preemptive kernel
One of the most critical requirements for true real-time performance is kernel preemption. The REAL/IX PX operating system's unique, fully preemptive kernel allows a higher priority process or interrupt to preempt the CPU whether it is executing in user or kernel space. The fully preemptive kernel provides complete real-time responsiveness and absolute deterministic performance, unlike implementations that use preemption windows.

In conjunction with the fully preemptive kernel, the REAL/IX PX operating system incorporates an innovative locking mechanism to protect data structure integrity. These spin locks and suspend locks prevent corruption by ensuring that if one process is modifying a data structure, no other process can access that data structure until the modifications are complete.

Low interrupt latency is critical to the performance in real-time applications, and the REAL/IX PX operating system meets these high-speed response requirements. From the time that a hardware interrupt signal occurs to the time that the kernel driver begins to process the event is less than 100 microseconds. Typically, the driver interrupt latency is in the 50 microsecond range on a 133 MHz Pentium based system.


Process Scheduling
To determine the sequence of process execution, the REAL/IX PX operating system utilizes innovative process scheduling algorithms. The scheduler supports 256 priority levels, evenly divided between real-time and time-sharing processes. Real-time processes are assigned fixed priority levels in the range of 0 through 127, while time-sharing processes receive priority level 128 through 255.

Real-time priorities are assigned to processes at run-time and do not vary except by explicit control of the programmer or operator. Time-sharing priorities are assigned to the UNIX System V scheduling algorithm which ensures equitable access to system resources for non-real-time processes.

The REAL/IX PX operating system also has a priority boost mechanism. This allows the priority of a process, which is locking a resource required by a higher priority process, to be temporarily raised until the resource is relinquished and made available for the more critical process.

These process scheduling features allow the REAL/IX PX operating system to deliver the fast, predictable context switch times necessary for demanding real-time applications.


Multiprocessing
The REAL/IX PX operating system supports high-performance multiprocessing allowing multiple processors to execute in the system kernel in a fully symmetrical peer-to-peer configuration. The implementation ensures that the highest priority processes (based on the number of processors) receive immediate control of the system resources.

The user can control the processor's load or allow the REAL/IX operating system to balance the load automatically. For users requiring complete control, any process can be targeted and locked to a specific processor. In addition, the user can direct interrupts to a specific processor, interrupting one process while having no effect on other processes in the multiprocessing environment.


Pre-page and process memory locking
The REAL/IX PX operating system allows the real-time programmer to guarantee response time by pre-paging instructions, data, and stack; and then locking these pages into memory.


Interprocess communications
The REAL/IX PX operating system combines traditional UNIX System V interprocess communication facilities, such as signals, semaphores and shared memory, with MODCOMP enhancements including a fast binary semaphore mechanism and common event notification.

Signals are asynchronous messages sent from one process to another indicating that a specific condition has occurred. The REAL/IX PX operating system signal mechanism operates like the traditional UNIX signal mechanism, but with improved performance and reliability for the real-time environment.

Shared memory, where multiple processes map the same area of memory into their address space, provides the fastest interprocess communication available within the REAL/IX PX operating system. Shared memory is accessed at the same speed as is a process' private memory.

High performance binary semaphores provide the synchronization mechanisms required to make shared memory a viable, fast, inter-process communication facility.

Common event notification enables the programmer to pre-define multiple event queues as well as event response procedures for each process. This provides accurate event reporting for processes responding to multiple events.


Real-time timers
The REAL/IX PX operating system utilizes two timer mechanisms to satisfy the system event scheduling requirements of real-time processes: system-wide timers and process interval timers. Both mechanisms are accessible through system calls.

System-wide timers provide applications with the ability to read, write, or obtain the resolution of a system timer.

Process interval timers schedule events using a very fine granularity of time. Process interval timers are either one-shot or periodic, and can be set to expire at a specific time or at a time relative to the current system time.


File system
The REAL/IX PX operating system offers users two file systems: a standard file system and a real-time enhanced fast file system.

The standard file system provides all the features of the UNIX System V file system including: hierarchical organization for files and directories, buffering of data, and file access control.

The fast file system includes all the functionality of the standard file system, while incorporating features that facilitate real-time performance by optimizing file access functions including:

  • Contiguous extendable files
  • File I/O can bypass the buffer cache
  • Asynchronous file I/O in addition to synchronous file I/O
  • Bit-mapped organization for disk block allocation
  • Long filenames

The REAL/IX PX operating system supports large logical block sizes to improve the performance of block I/O transfers for large files. In addition, entire file systems can be designated as synchronous. In synchronous file systems, all write operations wait for the file data and file status to be physically updated, rather than waiting on for the write to the buffer cache.


ONC/NFS
The Open Network Computing/Network File System is a facility that allows remote access to files across a network. NFS has been integrated into the REAL/IX PX operating system is such a way that the real-time characteristics of the operating system are retained. In addition to the modifications required for NFS to run in a fully preemptive kernel, various improvements have been made to the NFS code.


I/O subsystem
The REAL/IX PX operating system improves I/O subsystem performance for real-time applications through asynchronous disk I/O operations, prioritized disk I/O queueing, direct I/O between a user-level program and a device, and connected interrupts.

By supporting asynchronous disk I/O operations, the REAL/IX PX operating system enables processing and disk I/O operations to overlap. This flexibility decreases overall process execution time.

The REAL/IX PX operating system supports prioritized queueing of disk I/O, enabling disk I/O associated with higher priority processes to be performed before disk I/O associated with lower priority processes.

Direct I/O enables a user program to map device registers into its own address space. System overhead associated with I/O is significantly reduced since the user program can directly access these registers.

The connected interrupt mechanism provides a consistent interface for notifying user-level processes of hardware interrupts. The use of direct I/O with the connected interrupt mechanism enables a device driver to be implemented as a user level process. This configuration facilitates rapid interaction between the device and the process.


TCP/IP protocol
The REAL/IX PX operating system provides the TCP/IP protocol and utilities for applications requiring access to local area networks. The REAL/IX PX operating system includes the telnet and ftp commands as well as the Berkeley r-commands. The REAL/IX PX operating system's implementation of TCP/IP incorporates AT&T's STREAMS facility as fully semaphored modules. In addition to user-level tools the REAL/IX PX operating system provides a Berkeley socket interface for programmatic access to the TCP/IP functions.


User-extensible kernel
Another feature of the REAL/IX PX operating system is the user's ability to customize the operating system kernel. Extensive documentation is available to guide development personnel through writing and installing their own system calls and device drivers without having to access the kernel source code.


Shells
In a development environment, most users interface with the REAL/IX PX operating system via the shell, a command interpreter that allows the user to communicate with the operating system from the keyboard. In addition, the shell provides a powerful programming tool containing features such as: variables, subroutines, parameter passing, and structures. Users may customize the shell to meet specific needs and preferences.

The REAL/IX PX operating system provides the user with two shells:

  • The Bourne shell is the standard UNIX System V shell and offers ease-of-use in addition to programming flexibility
  • The Korn shell combines all the functionality of the Bourne shell with enhanced features for user interactions with the system


X Window System
With the integral REAL/VU Graphical User Environment, the REAL/IX PX operating system fully supports the X Window System, an industry-standard, network-based graphics windowing system. The REAL/IX PX operating system provides the client-side X Window routines, while an X Window server provides the server-side routines. X Window servers can be PC's and X Window terminals interfacing via TCP/IP and Ethernet. REAL/IX PX applications communicate with the X Window server via program calls to Xlib, a library of subroutines that resides on the REAL/IX PX operating system. Xlib subroutines connect to servers, create windows and graphics, and respond to asynchronous events. The X Window System provides a terminal emulator for applications requiring an interface to a standard terminal.

The REAL/VU Graphical Environment, based on OSF/Motif Version 1.2, brings industry-standard, user-oriented, PC-style behavior and screen appearance to the real-time REAL/IX PX world.

The REAL/VU Graphical Environment consists of the following:

  • An applications program interface that includes the user interface toolkit and the user interface language
  • A window manager
  • A style guide


Application programming interface
The application programming interface consists of the user interface toolkit and the user interface language.

The user interface toolkit is based on the X11 Window System's Version 11 Release 6 Intrinsics. The toolkit includes a library of graphical objects, such as menus and forms, that users employ to construct application user interfaces. The toolkit contains dozens of basic, composite, scrolled, specialized composite, basic top-level, and specialized dialog widgets. Additionally, the toolkit contains windowless widgets, called gadgets. Gadgets perform specific functions with lower server overhead. In addition, gadgets can be grouped, or cached, and assigned the same attributes, such as color and font style. Grouped gadgets reduce memory requirements and significantly improve performance in complex applications. With the toolkit and a widget meta-language (WML), users can easily create new widgets, extend the functionality of existing widgets, or create new graphical objects suited to individual applications.

The easy-to-use user interface language describes widget resources. With the user interface language, users create text files that describe each of the widgets, and its resources, that an application uses. Then, the REAL/VU Graphical Environment compiles the description into a resource file that is separate from the application. The application code automatically loads the resource file at runtime. By storing the resource file separately from the application code, the REAL/VU Graphical Environment simplifies the description and maintenance of user interfaces.

Window manager
The window manager gives users a standard environment for manipulating application windows. With the window manager, users can customize the appearance of windows to best suit their application and end users.

The window manager allows users to control multiple windows; for example, through the window manager, a user can move, resize, or add icons. The window manager controls the location of certain types of windows, overlapping windows, and the location of icons. The window manager supports three-dimensional, rectangular and non-rectangular, bevelled windows and both black and white and color windows.

The window manager is compliant with the Inter-Client-Communication Conventions Manual (ICCCM), supporting selections, cut buffers, window and session management, and resources.


Style guide
The style guide is a document that describes the way an application should interact with the user. The style guide includes guidelines for application programming, new widget development, fonts, customization, and extensions. By following these guidelines, users' designs will be vendor independent and consistent with the standard, boosting the end users' productivity.

The style guide includes information on Native Language Support (NLS) consistent with the X/Open XPG3 portability guide. NLS support and the user interface language enable the REAL/VU Graphical Environment to support international activities, including multiple languages and the localization of Asian and European languages.

In addition to the style guide, this product includes a user's guide, a programmer's guide, and a reference manual.

Suggested minimum hardware platform metrics:

  • Processor: Intel 80486 DX2/66
  • Memory: 8MB minimum, 32MB for REAL/VU Graphical Environment
  • Hard Disc: EIDE or SCSI 540 MB
  • EIDE or SCSI CD-ROM player
  • SVGA controller
  • Monitor: SVGA 14"
  • Mouse
  • Keyboard
  • Ethernet controller


Customer support
MODCOMP offers a variety of programs and services that demonstrate our commitment to customer satisfaction. Our training department provides comprehensive hands-on instruction either at our facilities or at customer designated sites. Our worldwide support services organization is ready to provide installation assistance, ongoing preventative and remedial maintenance, and a full range of software services.

MODCOMP also offers flexible service programs tailored to the requirements of high volume customers, value added resellers (VAR's), original equipment manufacturers (OEM's), strategic marketing alliances (SMA's), and systems integrators (SI's).

For further information on our customer support services and comprehensive technical training, please contact your local sales office or a MODCOMP customer support representative.


Support category
The REAL/IX PX operating system is supported under Support Category A. Appropriate license agreements must be executed or on file with MODCOMP prior to shipment of any licensed products.

For more information send E-mail request to: info@modcomp.com.


E-Mail Webmaster  | Legal | Copyright © 2001 MODCOMP, Inc. | Rendered Sept. 28, 2001

MODCOMP is a subsidiary of CSP Inc