Test of the Preemptive Kernel Patch
e8johan writes "Linux was originally written as a general-purpose operating system without any consideration for real-time applications. Recently Linux has become attractive to the real-time community due to its low cost and open standards. In order to make it more practical for the real-time community, patches have been written to affect such things as interrupt latency and context switch. These patches are public domain and are becoming part of the main Linux tree. The test results can be found here."
It takes the preemptive and low-latency patches
to make the linux kernel suitable for general-
purpose use on low-powered hardware. If you want
to watch smooth mpeg decodes while running a POVRay
job and serving web pages out of a database,
it takes a top-end current box to keep you happy,
unless you have preemptive and low-latency patches
applied.
Multimedia *is* realtime, so general-purpose implies
realtime.
-I like my women like I like my tea: green-
Your definition of a real-time system is a little too loose. A payroll system is not a real-time system. Sure, the employees might get angry if the payroll is not submitted on time, but a hard real-time system has well-defined fixed time constraints, and guarantees that these critical tasks will be completed on time. A payroll system makes no guarentees.
I have to side with the original poster. Other than scale, there isn't any difference between a payroll system and something you would typically consider "real time". There are "well-defined fixed time constraints" for payroll processing (in the US often defined by state and federal laws). If you do payroll processing, you guarentee (often contractually) that you will meet the constraints.
In both cases, there are time limits expressed in terms of the outside world("real time"), and sufficient consequences if these constraints are not met to define failure to meet the constraints as system failure. The only difference is scale.
-- MarkusQ