Monday, 25 July 2016

Why an Operating System is Needed

The operating system (OS) is the software layer that enables and facilitates interaction between the computer user and the computer hardware. It thus conceals the machine view from the user. The basic functionalities of an operating system ensures that it is capable of handling all the essential hardware operations on behalf of the computer user.
Nonetheless, there is specificity in relation to operating systems. Each operating system is created to operate on specific computer hardware architecture. This specificity is brought about by the different types of computer architectures with each architecture built to serve specific purposes and tasks, and thus the corresponding operating system must also be purpose built to serve the same purposes and tasks. This is also indicative of the co-dependence between the operating system and the computer architecture.
Photo Credit:
Hardware changes and evolution of computer architectures have caused corresponding evolution in operating systems. Nonetheless, it is acknowledged that the hardware architecture and its corresponding operating system do co-evolve so as to ensure that both units are compatible with each other. During the 1970s and 1980s, the central processing unit (CPU) was quite expensive and thus the operating systems were purpose-built to ensure efficient utilization of CPU resources. However, present-day technology has led to the manufacture of computer architectures that feature multiple sturdy and fast CPUs, and when coupled with the relatively low prices of hardware architectures, then computer systems have become ubiquitous in modern life. For this reason, present-day operating systems do prioritize user-friendliness as well as convenience for multi-tasking.
Functions of an Operating System
1.      Provide a user-friendly environment that serves as the interface between the computer user and the hardware architecture and peripherals. This serves to facilitate interaction between the user and the computer hardware.Efficient management of computer resources. This is quite critical during instances of multitasking when the operating system serves to allocate each task a specified amount of CPU time, as well as supporting parallel computation.
2.      Supports the application layer of the computer system. The application layer can be described as the collection of programs that the user uses to perform tasks on the computer, for example, the office suite, multimedia players, browsers, compilers and software development kits (SDKs).The application layer must be compatible with the installed operating system, and this explains – for example - why a 64-bit version of word processor cannot work in a computer system whose operating system is 32-bit.
3.      Provides a resource manager which supports management of resources for all running (application layer) programs as well as background programs (some of which are operating system programs). Resource management supports effective utilization of the limited memory of the computer system. Prioritization and appropriate allocation of resources to high priority programs ensures that high-priority tasks are completed faster than low-priority tasks.
4.      Provides a framework and synchronization mechanism that ensures that the processes communicate or cooperate with each other. This supports the multi-tasking property of modern computer systems.
5.      It is the software that incorporates all the common and essential functions that are necessary to operate a computer system. This includes hardware initialization, resource control, system hibernation, and debugging.

No comments:

Post a Comment