Phamox Tech

The world of Technologies

Operating System

13 min read
Operating System

Operating System

The operating system, also known as OS, is one of the basic elements that make a computer system a functional gadget that can perform different tasks. 

Modern computer systems comprise different pieces of hardware that users interact with to get their jobs done. 

For instance, we use the keyboard to feed the computer with input data. Likewise, we use the mouse to click and select options about what we want the system to do for us. 

Additionally, we have other hardware components inside the system that work together with the ones we have outside.

For example, the memory (read-access memory, RAM) and the processor (CPU) are functional hardware inside any computer system. 

Furthermore, there are different applications available for users to perform different tasks using the computer system. 

For instance, Microsoft Word is desktop publishing software, as is Adobe InDesign. 

We also have media software like VLC that we can use to watch videos and play music on a computer system. 

These are applications we install for our specific needs on the system. 

All this application software does what it was designed to do and is limited in its capabilities without access to the system hardware. 

However, the operating system is designed to allocate hardware resources to these application programs and manage their processes. It also gives users the privilege to interact seamlessly with the computer system.

In this article, we will discuss what an operating system is and discuss several key aspects of its functionalities.

What is an Operating System?

An operating system can be defined as a special software layer that manages all the computer’s hardware resources.

The operating system provides interaction between the computer system user and computer hardware like disks, memory, and a keyboard.

Operating systems make it possible for computer users to run application programs on the computer system.

For instance, the applications written by the programmer interface with the operating system to write data on the disk.

Also, it made it possible for computer system users to provide the application program running on a system with data through the keyboard.

In addition, the operating system creates a platform for the system applications to display information on the monitor.

The operating system prevents programmers from writing extra code for their applications to communicate with the system hardware.

This can go a long way toward indicating that programmers may need to write different codes to support every piece of hardware out there.

Because they need to ensure that their applications perform their defined functions on every hardware configuration available.

However, since operating systems can take care of every hardware configuration complexity, application development evolves into a much more straightforward task.

There are different operating systems available today, and some of the most common are Windows, iOS, Linux, and Unix.

History of Operating Systems

The computer operating system has a very long history, starting from the vacuum tube period to the era of modern computing.

The history of operating systems is a long and fascinating one. It is filled with innovation and technological breakthroughs.

It dates to the early 1950s when computers were large and expensive. Computers during that period were mainly used by government agencies and large corporations.

These early computers had limited capabilities, and programming them was a complex and time-consuming task.

First Operating System

The first operating system, known as GM-NAA I/O, was developed by General Motors in 1956 for its IBM 704 computer.

This operating system allowed the computer to manage input and output operations, freeing up the programmers to focus on the application logic.

The Late 1950s and Early 1960s

In the late 1950s and early 1960s, a number of other operating systems were developed, including the IBM OS/360, which was one of the first operating systems to support multiple programming languages and a range of hardware configurations.

OS development in the 1970s

In the 1970s, the development of microprocessors and the introduction of personal computers revolutionized the computer industry.

The early personal computers, such as the Apple II and the Commodore PET, had simple operating systems that were limited in functionality.

The development of Unix in the 1970s was a breakthrough in operating system technology. Unix was designed to be a portable, multi-user, multi-tasking system that could run on a variety of hardware platforms.

Unix introduced many of the concepts that are still used in modern operating systems, including the file system, the shell, and the use of device drivers.

OS Development in The 1980s

In the 1980s, the introduction of graphical user interfaces (GUIs) revolutionized the way people interacted with computers.

The Macintosh operating system, developed by Apple, was one of the first GUI-based operating systems, and it was quickly followed by Microsoft Windows.

OS development in the 1990s and 2000s

Throughout the 1990s and 2000s, operating systems continued to evolve, becoming more complex and powerful.

The introduction of networked computing and the Internet led to the development of client-server operating systems such as Windows NT and Linux.

Today, the dominant operating systems are Microsoft Windows, Apple MacOS, and various distributions of Linux.

These operating systems are designed to be user-friendly and powerful, with a range of features that make them suitable for everything from personal computing to large-scale enterprise applications.

Components of Operating Systems

Components of operating systems are the pieces that allow different parts of a computer system to work together.

When computer users are using application software on the computer system, they go through the operating system to use the system hardware.

The hardware can be a keyboard or mouse to input data or communicate with the software. Also, the hardware can be the Network Interface Card (NIC) to access the internet.

The components of the operating system work according to the software, and users demand that the required hardware be accessible.

In reality, the different operating systems we have on the market today are not the same in terms of structure. However, all of them have identical components like process management, I/O device management, memory management, and so on.

These operating system components help users get the correct computing experience by detecting CPU and memory hardware errors.

In a nutshell, the components of operating systems contribute immensely to the proper functioning of the computer system. Basically, they work together to make sure different parts of a computer system work together.

Some basic components of the operating system are listed below.

  • File Management
  • I/O Device Management
  • Main Memory Management
  • Process Management
  • Secondary Storage Management
  • Command Interpreter System
  • Network Management
  • Protection and security management

How Operating Systems Work

Obviously, the operating system performs several different tasks on the system. This is done by communicating with different hardware attached to the computer system.

For the operating system to properly interact with the computer hardware, it must have a proper device driver. The operating system uses the appropriate device drivers for all hardware on the system to interact with them.

Basically, a device driver is a program that informs the operating system how to interact with and use a specific hardware device.

Also, the operating system provides every user with an interface they can use to interact with the computer system.

The interface is a system program from the operating system that accepts input from users for the system to know what it has to do.

Then the interface passes the input across to the operating system to allocate resources that will work on it.

After the instructions from the input have been completely processed, the interface returns the result in the form of an output to the user.

Typically, the user interface can either be a graphical user interface (known as a GUI) or a command-line prompt.

Specifically, the graphical user interface consists of icons (also known as symbols), menus, and dialog boxes.

Users interact with these graphical components with the aid of a mouse and keyboard to use the computer system.

On the other hand, a command-line interface or prompt allows users to type in commands to perform different tasks on the system.

What Is the Main Function of Operating System?

The purpose of the operating system is to allow the application program to access every piece of hardware attached to the system.

Basically, it was designed to manage computer system processes, allocate memory, and coordinate the operations of all hardware and other software on the system.

An operating system is the essential software on all computer systems. This bunch of software performs different functions in order to allow computer hardware and other software on the system to interact effectively.

The functions of most of the operating systems are, but are not limited to:

  • Program Execution 
  • Handling the system memory allocation
  • Input and Output Operations Support
  • Controlling the file systems
  • Error Detection
  • Resource Allocation
  • Information and resource protection
  • Providing user interfaces
  • Providing user access and authentication

Program Execution

The management of program execution is handled by the operating system. This includes loading the program into memory and executing it.

The sequence of program execution is determined by CPU scheduling algorithms like FCFS or SJF.

Additionally, the operating system ensures that no deadlock occurs while executing a program. As a result, it prevents two processes from running at the same time.

The Operating system is also responsible for the seamless execution of both user and system programs.

So, it utilizes all available resources efficiently. It does this to manage a variety of functionalities to ensure optimal performance.

Handling the System Memory Allocation

In a computer system, memory space is allocated to different application programs running on the system. The operating system takes care of the memory utilization of programs running on a computer system.

Basically, it coordinates the use of memory space between different application programs running on the system. It decides how requests for memory space are managed.

Specifically, it performs memory management by assigning memory space to the programs that need it. Also, it reclaims the memory space from programs that do not need it or are not running anymore.

In a nutshell, the operating system handles the transfer of programs into and out of memory.

Controlling the File Systems

The operating system is responsible for file management on computer systems. This is one of the functions of the operating system, and it requires it to manage all tasks related to using files.

For instance, it helps the system organize files, name files, and share files across the system. Also, the operating system coordinates the retrieval of files as well as file protection on the system.

Fundamentally, it controls file ownership and determines who can access the files and directories on the system.

Moreover, the operating system controls how all types of data or files are handled and stored on the storage.

Input and Output (I/O) Operations Support

When a computer system is executing a program, proper input and output operations are needed. However, users cannot control the interaction of the input and output devices with the programs running on the system.

In order to maintain the protection and efficiency of the program execution and ensure appropriate I/O operations, the operating system is designed to handle the I/O operations.

As a result, the operating system oversees I/O from various I/O devices like the hard drive, keyboard, and monitor.

It permits read and write operations on any file the running program is using through the I/O devices. In addition, it grants access to any I/O device that the system requires to perform its operations.

For instance, as we are using a system and running an application on it, we are storing and accessing information on its hard drives. Also, we can transfer information from the system to a USB for external usage.

The operating system handles the data transfer between the system and the storage device.

Moreover, we have a keyboard and mouse that we are using to input information into the system. The operating system ensures this operation is carried out in the most appropriate manner.

Generally, the operating system performs the interaction between all of this I/O hardware and software for them to properly work together.

In other words, it does all interfacing in the best way it should be done for all I/O operations to be successful.

Providing User Interfaces

The users need to interact with the system to perform an operation. As a result, the operating system is designed to provide users with ways to operate the system.

This is known as the “user interface,” which users use to interact with the computer system. The two major interfaces an operating system provides are the command-line interface (CLI) and the graphical user interface (GUI).

Therefore, to operate and interact with the system, a user can use either a command-line interface or a graphical user interface.

The command-line interface allows users to type text (using the keyboard) in the form of commands to interact with the system. It is possible to access the system CLI locally through a terminal or remotely via a terminal emulator (or shell client).

Remote access to the system is made possible with protocols like Telnet and SSH.

Users can only access the first generation of Linux systems through the command-line interpreter known as the shell. Notwithstanding, graphical user interfaces for desktops are available today.

As for the graphical user interface (GUI), the operating system allows the user to interact with and operate the system using icons and a mouse or keyboard.

Currently, users can also interact with the system using the web interface or console.

Basically, a graphical user interface consists of interactive visual items like icons, widgets, texts, a menu bar, and a navigator. Users can easily understand what each of these visual objects means. Because they give the user some basic information about what they need to do.

Types of Operating Systems

There are several types of operating systems that serve different purposes and cater to specific computing environments.

Here are some common types of operating systems:

  • Single-User, Single-Tasking OS
  • Single-User, Multi-Tasking OS
  • Multi-User Operating Systems
  • Network Operating Systems
  • Distributed Operating Systems
  • Mobile Operating Systems
  • Embedded Operating Systems

These are just a few examples, and there are other specialized operating systems used in specific domains, such as mainframe operating systems and supercomputer operating systems.

Each type of operating system is designed to meet specific requirements and optimize performance for the intended computing environment.

Single-User, Single-Tasking OS

This type of operating system allows only one user to execute one task at a time. Examples include older versions of MS-DOS (Microsoft Disk Operating System) and early versions of Apple’s Macintosh System.

Single-User, Multi-Tasking OS

These operating systems allow a single user to perform multiple tasks simultaneously. They manage the execution of multiple processes, dividing the CPU time among them. Examples include Microsoft Windows, macOS, and Linux distributions like Ubuntu.

Multi-User Operating Systems

Multi-User OS supports multiple users simultaneously. Each user can have their own login credentials and run applications independently. Examples include UNIX-based systems (e.g., Linux, BSD) and server editions of Windows.

Real-Time Operating Systems

These operating systems are designed for systems that require immediate and predictable responses to external events. They prioritize tasks based on their time sensitivity, ensuring critical tasks are executed within strict time constraints. Real-time operating systems are commonly used in industrial control systems, robotics, and embedded systems.

Network Operating Systems

These are specifically designed for managing and coordinating multiple computers and devices within a network. They provide features like file sharing, printer sharing, and centralized user management. Examples include Windows Server, Linux-based network operating systems, and Novell NetWare.

Distributed Operating Systems

They are designed to run on multiple interconnected computers, working together as a single system. They provide transparent access to resources distributed across the network, allowing users to utilize the collective power and storage capacity of multiple machines. Examples include Amoeba, Plan 9, and Distributed V.

Mobile Operating Systems

They are designed for smartphones, tablets, and other mobile devices. They prioritize power efficiency, touch-based interfaces, and support for mobile apps. Examples include Android, iOS (iPhone/iPad), and Windows 10 Mobile.

Embedded Operating Systems

They are tailored for embedded systems, which are specialized computer systems integrated into other devices or machines. They are typically lightweight, resource-efficient, and designed to perform specific functions. Examples include VxWorks, Embedded Linux, and FreeRTOS.

Final Thought

An operating system serves as a crucial intermediary between computer hardware and the user, controlling the execution of application programs.

It can be defined as the program that runs continuously on a computer, known as the kernel, while all other programs are considered application programs.

The primary function of an operating system revolves around resource allocation and the provision of various services.

These resources include memory, processors, devices, and information. To effectively manage these resources, the operating system encompasses a range of programs, including a traffic controller, scheduler, memory management module, I/O programs, and a file system.

These components work together to ensure efficient utilization of resources and smooth operation of the computer system.

In essence, the operating system plays a critical role in governing the interaction between users and computer hardware.

It establishes a layer of abstraction that shields users from the complexities of the underlying hardware, providing a user-friendly interface through which applications can be executed.

Additionally, the operating system undertakes the responsibility of optimizing resource usage, coordinating tasks, and maintaining system stability.

By managing resources, scheduling processes, handling memory operations, facilitating input and output activities, and organizing file storage, the operating system enables efficient and reliable computing.

It is an essential component of any computer system, offering the necessary infrastructure and support for the execution of diverse applications and ensuring a seamless user experience.


We trust that you found the information on “Operating System” educative and informative. Please do not hesitate to share it with anyone who might also benefit from this article.

Share

Leave a Reply

Verified by MonsterInsights