My OS review-Overview of OS, Overview of OS Review

Source: Internet
Author: User

My OS review-Overview of OS, Overview of OS Review

I think the biggest motive force behind learning a certain kind of knowledge is your curiosity when you feel that the existing knowledge is insufficient to solve the current problem. In order to completely break down with the underlying system. Today, we will start to fully review the underlying knowledge of the system, from the operating system to UNIX, to virtual machines. I decided to record at least three blogs in a week. I hope that I can tell the essence of one thing in my own words.

I. What is the operating system?

What is a computer? To put it bluntly, a collection of hardware and software. What is the operating system? Is the layer software that operates the underlying hardware. With the operating system, we do not need to input binary information such as 1010 for computer processing. In this case, computer hardware is a group of resources, and the operating system encapsulates these resources, so that you can use it more conveniently.

Computer resources can be divided into four categories. According to textbooks, processor, memory, I/O devices, and information (data and programs). To put it bluntly, it refers to the CPU, memory, input and output device (mouse, keyboard, display, etc.), hard disk and hard disk software. The operating system encapsulates the computer hardware system and manages four types of computer resources. This is the function of the operating system. It's easy to understand.

 

Ii. Operating System Development History

The development process of the operating system is very important. It can make us realize that the most important role of technological improvement is to change what is most urgent to change.

Here is a brief introduction to the development history of the operating system.

(1) manual operation.

The legendary tape operation. Record the program and data with the simplest tape, input (I/O) into the computer (memory), and then run the computer. At this time, we can see that computer I/O and Information (Hard Disk programs and data) are stored and transmitted through simple paper. Of course, the speed is slow.

(2) offline input/output mode.

This is not unrelated to the tape, but it is to pre-load the tape information into the tape, and then when the computer is running, the program and information are transferred from the tape to the memory. Of course, this speed is greatly improved. We can see that this method adds a simple hard disk to the computer, and stores programs and data on the hard disk instead of the tape.

(3) single batch processing system.

This is the earliest operating system. The CPU control "supervisor Program" transfers a job (program and data) on the tape into the memory, runs it, calls the next job into the memory, and then runs it. In this way, all jobs on the tape are run in sequence. In the system memory, only one program is running at a time, and the CPU is just a loop like a single thread after I/O is processed and then processed.

(4) Multi-Channel batch processing system.

This is a very efficient operating system. Jobs submitted by the user form a queue side by side on the hard disk, and then the scheduler puts several jobs into the memory. When a job is executed, I/O requests are not blocked, so that the CPU is not idle. Instead, the CPU is used to execute another job in the memory. In this way, all jobs are executed in turn, and the CPU and other system resources are maintained as much as possible.

(5) time-sharing system.

This is a multi-user system. It is used by multiple users at the same time. each user has his own terminal to operate on the computer. The time-sharing system uses a classic time slice, that is, each user and job runs in one time slice sequentially and only runs for a short time, it seems that every user excludes the entire computer. The time-sharing system is mainly used to query the system.

(6) Real-Time System.

Real-time systems can be seen as a time-based system with higher and more precise internal requirements. However, this "time-sharing" is not necessarily controlled by time slices, or it may be controlled by a set deadline. The system collects and Controls Multiple real-time tasks. To put it bluntly, it is a precise multi-task system.

(7) microcomputer operating system.

This is very simple, there are single user single task Operating System (CP/M, MS-DOS, etc.), single user multi-task operating system (Windows95, XP, etc) multi-user multi-task operating system (unix OS, etc ).

 

Iii. Operating System Structure (1) unstructured OS (first generation)

This is the oldest operating system. It only pursues functions and implementations and does not require further research.

(2) Modular OS (second generation)

Divide the OS into several independent modules, such as process management module, memory management module, and file management module, and divide each module into its own sub-modules, the system has a clear modular structure. However, in modular structure design, the design of each module goes hand in hand and there is no reliable "decision order". This design is also called "unordered module method ". This generation of OS adds modules on the basis of the first generation, which makes a huge step forward.

(3) Hierarchical OS (third generation)

The bottom-up hierarchical design only targets hardware with a single and correct function. After that, the bottom layer is transparent and features are constantly enriched and abstracted to the top layer, the top layer only depends on its underlying layer. This is also the embodiment of Object-oriented thinking. This structure is very similar to the well-known network protocol architecture. This structure is very common in software design. In short, it is divided and abstracted by layer, and each layer only operates on the next layer.

(4) micro-kernel OS (modern OS)

The OS in the microkernel structure divides the system into two major parts: the microkernel and multiple system servers. The microkernel refers to a small enough part that can implement the most basic functions of modern OS. It is responsible for the basic hardware connection and communication with external system servers. An external system server refers to an internal operating system. It abstracts various system services into a modular server structure, represented by a process, such as a file server or process server. We all know that the essence of a server is the request and response to messages, which is very suitable for distributed processing required by today's systems. A simple and efficient microkernel is used to process each server. Each server is modular in general, and the server itself is built on a hierarchical OS, this design mode is not only reliable, but also has excellent scalability and performance. This design is really elegant.

 

Related Article

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.