RealTime Clocking and Porting My Job l Determining
Real-Time, Clocking, and Porting (My Job ) l Determining the Real Time Capabilities of various Operating Systems. l Writing code to support Real Time Clocking and Timing in KVM. l Porting KVM to various operating systems. (Current ports include Open. BSD. Working on a Real Time Linux module, and QNX Port. )
Real Time Capabilities l In order to achieve a hard real time Java, we need to run on an appropriate operating system. l x 86 Hardware has an approximate system resolution of 15µSec between assertion and handling of an interrupt. l We need to find an OS that allows us to integrate Real Time with the KVM.
Real Time Capabilities: RTLinux l Real Time Linux (RTLinux) is a hard real time operating system that runs Linux as its lowest priority process. l Easy to program, high resolution. l Pros: Fast, safe implementation of PSE 51. l Cons: Real Time Threads must be loaded as modules, with communications in Linux done through shared memory or queues.
Real Time Capabilities: Time. Sys Linux l Proprietary RTOS extensions to Linux kernel. l Time. Sys is developing the Real Time Java Reference Implementation. l Tested Real Time Operating System by a key player in Real Time Java. Availability of Reference Platform. l Fully preemptible kernel.
Real Time Capabilities: Open. BSD l Open. BSD supports some of the POSIX. 4 Standards. l Easy to program, relatively high resolution. l Pros: Stable, secure, used on Lockheed Martin aircraft. Free for any use. l Cons: Real Time Capabilities are wildly undocumented. No specifics known.
Real Time Capabilities: QNX l Extremely well proven and reliable commercial RTOS that is POSIX. 4 Compliant. l Large developer base, huge platform support. Extremely efficient, powerful, cleanly coded, and well documented. l Cons: Commercial, but free for development use.
Clocking: KVM to Java Interfacing l Currently much of the high resolution timer Java code is completed. l Native code to support Java is in the works. We are programming to the POSIX Real Time Standard in order to ensure high application portability. l Certain items, such as Asynchronous Events, need to be handled in an OSspecific manner.
Porting of KVM l We are in the process of evaluating many different platforms in order to find an optimal implementation for the Real Time KVM. l We currently have an Open. BSD port of KVM. Soon to come are a QNX port, and possibly a kernel module version of KVM to work in RTLinux. No porting is necessary for Time. Sys Real-Time Linux.
- Slides: 8