In the Android Market appeared tab "Similar"

# facts | The five most important invisible tasks of the operating system

Задачи ОС

Without an operating system, your interaction with the computer would be less enjoyable. Games and pleasant communication on the Internet would give way to finding answers to complex technical issues constantly arising from computer hardware. Millions of questions that make up the top five most important tasks solved by the operating system in the deepest secrets of their user. This applies even to those operating systems that are considered too complex for ordinary users.

Operating systems are different. But there is something subtle between them. Many of us roughly understand what is at stake. But it is time to express in words those thoughts that sometimes come to mind. All of them provide computer management. But this is not the only thing that makes them all related to each other. The operating system performs some set of tasks independently and does not even inform the user of this, except when it is impossible to do without human intervention. Today we will talk about exactly what the operating system is doing imperceptibly for each of you.

The operating system (OS) is very important for a modern computer. Creators of operating systems see the future of their developments in different ways. For example, the famous and beloved by millions of users of OS X (formerly called Mac OS X) only works on the computers of the Apple company that created it. Most other operating systems are compatible with a wide variety of computers.

Many people become loyal supporters of one or another operating system. Others use a variety of operating systems. And the third and all the same, what system helps them control the computer. The main thing is to work. Apple OS X and Microsoft Windows are considered favorites of the market. The various Linux distributions are less well known, which does not prevent their users from praising the advantages of this or that assembly. This is a computer OS. If we talk about mobile devices, then for them today there are several popular operating systems: Apple iOS, Google Android and Microsoft Windows Phone.

You can consider one of them far superior to all others, or you can agree that each of them has its own advantages. Regardless of this, all operating systems somehow cope with their tasks, including those that they do not tell the user.

Experienced IT professionals will not find anything new in this article. It is intended for those curious users who would like to learn more about how their digital assistants work.

In order not to make clarifications each time, we will immediately clarify. In this article, we will often refer to as "computer" all kinds of digital devices. Both smartphones and tablets are in essence computers and work on the same principle, and their component base is basically the same as in any large system unit. And desktop computers, laptops, tablet devices, and even miniature smartphones are running operating systems. And today, we are interested in precisely this general quality of theirs, and not what marketers have called them.

Programs we will basically call programs. The fact that now they are often referred to as "applications" is precisely because the program does not work by itself, but on the platform of a specific operating system, which deals with the coordination of the interaction of software and hardware resources. If it were not for the operating system, there would be no applications. The program would have to be adapted for each model of a digital device.

1. Provides hardware-software "clutch"

Задачи ОС

The operating system serves as a kind of “translator” between the hardware of the computer and its software. If you open the computer case, you can see the various boards, chips, cables and other components. This is the physical base that makes program execution possible. But the program can not just take and use the hardware resources of the computer. She does this through the operating system.

Recently, operating systems have become increasingly called "platforms". And this name very accurately reflects the essence. The OS is the platform on which the programs are located. Or, as it is now, they say, applications ... to the operating system. It is the operating system that allows the software to "communicate" with the hardware. This also applies to input and output devices. The simplest example of an input device is the keyboard, and the output is the monitor.


This is a very important job. In theory, hundreds of different input and output devices can be connected to a single computer. Take an ordinary mouse. But the "mouse" concept is common. There are dozens of different models of this manipulator. It would be an impossible task to provide separate software support for each type of mouse so that it “communicates” directly with computer resources. But the output is the driver database contained in the operating system. For the user, it looks as if he simply connected any mouse to his computer and she immediately took it and earned it.

2. Causes the same application to work on different "hardware"

It is the operating system that allows the software to work on different computers, and not just on one particular configuration. Once programs were written for a specific computer model. The programming language actually acted as the operating system of the predecessors of modern PCs, microcomputers of the late seventies of the last century.

But nowadays, the OS has assumed the role of a kind of “adapter” between programs and computer “hardware”. If you take any two models of computers, the sets of components from which they are assembled will differ. This applies even to the Macintosh, which are well known for their similarity to each other, not to mention all the huge diversity that can be found on the modern PC market.

The operating environment creates a so-called abstract environment for the program. This can be represented as a dialogue between the OS and the program. In the course of this incomprehensible “conversation”, the program “tells” the platform about its needs, while the operating system already has to “think” about how to rationally satisfy them. Not impressive? But the fact is that you need to think very quickly. A modern gamer is not ready to wait an hour or two while his favorite game loads.

So, the program “informs” the operating system what exactly it needs in order to work correctly. After all, with the resources of the computer application is directly unfamiliar. And the OS, in turn, distributes the tasks assigned to it by the program among the resources of the digital device. And the type of hardware does not matter to the program. The platform will take care of everything! The operating system is able to "speak", if not with all, then with very many devices and hardware modules.

If it were not for this valuable operating system skill, programmers would have to rewrite their programs for each specific computer configuration, for each set of components. And, if it were not for the operating system, the program could not work at all on a computer, the characteristics of which differ from those provided by the programmer when creating the program.

Today, developers are building their applications for platforms and not for some previously known hardware configuration. Simply put, not for a specific computer, but for a specific operating system. So, of course, much easier. Running the same OS can run millions of devices. Therefore, tens and even hundreds of thousands of applications available to the modern user of each of the popular platforms have become possible.

3. Search for the file required by the application

The physical resources of a computer alone would not be enough for programs to cope with their tasks correctly. All information is stored in files and these files should be subject to certain rules. These rules concern how to name and store files. We call this general rule set a “file management system” or simply a “file manager”.

Different operating systems implement different file management approaches. In addition, the user can install additional software that allows him to more efficiently manage files. It is the operating system that "remembers" the files that are stored on the computer. When an application wants to access a particular file, the OS will show you the way for the program.

Without a file management system, digital information on a computer is simply a meaningless set of data. Chaos, in which nothing can be found. And even more to find the shortest fraction of a second. Imagine a huge hall where a variety of things are dumped in complete disarray. Theoretically, you can take any of them. But in practice, you simply will not find the item you need. If we also take into account that it is needed at a certain point in time, more precisely at its particular moment, it becomes clear: this method of storage is not suitable for things or data.

The operating system invisible to you follows its own rules, so you don’t have to manually access the memory locations where the file you need is physically stored. But, most importantly, the user of a modern operating system does not need to know these rules in order to work at a computer.

4. Efficient allocation of available RAM

If we are talking about memory, it makes sense to recall the memory of the operational (RAM, RAM). On the very storage, which is always "at hand" from the processor.

It is necessary to emphasize that the operating system also manages this most important computer resource. RAM is a resource greatly undervalued by many users. How to make your computer work faster? Many believe that they urgently need a more powerful processor. But in practice, it is often enough to simply increase the amount of RAM in order to feel a significant increase in computer performance.

In RAM, the computer places the information that may be required by the computational processor. Consider this type of memory simply as a temporary storage of the information that should be “closer to the processor”.

When you work with a computer, you sometimes run several programs at the same time. The operating system allocates each task a certain amount of memory. If the processor needs such information that it does not find in the RAM, it will have to look for it in other places. In particular, on the hard disk of the computer. This will take longer than extracting data from RAM. For the user, this situation will look like a temporary “freeze” of the application. In such cases, it is customary to say that "the computer thinks."

One of the tasks that the operating system assumes invisibly for the user is to minimize the time of delays, that is, the very unpleasant time during which the computer is busy with its own affairs and does not respond to your calls to it. The problem is that at any given time the operating system has a certain amount of RAM, which is always limited. This volume depends, among other things, on how many programs you simultaneously launched. The operating system must every moment "know" how much RAM it has left in reserve in order to allocate it in time to the process that needs this important resource.

The operating system “evaluates” the requirements of each process that is running and decides how to reasonably satisfy them. Ideally, this should be done so that the user doesn’t feel any delays at all. But in practice, the OS tries to simply reduce such delays to a minimum, rationally distributing those resources that it actually has.

On Earth, there are no computers with unlimited RAM. Therefore, the system always has to choose which process to consider at the moment a priority, and which one is secondary. To whom urgently allocate memory, and who will manage so will tolerate for the time being. The user may not always agree with those rules that guide the operating system when allocating memory. But it would be much more difficult and longer to allocate free RAM to processes independently than to entrust it to a software platform.

5. Emphasizes the processor’s attention to a particular task.

The central processing unit (CPU) is the physical module that solves the tasks that the user sets for his computer. Another thing is that a rare user speaks the language that the processor understands. What is there, not even every programmer is intimately familiar with the machine code. A person may not even think about the fact that any program is a complex set of mathematical problems.

The central processor performs the calculations, that is, it finds a solution to these problems, and it gives you ready-made results that do not even closely resemble formulas from an algebra textbook. For a normal user, all this math is simply uninteresting. He wants his game character in a split second to jump over an obstacle or wants to check the spelling of just written text. Behind these seemingly far from boring numbers problems is the most complicated mathematics.

Each running program requires some processor power. The more programs you run at the same time, the closer the CPU load to the maximum. The task of the operating system is to coordinate the delivery of information to the processor in processing so that everything runs smoothly and seamlessly for the user. The OS can switch the attention of the processor from one task to another. In the same way as you switch between windows and thereby “activate” one of the running applications.

One of the important roles of the operating system is the role of the resource manager. If it copes well with this task, then you do not even know at what point the processor set aside one task and turned its attention to another.

Invisible and indispensable assistant

Задачи ОС

The hardest of all tasks of the operating system is that you do not pay attention to it and focus on applications that interest you. And while everything is going well, the user does not think at all about the platform. And only when software fails begin, the user realizes how important the mission of the operating system is.

Those "differences" between operating systems that are visible to most users are purely cosmetic. A rare user understands programming to the extent that beyond the shell of the graphical interface to see what actually distinguishes one operating system from another. Neither the appearance of the desktop nor the design of application icons has anything to do with the internal essence of the operating system.

The tasks described above are carried out in one way or another by every modern operating system that controls any computer device. Regardless of what the operating system looks like and on which device it is installed: on a PC, mobile device or game console.

Operating systems are constantly criticized by users. But the creation of a platform capable of controlling such a powerful device, which is a modern smartphone or computer, is truly gigantic work. The platform is difficult to create, but it is even more difficult to make the user like it, who is used to choosing only between the beautiful and the wonderful. Long gone are the days when any computer seemed like a miracle. Even the one that the user himself collected and set up for a whole week.

Nowadays, it is not enough to create a workable operating system that coordinates the work of many components and devices. It is also necessary to endow it with an attractive user interface. But even this is not enough! Constant innovation is needed, not a repetition of what has already been done by someone before. Do not repeat is becoming harder and harder.

After all, humanity has done a truly gigantic way in the development of operating systems. And on this path many problems were solved. In addition to one single task, which has no solution: to keep the favorable attention of the user. The fact is that things that caused stormy enthusiasm yesterday are today considered obsolete, and tomorrow they will be of interest only to historians.

Based on computer.howstuffworks.com

The article is based on materials https://hi-news.ru/software/fakty-pyat-vazhnejshix-nevidimyx-zadach-operacionnoj-sistemy.html.

Comments