BEST SITE FOR WEB DEVELOPERS
Java programming language. Lessons for beginners from hyperskill

Ua

Introduction to Operating Systems


Theory

How is it possible that there are thousands of computers which differ from one another, and yet they are able to run the same programs? Have you ever thought about how programs interact with the hardware? The answer is: we have operating systems.


§1. Operating system

An operating system (OS) is a set of software that manages the communication between all other applications and hardware. It turns a computer into something more than just several metal parts, namely, a complex system that can perform different tasks effectively.

There are many operating systems. For personal computers, the most popular ones are Microsoft Windows, macOS, and Linux distributions. The two top mobile operating systems are Android and iOS. Even smart kettles and fridges have their own OS!

Of course, operating systems for such a range of devices are extremely diverse. What they have in common are the means they provide to the programs and to those who use them.

On the one hand, it's only an illusion that your favorite browser is the same on Windows as it is on macOS. On the other hand, you can run the same application on different computers with the same OS.


§2. OS functions

An operating system controls the communication between the computer software and hardware. An OS can give programs restricted access to processor units, memory, hard drives, network, peripherals, and other resources.

You can run a browser, a media player, and ten other applications, and your OS is the one that allocates all the resources the applications need to run properly. At the same time, an OS acts as a fair referee and doesn't allow any application to use more resources than it actually needs.

As a mediator between the applications and hardware, an OS allows us to communicate with the device without going into details about its specifics or mechanics.

OS Functions

Any operating system has several essential functions. Here is a list of some of them:

  • Data protection and secure access;
  • Resource management;
  • Interaction between hardware and peripherals;
  • File management;
  • Running other programs.

It is possible to distinguish more functions of modern operating systems, but those listed above are enough for starters.


§3. OS components

The kernel is the mandatory and core part of all operating systems. Usually, it's one of the first programs that loads when you turn on your computer. It provides all the necessary means to run the programs you want.

When you start an OS, you often see the Graphical User Interface (GUI). It is the interface that allows users to interact with the device using graphical icons and audio indicators. Another way to interact with the OS is to use commands in a text-based terminal known as the Command-Line Interface (CLI).

Terminal

There are two types of kernels: monolithic and microkernels. A monolithic kernel is a large program that performs most of the OS functions. At the same time, a microkernel performs only a small subset of the operating system functions, but we can extend it with additional modules known as drivers.

There are other important parts of the operating system besides the kernel and the graphical user interface. For now, use the following image to brush up on everything we've covered so far:

OS Components

§4. Conclusion

An operating system efficiently distributes the resources of the computer in the way we've described above. It is critical to understand that without an operating system, it would not be possible to use the computer.

Now you know about the main functions of operating systems and their essential elements. Let's test what you've learned so far!


You can also view Lesson on hyperskill.org.


Practical tasks and answers

Tasks and answer options are given. The correct option is highlighted in blue color.

№1. Kernels

Question: Find the correct definitions.

Match the items from left and right columns:

  • Monolithic kernel - is a program that performs most of the OS functions;
  • Microkernel - performs a smaller subset of the OS functions, can be extended with additional modules - drivers;
  • Kernel - is a mandatory part of any OS, it's core.

№2. GUI

Question: What does GUI stand for?

Select one option from the list:

  • Graphical User Interface ✔
  • General User Interface
  • Get Updated Information
  • Graphical User Instruction

№3. Terms

Question: Match the terms with their definitions:

Match the items from left and right columns:

  • OS - Manages computer hardware, software resources, and provides common services for computer programs;
  • Kernel - The main part of any operating system providing programs with coordinated access to computer resources;
  • CLI - Text-based interface in which a person interacts with a computer with commands;
  • GUI - User interface that allows users to interact with the device using graphical icons.

№4. Main function

Question: What is the main function of an OS?

Select one option from the list:

  • It secures access to the user data with logins and passwords
  • It performs all the arithmetic and logic operations
  • It controls the communication between all the computer software and hardware ✔
  • It supplies power to all components of a computer

№5. Match concepts

Question: Try to guess and find correct matches between the concepts on the left with what corresponds to the concepts on the right based on the theory.

Match the items from left and right columns:

  • User space - Application and Libraries;
  • Hardware - Processor, Memory and Device management;
  • Operating System - Processor, Memory, Devices;

№6. OS

Question: Select all operating systems:

Select one or more options from the list

  • iOS ✔
  • macOS ✔
  • Android ✔
  • GUI
  • Microsoft Windows ✔
  • Kernel
  • CLI

№7. CLI

Question: What does CLI stand for?

Select one option from the list

  • Command Language Interpreter
  • Command-Line Interpreter
  • Common Linux Interface
  • Command-Line Interface ✔
  • Call-Level Interface

№8. Riddle from Sphinx

Question: Now, based on the theory try to answer a riddle from the famous Sphinx:

"A thing there is whose types are two:
Large one of them and many things can do,
Small second one and do a few,
Important both are from any point of view.
When you turn your computer on
It loads early, one of the first".

Select one option from the list:

  • kernel ✔
  • operating system
  • BIOS
  • driver

Explanation: Kernel is the main part of any operating system, which provides programs with coordinated access to computer resources. It performs a smaller subset of the functions of the operating system and can be extended by additional modules - drivers.


№9. Interaction

Question: What are the interfaces that allow users to interact with the device?

Select one or more options from the list:

  • User Space Interface
  • Graphical User Interface ✔
  • Command Line Interface ✔
  • OS Process Management

№10. OS features

Question: Select the features that relate directly to the operating system:

Select one or more options from the list:

  • File management ✔
  • Playing audio and video files
  • Communication between hardware and peripherals ✔
  • Resource management ✔
  • Retrieving and displaying the content of the websites
  • Data protection and secure access ✔