The operating system is the human mind
The operating system is the mind, and this may sound like an exaggeration to some, but it makes sense; The operating system is so powerful that it blocks out all computer hardware and dramatically lowers the cost of using computers. Microsoft ushered in the PC era with Windows; One of the reasons that prevented people from using computers at that time was the high price, and the more important reason was that computers without operating systems were not generally difficult to use!
Let me give you a few examples: you have to remember all the memory addresses yourself; Remember the location of files on disk; Not to mention checking your hardware every time you turn it on. Modern computers don’t work without an operating system. In short, the operating system is omnipotent, of course, the difficulty of development is also very big, a person has a mature mind is not easy, for the computer operating system development is not easy. As a subject introduced from the West, the original name of Operating System is: Operating System. In fact, the translation of operating system does not reflect its powerful, but should be translated as control or control.
2. What are operating systems made of? When we learn the operating system, the book will introduce: the operating system is a complex system software, by different data data, program code and data initialization files constituted by the collection. In plain English, it’s a very advanced piece of software; Software is nothing more than data structures + algorithms, operating systems also need to store a lot of data, that is, files.
3. What can an operating system do? The operating system has four main functions: CPU management Memory management file management (external memory management) Device management (mainly I/O devices)
4. How did operating systems get so big?
1. No OPERATING system era
It wasn’t that long, it was just the beginning of the subroutines, around the 1940s, and then the very simple monitoring system, which was recognized as the beginning of the operating system.
2. Single-channel batch processing system as the name implies, there is only one job in memory; Here’s a sidebar: CPU can only access memory, and CPU is much faster than memory! This is the most direct consequence, the memory kept loading a program (here is not accurate, in fact, is the operating system, just to make a comparison), a moment idle, and the CPU processing speed is fast, each time is the speed of light processing program, most of the time is idle.
The characteristics of single channel batch processing system are: single channel, automatic and sequential.
This system looks like crap today, but the single-channel batch system was a huge improvement over the days of nothing and no operating system.
You don’t have to enter programs manually anymore because the operating system loads them automatically, and you don’t have to wait a long time for the results because the operating system processes them automatically.
However, the disadvantage is also obvious, that is, the CPU is too idle to give full play to its potential!
3. Multi-channel batch system
As the name implies, multiple jobs reside in memory at the same time, so who executes first and who executes later? You can’t expect these programs to be very gentlemanly, to have a give-and-take, not existing, which requires the operating system to schedule
The job scheduler of the operating system selects several jobs from the backup job queue into memory according to certain policies, so that they share the CPU and various resources in the computer.
In general, multichannel batch processing system is characterized by multichannel, complexity, disorder and scheduling
Advantages: This is an improvement over a single-channel batch system, not only improving CPU utilization, but also memory utilization, and I/O device utilization, while the amount of work the system processes is greatly increased, which is called throughput
Disadvantages: there are advantages will certainly have disadvantages, homework more than before, quick cost is complex, trouble! Compared with single channel group, the system average turnaround time increased significantly, at the same time, the human-computer interaction also can’t do that, that is to say that when a computer is like a weaned child, still relies heavily on computer scientists and cannot be used for the general public, today’s operating system can let a person without any computer knowledge background quick-and-dirty do well because the human-computer interaction.
4. Time-sharing operating system
Multiple users are allowed to use the computer at the same time through the terminal, and each user can get a quick response when interacting with the host through the terminal, which is the time-sharing operating system. It’s the same system we use today.
Computers are divided into client and server, this system is to let everyone share server resources
Features: multiplex, independent, timely, interactive
Advantages: Easy interactivity, so that multiple users can share the host through different terminals
Cons: Sometimes not very responsive
5. Real-time systems
Timely response to external event requests, complete the event processing within the specified time, mainly used in real-time control and real-time information processing and other fields.
Mainly used in artificial intelligence, relatively high
Features: multiplex, independence, timeliness, interactivity, reliability
5. What are the characteristics of modern operating systems?
Let’s start with the obvious: multitasking;
Going from single-channel batch to multi-channel batch was a great step forward. Not only did CPU utilization improve, but applications began to share memory resources.
In order to make better use of memory and external storage resources, also developed memory and external storage scheduling;
A lot of them use virtual technology;
Also used and created concurrency;
Process scheduling is also a problem, and involves asynchrony.
To sum up, modern operating systems have four characteristics: 1. Concurrency 2. Sharing 3. Virtuality 4. Asynchronism
Concurrency. Two or more events occurring at the same time interval. (Supplementary: parallelism: multiple events occurring at the same time), note that concurrency emphasizes time periods
Participatory. The resources in the system can be used by multiple concurrent processes in memory. The sharing is divided into mutually exclusive sharing and simultaneous sharing. The former can only be accessed by a process at the same time, while the latter is essentially the same, but from a macro perspective, multiple processes are executing at the same time, and any shared resources are mutually exclusive!
It follows that the relationship between sharing and concurrency is interdependent
Virtual sex. Most commonly used for memory virtualization, it is essentially the physical into logical, physical is real, logical is perceived by the user, virtualization technology makes the user feel memory is larger than the actual memory. The secret is that the operating system will load the CPU processes into memory in advance, and not load the processes that are not needed for the time being. In this way, memory seems to be expanded, but in fact, memory is so large that it does not change at all. The operating system is sometimes a cheat.
Asynchrony. The process moves forward with unpredictable speed. This means that the start time, end time and run time cannot be known in advance, which requires the operating system to be able to improvise.