Real-Time Embedded Linux Runs When Needed On PowerPC

July 10, 2000
With Linux OnDemand embedded systems, designers are given the flexibility to run applications on a standard version of Linux as needed. This copy of Linux runs in its own MMU-protected partition while the rest of the system continues to operate in...

With Linux OnDemand embedded systems, designers are given the flexibility to run applications on a standard version of Linux as needed. This copy of Linux runs in its own MMU-protected partition while the rest of the system continues to operate in other partitions. It operates on the OnCore systems software foundation, a real-time microkernel foundation operating environment.

The program is typically used for applications that reconfigure the software or hardware on an embedded system. This process often requires the use of a compiler and linker on the embedded system. In general, the reconfiguration procedure seldom places real-time demands on the system.

Another feature of Linux OnDemand is that it can be used to host Linux applications such as web or FTP servers. These are capable of providing remote management services that don't impact the real-time nature of an embedded system.

When no longer required, Linux OnDemand partitions can be shut down. Memory and processor resources can then be applied to other areas. There's no need to disturb the rest of the environment unless changes have been made that affect specific tasks. In this case, provisions must be made for restarting or notifying tasks of any modifications.

Linux OnDemand normally provides a non-real-time environment. The new Linux OnCall support, however, can access the underlying real-time scheduler by making direct microkernel calls. This allows custom Linux applications to take advantage of real-time services while retaining access to well-established Linux support.

To develop Linux-based real-time applications that don't incur the overhead of the Linux operating system's scheduler, Linux OnCall can be used independently of Linux OnDemand. By moving directly to the microkernel, the OnCall API eliminates additional overhead normally brought on by Linux applications. Also, when compared to Linux operating-system support, OnCall offers a lower memory footprint.

Linux OnCall is different than OnCore's Linux for real-time support. Linux for real time replaces the Linux kernel with a real-time kernel that works with the OnCore system software foundation. Conventional Linux applications function in this partition, unaware that the Linux kernel has been exchanged for the real-time kernel.

The OnCore systems software foundation has an impressive sub-5-µs task switch between a standard Linux application and a real-time application. This is on a 550-MHz IBM PowerPC 750CX.

Embedded-systems designers using the OnCore systems software foundation are able to choose the most appropriate mix of operating-system interfaces for each project. Only necessary modules need to be loaded on an embedded system.

The OnCore systems software foundation supports distributed interprocess communications among partitions and across processors in a multiprocessor environment. In addition, it runs on most PowerPC microprocessors and Intel's Itanium.

Linux for real time, OnCall, and OnDemand can operate concurrently on a system that also may include non-Linux-based real-time applications. The OnCore systems software foundation supports real-time applications that rely on POSIX and C Threads support as well as native microkernel support. Java virtual machines also can function in their own partitions.

OnCore Systems Corp., 795 Main St., Half Moon Bay, CA 94019; (650) 712-0655; fax (650) 726-7666; Internet: www.oncoresystems.com.

See associated figure

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!