Operating system features, functions, and user interfaces

Source: Internet
Author: User
1. Operating System features (characteristics of operatingsystems)

  • Parallelism

Parallelism and concurrency are two similar and different concepts. Parallelism means that two or more events occur at the same time, whileConcurrency means that two or more of them are at the same time interval.Occurred. InMulti-program environment,Concurrency refers to the macro execution of multiple programs at the same time within a period of time.. However, in a single processor system, only one program can be executed at a time. Therefore, these programs are executed interactively.

  • Sharing)

Sharing means that all resources in the system are not exclusively owned by a program, but are used by multiple programs in the system at the same time. Depending on the resource attributesMutual ExclusionAndShare at the same timeTwo different sharing methods.

Concurrency and sharing:

Concurrency and sharing are the two most basic features of the operating system, and they are mutually existent conditions. On the one hand, resource sharing is conditional on concurrent execution of programs (processes). if the system does not allow concurrent execution of programs, there is naturally no resource sharing problem. On the other hand, if the system cannot effectively manage resource sharing, the concurrent execution of the program will also be affected.

  • Virtual)

Virtual refers to the use of certain technologies to convert a physical entity into several logical counterparts. Physical entities actually exist and are real. Logical objects are virtual objects that users feel. For example, in a single CPU multi-channel time-sharing system, a physical CPU can be virtualized into multiple logical CPUs through multi-channel program technology and time-sharing technology, each end user thinks that there is an "independent" CPU running for it, and the user feels that the CPU is a virtual CPU.

  • Asynchronism and Nondeterministic)

In a multi-program environment, concurrent execution of multiple programs is allowed. However, due to resource restrictions, the execution of programs is not "in one breath", but in the form of "stop and stop, that is, the program isAsynchronous modeRunning. Asynchronous and concurrent execution of multiple programs brings two types of uncertainty. One is that the execution speed and time of each program (process) are uncertain, and the sequence of advancing between each program (process) is also uncertain. It is unpredictable. The other is that the execution results of each program (process) are uncertain, that is, the same program is given with the same initial conditions and executed multiple times in the same environment, however, different results may be obtained, which is also known as the non-reproducibility of concurrent program execution. The uncertainty of execution results is absolutely not allowed,This is a problem that must be solved by the operating system for concurrent program execution.

2. Features of Modern Operating Systems

  • Microkernel Architecture)

It only allocates a few basic functions of the OS (including address space, inter-process communication IPC, and basic scheduling) to the kernel. Other OS services are provided by processes called servers.

  • Multithreading)

The process of executing the application is divided into multiple threads that can run in parallel.

  • Symmetric multi-processor (SMP)
  • Distributed Operating System (Distributed Operating Systems)
  • Object-oriented design)
3. Operating System Functions

  • Processor (process) Management

The main task of processor management is to allocate the processor and effectively control and manage its operation. In a multi-channel program environment, the distribution and operation of processorsProcessAs the basic unit, processor management can be summarized as process management.Process Management includes process control, process synchronization, Process Communication and scheduling.

  • Memory Management

The main task of memory management is to provide a good environment for multi-program operation, so that users can use the memory conveniently, improve the memory utilization, and expand the memory logically. Therefore, the storage management should haveMemory Allocation, memory protection, address ing, and memory expansion.

  • I/O device management

The task of the device management system is to register the status of each I/O device, manage and complete the I/O requests put forward by the user, and assign the I/O device to the user according to certain policies. At the same time, it increases the utilization of CPU and I/O devices, increases the I/O speed, and facilitates the use of I/O devices.Buffer Management, device allocation, device processing, and Virtual Devices.

  • Information Management (File System Management)

Software Information of the computer system is managed in the form of files. Part of the operating system responsible for this task is the file system, and the task of the file system is to manage user files and system files, to facilitate user use and ensure file security, the file system management should haveStorage space management, directory management, file sharing and protection.

  • User Interface

To make it easier for users to use the OS, the OS provides users with "user-OS interfaces", which are divided into two types:Job-level interface, which provides a set of keyboard commandsTo organize and control the running of jobs. The other isProgram-level interface, which provides a set of system calls for other programs to call.

 

4. User Interface

User interfaces are the channels for interaction and communication between computer systems and users. For most users, the acceptability of a computer system depends largely on this user interface. User interfaces are dividedCommand INTERFACEAndProgram Interface.

  • Command interface (job-level interface)

Job-level interfaceIt is used for Job control. It controls the processing of a group of programs by providing advanced communication between the user and the operating system. This interface is also calledCommand INTERFACEThe reason is that you can input or execute a series of commands on the keyboard to tell the OS to execute those functions. It pointsOnline User InterfaceAndOffline user interface.

(1) online user interface. An online user interface is also called an interactive user interface, which is used for online job control. It is composed of a groupKeyboard operation commands. Interactive User Interface interaction is classified into two types: character mode, terminal command, and stream-oriented communication, such as MS-dos. The other is the graphical mode, which provides graphical user interfaces (guis) such as "dialog box", "icon", and "menu", such as Windows.

(2) offline user interfaces are also calledBatch processing user interfaceIt is used for offline job control. Offline job control is divided into job control card and job manual.

  • Program Interface (such as Win32 API)

Program InterfaceIt is a facility in which the operating system provides services for programs to run and communicates with. It is used by all user programs and other components of the operating system, in particular, the command handler is used. When a program is being executed, the program interface accepts requests for system services and resources and communicates with the Resource Management Program of the operating system.This program interface is mainly composed of system calls..

  • System CallIt is a sub-function module provided by the user to call the operating system in a program. It is a special process call. This call is usually implemented by a special machine command.Trap Command trapOn the X86 serverSoft Interrupt command int xx, Also knownAccess Control Command (SVC) and access control call. The user program runs in the user State. It enters the core through soft interruptions, calls the system process (sub-module), runs in the core state, and still runs in the user State after the return.
  • User Program System calls include process management, file management, information maintenance, and device I/O management.
  • The system call process is divided into the following three steps: set the system call number and parameters, general processing of System Call commands, and specific processing of the System Call command processing program.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.