Real-time OS

Classification of operating systems. Real-time OS.

There are several classification schemes for operating systems. Below is a classification according to some criteria from the point of view of the user.

By the number of concurrent users:

  • Single-user operating systems allow only one person to work on the computer.
  • Multi-user operating systems support the simultaneous operation of several users on the EMV at different terminals.

By the number of processes simultaneously running under the control of the system:

  • Single-tasking operating systems support the execution of only one program at a time, that is, they allow one program to be launched in the main mode.
  • Multitasking OS (multitasking) support the parallel execution of several programs that exist within the same computing system for a certain period of time, that is, they allow you to run several programs simultaneously that will run in parallel without interfering with each other.

In multitasking mode, there are several user tasks in the RAM, the processor’s operating time is divided between programs that are in the RAM and ready for service by the processor. In parallel with the processor’s work, information is exchanged with various external devices.

Modern operating systems support multitasking, creating the illusion of several programs running at the same time on a single processor. In fact, for a fixed period of time, the processor processes only one process, and the processor time is divided between programs, thereby organizing parallel work. This remark does not apply to multiprocessor systems, which may actually be running multiple tasks at the same time.

The multitasking OS, solving the problems of resource allocation and competition, fully implements the multiprogramming (multitasking) mode. Multitasking, which embodies the idea of ​​time sharing, is called preemptive. Each program is allocated a quantum of processor time, after which control is transferred to another program. They say that the first program will be supplanted. Preemptive mode is used by custom programs on most operating systems.

By the number of processors supported (uniprocessor, multiprocessor):

  • Multiprocessor operating systems support the mode of resource allocation of several processors for solving a particular task. In a multiprocessor mode of operation, two or more connected and approximately equal in characteristics processors jointly execute one or more processes (programs or sets of instructions). The purpose of this mode is to increase performance or computing power.
  • Multiprocessor operating systems are divided into symmetric and asymmetric. In symmetric operating systems, the same core runs on each processor, and the task can be performed on any processor, that is, the processing is completely decentralized. In this case, all the memory is available to each of the processors.
  • In asymmetric operating systems, processors are unequal. Usually there is a main processor (master) and slaves (slaves), the load and nature of which are determined by the main processor.

By the type of user access to the computer (with batch processing, time-sharing, real-time):

Batch processing OS: in them, from the programs to be executed, a package (set) of tasks is formed, entered into the computer and executed in order of priority, with possible priority.

Time sharing operating systems provide a simultaneous dialog (interactive) mode of access to computers for several users on different terminals, to which the machine resources are allocated in turn, which is coordinated by the operating system in accordance with a given service discipline. Each program in RAM and ready for execution is allocated a fixed time interval set in accordance with the user’s priority (multiplexing interval) for execution. If the program is not completed within this interval, its execution is forcibly interrupted, and the program is transferred to the end of the queue. From the head of the queue, the next program is extracted, which is executed during the corresponding multiplexing interval, then arrives at the end of the queue, and so on. in accordance with a cyclical algorithm.

Real-time operating systems provide a certain guaranteed response time of the machine to the user’s request with the control of any events, processes or objects external to the computer. In this mode, the computer controls some external process, processing data and information directly from the control object.

By the bitness of the operating system code: eight-bit, sixteen-bit, thirty-two-bit, sixty-four-bit:

The bitness of the code is the bitness of the hardware used (for example, using 32-bit registers for processors). It is understood that the bitness of the OS cannot exceed the bitness of the processor.

By interface type (command (text), object-oriented (usually graphical):

The user interface is the software and hardware means of interaction between the user and the program or computer. The user interface is command and object oriented.

The command interface assumes that the user enters commands from the keyboard when performing actions to manage computer resources. With this technology, the keyboard serves as the only way to enter information from a person to a computer, and the computer displays information to a person using a monitor. This combination (monitor + keyboard) became known as the console.

Commands are typed on the command line. The command line is a prompt string. The command ends with the Enter key. After that, the transition to the beginning of the next line is carried out. It is from this position that the computer displays the results of its work on the monitor. Then the process is repeated.
Note

The command line contains the command to create (md) the Kat1 directory in the root directory of the C drive.

Operating system classification

An object-oriented interface is the management of computing system resources by performing operations on objects that represent files, directories (folders), drives, programs, documents, etc.

A kind of object-oriented interface is a graphical WIMP – interface (Window – window, Image – image, Menu – menu, Pointer – pointer). A characteristic feature of this type of interface is that the dialogue with the user is conducted not with the help of commands, but with the help of graphic images – menus, windows, and other elements. Although in this interface commands are given to the machine, but this is done “indirectly”, through graphic images. This type of interface is implemented on two levels of technologies: a simple graphical interface and a “pure” WIMP interface, an example of a graphical WIMP interface for Windows.

In addition to the named main types of interface, one more can be distinguished – SILK – interface (Speech – speech, Image – image, Language – language, Knowlege – knowledge). This type of interface is the closest to the usual, human form of communication. Within the framework of this interface, there is a normal “conversation” between a person and a computer. At the same time, the computer finds commands for itself, analyzing human speech and finding key phrases in it. It also converts the result of executing commands into a human-readable form.

By the type of resource use (network, not network): Network OS: Novell NetWare, Windows 2008 Server.

Network operating systems are designed to manage the resources of computers connected to a network for the purpose of sharing data, and provide powerful means of differentiating access to data in terms of ensuring their integrity and safety, as well as many service capabilities for using network resources.

By the features of the construction methods: monolithic kernel or microkernel approach.

When describing an operating system, the features of its structural organization and the basic concepts underlying it are often indicated.

The way to build the system kernel is a monolithic kernel or a microkernel approach. Most operating systems use a monolithic kernel, which is linked as one program that runs in privileged mode and uses fast transitions from one procedure to another, not requiring switching from privileged mode to user mode and vice versa. An alternative is to build an OS based on a microkernel, which also operates in a privileged mode and performs only a minimum of hardware management functions, while the functions of a higher OS are performed by specialized OS components – servers running in user mode. With this design, the OS works more slowly, since transitions between privileged mode and user mode are often performed, but the system turns out to be more flexible – its functions can be increased, modified or narrowed by adding, modifying or excluding user-mode servers. In addition, servers are well protected from each other, just like any user processes.

Related Posts