Information Technology Fundamental - Operating System Management
Operating System Management
As its name implies, an operating system is a sort of software without which a computer cannot be operated. It functions as an intermediate or translation system between computer hardware and installed application programmes. In other words, it is impossible to connect computer programmes and computer hardware without a connection medium.
In addition, it acts as a middleman between the computer user and the computer hardware by providing a standard user interface that appears on the screen of the computer when it is turned on. Windows and the Mac OS, for instance, are operating systems that provide a graphical interface with icons and images to enable simultaneous access to various files and applications.
Even while the operating system is itself a programme or piece of software, it enables users to run additional programmes or apps. We can say that it runs your computer in the background.
Functions of Operating System:
- It manages both primary and secondary memory, including RAM, ROM, hard disc, flash drive, etc. It examines and determines the allocations and deallocations of memory space to various processes. When a user interacts with a system, the CPU is expected to perform read or write operations; in this scenario, the operating system determines how much memory will be allotted for loading programme instructions and data into RAM. After this programme terminates, the memory space becomes available for allocation by the operating system to other applications.
- Operate software applications: It provides the environment required to run or utilise software applications designed to do specific activities, such as Microsoft Word, Microsoft Excel, Adobe Photoshop, etc.
- I/O management manages input/output devices and makes the I/O process efficient. For instance, it receives the user's input through an input device and stores it in the main memory. Then, it instructs the CPU to process the input and sends the output through a monitor or other output device.
- Security: A security module protects the data and information stored in the computer's memory from malware and illegal access. Thus, not only does it manage your data, but it also helps to safeguard it.
- Processor Management: It aids processor management by determining the processing time to be assigned to each process and the order in which processes will access the processor. In addition, it checks the status of processes, releases the processor when a process completes, and assigns it to a new process.
- Deadlock Prevention: Occasionally, a resource that is intended to be shared by two or more processes is held by one process, resulting in a deadlock. This is referred to as a deadlock. The operating system prevents this circumstance from occurring by carefully dividing resources among the processes.
- Device/hardware management: The operating system includes device management drivers. A driver is a form of translation software that enables the operating system to communicate with devices; as each device speaks a distinct language, there are different drivers for each device.
- It provides an interface between the user and the hardware. It may be a graphical user interface where you may see and click on on-screen components to do various activities. It allows you to speak with the computer without understanding its language.
- It facilitates data administration by providing and showing directories for data management. You can browse and manipulate files and directories, such as moving, copying, renaming, or deleting a file or folder.
- Time Management: This assists the CPU with time management. The Kernel OS continually monitors the rate at which processes request CPU time. When two or more equally essential processes compete for CPU time, CPU time is segmented and distributed to these processes in a round-robin method to avoid a single process from monopolizing the CPU.
Types of Operating System
There are different types of operating system
1) Batch Processing Operating System:
In this system, there is no interaction between the user and computer. The user must prepare jobs on punch cards and send them to the computer operator in the form of batches. To expedite processing, the computer operator sorts the jobs or programmes and maintains related programmes or jobs in the same batch. It is meant to perform a single task at a time. Jobs are processed in the order in which they were submitted, with no human interaction.
The bank-generated credit card statement is an example of batch processing. Rather than generating a separate charge for each credit card purchase, batch processing generates a single monthly one that contains all purchases. The bill details are collected and stored in a batch, which is subsequently processed at the conclusion of the billing cycle to generate the bill. Similarly, in a payroll system, the salaries of the company's employees are calculated and created at the end of each month using batch processing.
Benefits of batch processing operating system:
1. Repetitive tasks can be easily accomplished without human intervention.
2. No system or hardware support is required for data input in batch systems
3. It can function offline, thus it places less strain on the CPU because it knows which task to execute next and for how long.
4. It is accessible to various users.
5. You can adjust the schedule of batch jobs so that when the computer is not busy, such as at night or other spare time, the batch jobs will begin processing.
Batch processing operating system disadvantages:
1. The computer operators must be trained to use the batch system.
2. This system is not straightforward to debug.
3. If an error occurs in one task, other tasks may have to wait for an indeterminate amount of time.
2) Time Sharing Operating System:
As its name suggests, it facilitates concurrent usage of a computer system by numerous people at various terminals by sharing the processor's time. In other words, each task is given sufficient time to be carried out, and consequently, all duties are carried out efficiently.
Each user receives the same amount of processor time when using a single machine. Quantum or time slice refers to the duration of time given to a task; when this duration expires, the operating system begins the next task.
Benefits of Time-sharing operating system
- It decreases CPU idle time, hence increasing its productivity.
- Each process has the opportunity to utilize the CPU.
- It allowed multiple apps to run concurrently.
Time-sharing operating system drawbacks
- It necessitates a specialized operating system since it requires additional resources.
- Switching between jobs may stall the system if it serves a large number of users and runs a large number of programmes concurrently, necessitating hardware with high specifications.
- It is less trustworthy.
3) Distributed Operating System
It utilizes or operates on many independent processors (CPUs) in order to serve multiple users and multiple real-time applications. Numerous communication connections, such as telephone lines and high-speed buses, are utilized for processor-to-processor communication. Size and functionality of the CPUs may vary between models.
The availability of powerful microprocessors and improved communication technology has allowed for the design, development, and implementation of the distributed operating system. In addition, it is an extension of a network operating system that provides a high level of network machine connection and integration.
Distributed operating system advantages:
- Its performance is superior to that of a standalone system since resources are pooled.
- If one system fails, malfunctions, or malfunctions, other nodes are unaffected.
- Adding additional resources is simple.
- Access to shared resources such as printers can be established.
- Processing delays are decreased to a larger extent.
- The rate of data sharing or exchange is brisk due to the use of electronic mail.
Drawbacks of a distributed operating system:
- Due to the sharing of resources, a security concern may occur.
- A small number of messages may be lost in the system.
- Handling a huge volume of data necessitates a greater bandwidth.
- An overcrowding issue may develop
- The performance could be subpar.
- The languages needed to configure a distributed system are not yet well-defined.
- Due to their high price, they are not readily available.
4) Network Operating System:
This operating system links computers and gadgets to a local area network and manages network resources, as its name suggests. The software in a NOS let network devices to share resources and communicate with one another. It operates on a server and enables shared access over a LAN to printers, files, programmes, and other networking resources and services. In addition, all network users are aware of one another's underlying settings and individual connections. Windows Server 2003 and 2008, Linux, UNIX, Novell NetWare, Mac OS X, etc. are examples.
Network operating system benefits:
- Centralized servers that can be accessed remotely from faraway places and various platforms
- It is simple to include cutting-edge technologies and hardware into this system.
Disadvantages of network operating system:
- The cost of the system's servers may be high.
- The system is dependent on the central location and must be monitored and maintained regularly.
Generations of Operating System:
There are four generations of operating system
1. The first generation (1945 to 1955)
Prior to World War II, the digital computer had not yet been invented, and mechanical relays were used in calculating engines. As mechanical relays were extremely slow, vacuum tubes eventually replaced them. But even with vacuum tubes, the performance issue was not fixed, and these machines were extremely cumbersome and enormous because they were composed of tens of thousands of vacuum tubes.
Moreover, each machine was created, programmed, and maintained by a single group of individuals. Unknown programming languages and operating systems necessitated the usage of absolute machine language for programming.
These systems were created specifically for numerical calculations. The programmer was obliged to reserve a block of time before inserting his plug board into the computer. Punch cards were developed in the 1950s, which enhanced computer performance. It permitted programmers to create programmes on punch cards and read them into the system; the remainder of the technique remained same.
2. The second generation
This generation began with the mid-1950s introduction of transistors. The inclusion of transistors improved the dependability of the computers, allowing them to be sold to customers. These devices were known as mainframes. Only large enterprises and government agencies could afford it. This machine requires the programmer to write the programme on paper and then punch it onto cards. The card would be transported to the input room and given to an operator in order to obtain the output. The output from the printer was taken to the output room. These stages make the activity time-consuming. Therefore, the batch system was implemented to resolve this issue.
In a batch system, the jobs were accumulated in a tray in the input room and then read onto a magnetic tape, which was then transported to the machine room and installed on a tape drive. Then, using a specialised programme, the operator was to read the first task or job from the tape and execute it, with the output being written to a second cassette. The operating system automatically read the next job from the tape, and Jobs were finished sequentially. After the batch was completed, the input and output tapes were removed and the next batch was initiated. The printed materials were extracted from the output cassette. It was mostly used for scientific and technical calculations. This generation's first operating system was FMS (Fortran Monitor System), while IBMSYS and FORTRAN were utilised as high-level languages.
3. The third generation (1965 to 1979)
This generation began in 1964 when IBM introduced the 360 line of computers. In this generation, silicon chips replaced transistors, and the operating system was enhanced to allow multiprogramming; some even supported batch processing, time sharing, and real-time processing simultaneously.
4. The fourth generation operating system (1979 to Present)
This generation of operating systems began with the development of personal computers and workstations. This generation saw the introduction of chips containing thousands of transistors, which enabled the development of personal computers that allowed the expansion of networks and led to the creation of network operating systems and distributed operating systems. DOS, Linux, and window-based operating systems are examples of this generation's OS.