Operating System
An operating system is a group of programs that controls the hardware resources of a computer and offers shared services to applications. The most significant kind of system software in a computer system is the operating system.
An operating system serves as an interface between software and various computer components or hardware. The operating system is built to be able to oversee all of the computer's functions and resources. All other programs that are installed on the computer, including application programs and other system software, are managed and observed by it. Windows, Linux, Mac OS, and other systems are examples of operating systems.
Main Functions of an Operating System
Operating systems perform a variety of Functions :
- Providing an interface
- Overseeing procedures
- Controlling the memory of the computer
- Controlling the input and output devices
- Coordinating security
- Controlling applications
1. Providing an Interface
An application, or group of applications, that enables user-computer interaction is known as a user interface. Three different interface types need to be taken into account:
- GUI
- MUI
- CLI
i) GUI
Most people who use PCs and laptops have become using a graphical user interface. With a graphical user interface, everything is shown on a desktop. Windows is used to run applications, and all files, hardware, and objects are represented by icons. Menus are used to access the functionality of the application. A mouse and on-screen pointer are used by users to interact with the interface.
ii) MUI
MUI stands for Mobile user interface. With the exception of how they react to touch, mobile UIs are very similar to GUIs. Programs are opened and interacted with using the fingers. Within documents, gestures like swiping are employed for scrolling. Resizing photos involves the use of pinching and stretching.
iii) CLI
CLI stands for Command line interface. Text-based command line interfaces are used. Commands are entered by users to operate the computer. CLIs are quite strong and demand very little computing resources, yet they are challenging to use. The majority of interfaces were initially CLIs, and these days you can still find them in most modern operating systems. Take the command prompt application in Windows and the Terminal in OS X.
2. Overseeing procedures
Being able to execute many programs at once is known as multitasking. These programs carry out procedures. Because the operating systems of the period could only run one program at a time, machines with CLIs were unable to multitask.
Contemporary operating systems facilitate multitasking by enabling multiple programs to operate concurrently. It is not unusual for a user to be streaming a video while backing up files, or listening to music while typing text in a word processor.
3. Controlling the memory of the computer
Paging is one technique for memory management. Pages are the units of fixed size that makeup memory. Every operating system gives pages a different size. For example: memory pages in contemporary operating systems usually have a size of 4 KB.
A program is loaded into memory when it is executed. The operating system calculates the memory requirements of the program and allows the necessary number of pages to accommodate the program and its documents. The allotted pages become available for use by other programs when the program is closed. It makes no difference if the software takes up a block of pages or not. Every page has a specific amount of space that the operating system recognizes and retrieves as necessary.
4. Controlling the input and output devices
Peripherals, another name for input and output devices, are physical components that are attached to a computer and include things like a keyboard, printer, screen, and camera.
An application known as a device driver is used by the operating system to control a peripheral. Device drivers are software that provides control instructions for a device. Every device that is connected has its own driver.
5. Coordinating security
Security is also managed by operating systems. They permit:
- The ability to create and remove individual users
- User access tiers, like administrator or regular user rights, to be granted
- Maintaining a record of the files a user produces, reads, modifies, and removes
6. Controlling applications
Hardware and application applications can interact via an operating system-provided interface. The application programming interface is the term for this. The applications manager sets memory limits and calculates how long a processor will require to run an application.