(1) Where is a Real-Time OS Used?
Real-time OSs are used in homes, offices, factories, automobiles, infrastructure and mobile devices – that is, they are widely applied in our living and working environments.
(2) Trends of Technology Demanded by the Market (Background of Real-Time OS Applications)
Conventional audio/visual, personal computer, and communication technologies have been integrated into new digital information appliance technology, and this progress will evoive into ubiquitous computing (computers being embedded everywhere around us to support human society). As ubiquitous computing develops, advanced network and security technology will be needed.
(3) Requirements for Embedded Software Development
- Increasingly large and complex programs
- Rapid technological progress and shortened development periods
- Demand for reduced development cost
Due to the above, the following demands for embedded software development are growing.
(4) Separation of Application and Hardware Control
Recent advances in embedded system functions mean that application programs are growing in complexity and size, so more time is needed for system evaluation. However, the life cycles of embedded system products are becoming shorter and timely release of new products is critical, which tightens the development schedule. Shorter development periods and improved application program productivity are needed.
The application program that directly controls hardware is highly dependent on specific hardware and its reusability is low. Control through an embedded real-time OS will reduce the dependence of application programs on hardware and improve reusability.
As shown, the real-time OS separates the hardware control processing from the application program and takes it over, which is advantageous for improving application program reusability and productivity.
(5) Easier Maintenance of Software Assets
The readability of the program configuration improves and modularization with reusability will be made easy by introducing a real time OS.
(6) Middleware and Driver Distribution
For current and future embedded systems, it is important to provide high-value-added products by implementing multiple functions, such as network functions, around each company’s leading core technology. To reduce the development cost, greater use of market-available software is likely. In addition, the business distributing each company’s software products through the market is growing. For easy and active use of distributed software, a real-time OS is needed to provide a standard platform for systems.
What is a Driver?
A driver is software that uses real-time OS functions and also provides hardware control functions for applications. A LAN controller is an example.
What is Middleware?
Middleware is software that uses real-time OS functions and provides functions that are not provided by the OS for applications. Image compression/decompression software is an example.
Middleware and drivers operate on an embedded real-time OS in most cases. The following are currently available examples of software components that operate on an embedded real-time OS:
TCP/IP protocol stack, file manager, USB protocol stack, Bluetooth protocol stack, IrDA protocol stack, GUI library, image compression/decompression software, audio compression/decompression software, voice recognition software, voice synthesis software, character recognition software, web browser, encryption library, fingerprint authentication software, etc.
(7) Applied Products
Most of embedded products around you have microprocessors built in and use embedded real-time OSs. Embedded real-time OSs are not used in any one specific field, but used in various fields.
In recent years, they are also used in high-performance systems including mobile phones, automobiles, car navigation systems and digital cameras.