> Which are the the typical characteristics that make a Real-time OS
> different from a conventional OS? In terms of the general components of an
> OS like process scheduling and management, file management, memory
> management, interrupt handling etc, how can we classify an OS to be in
> Real-time?I would also like to understand the classification of kernels
> into micro, nano etc.
> Thanks in advance for help.
> --
> Posted via CNET Help.com
> http://www.help.com/
An OS is considered Real Time (RT) if a process is run on a CPU within a
pre-defined, fixed, maximum amount of time. In technical words "Bounded
dispatch latency"
To be able to do this, you have to implement all kinds of different techniques
to make sure that your dispatch time is bounded.
1. On the scheduler. You have to run at the "highest" priority, so you can
interrupt other processes, but other processes cannot interrupt you.
2. The kernel has to be pre-emptable. If the kernel is not pre-empatble, it
can be running for a low priority process (which itself is pre-emptable) and
cannot be pre-empted until it has done the work for that process
3. All the memory that you use is locked in physical memory. Paging in and or
out will take time, and may prevent the dispatch time to become too long,
because you will depend on the pagout daemon etc. This also includes all pages
of the shared libraries that are used by the RT process.
4. File management: File I/O is done as page in (read) and page out (write).
This is called memory mapped I/O. The memory pages used for the files are
again locked in memory.
5. The clock tick frequency may have to be faster than the default used by
most OS-es (1000 instead of 100)
Hope this helps a bit.
--
==================================================
Niels de Troye
Sysman Automatisering B.V. / Sysman Software B.V.
Tel: +31-20-441 85 85
Looking for a web-based graphical performance tool?
http://www.sysman.nl/perfgraph
===================================================