Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Real-time computing
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== History == The term ''real-time'' derives from its use in early [[simulation]], where a real-world process is simulated at a rate which matched that of the real process (now called [[real-time simulation]] to avoid ambiguity). [[Analog computer]]s, most often, were capable of simulating at a much faster pace than real-time, a situation that could be just as dangerous as a slow simulation if it were not also recognized and accounted for. <!-- What does this mean? Where did "dangerous" become an issue? --><!-- The historical origins of the term has no bearing on its current, correct, technical definition. ''Real-time'' does not refer to either fast or slow processing. In fact, the speed of processing is independent of whether it is considered ''real-time'' or not. For a system to be defined as ''real-time'' it must meet its time constraints β whether those constraints require extremely fast processing or can be met at a more leisurely pace has no bearing on the matter. --> Minicomputers, particularly in the 1970s onwards, when built into dedicated [[embedded system]]s such as DOG ([[Digital on-screen graphic]]) scanners, increased the need for low-latency priority-driven responses to important interactions with incoming data. Operating systems such as [[Data General]]'s [[Data General RDOS|RDOS (Real-Time Disk Operating System)]] and RTOS with [[Foreground-background|background and foreground scheduling]] as well as [[Digital Equipment Corporation]]'s [[RT-11]] date from this era. Background-foreground scheduling allowed low priority tasks CPU time when no foreground task needed to execute, and gave absolute priority within the foreground to threads/tasks with the highest priority. Real-time operating systems would also be used for [[time-sharing]] multiuser duties. For example, [[Data General Business Basic]] could run in the foreground or background of RDOS and would introduce additional elements to the scheduling algorithm to make it more appropriate for people interacting via [[dumb terminal]]s. Early personal computers were sometimes used for real-time computing. The possibility of deactivating other interrupts allowed for hard-coded loops with defined timing, and the low [[interrupt latency]] allowed the implementation of a real-time operating system, giving the user interface and the disk drives lower priority than the real-time thread. Compared to these the [[programmable interrupt controller]] of the Intel CPUs (8086..80586) generates a very large latency and the Windows operating system is neither a real-time operating system nor does it allow a program to take over the CPU completely and use its own [[Scheduling (computing)|scheduler]], without using native machine language and thus bypassing all interrupting Windows code. However, several coding libraries exist which offer real time capabilities in a high level language on a variety of operating systems, for example [[Real time Java|Java Real Time]]. Later microprocessors such as the [[Motorola 68000]] and subsequent family members (68010, 68020, [[NXP ColdFire|ColdFire]] etc.) also became popular with manufacturers of industrial control systems. This application area is one where real-time control offers genuine advantages in terms of process performance and safety.{{citation needed|date=September 2013|reason=This whole paragraph contains several questionable statements in regard to MOS, AMD and Motorola CPUs and their interrupt handling, and therefore needs to be rewritten and sourced by reliable sources.}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)