Operating System: Subtitle
Operating System: Subtitle
OPERATING
SYSTEM
Subtitle
Content
5.1 Introduction
5.2 Evolution
5.3 Components of OS: UI, memory manager, process manager, file manager,
device manager
5.4 Components of OS: UI, memory manager, process manager, file manager, device
manager (continue)
Objectives
Understand the process of bootstrapping to load the operating system into memory.
Understand the main features of three common operating systems: UNIX, Linux and Windows.
1-INTRODUCTION
1. Introduction
Batch systems Batch operating systems were designed in the 1950s to control mainframe computers. At
that time, computers were large machines that used punched cards for input, line printers for output and
tape drives for secondary storage media. Each program to be executed was called a job. A programmer
who wished to execute a job sends a request to the operating system.
Time-sharing systems To use computer system resources efficiently, multiprogramming was introduced.
The idea is to hold several jobs in memory at a time, and only assign a resource to a job that needs it on
the condition that the resource is available. Multiprogramming brought the idea of time sharing:
resources could be shared between different jobs, with each job being allocated a portion of time to
use a resource.
Personal systems When personal computers were introduced, there was a need for an operating system
for this new type of computer.
During this era, single-user operating systems such as DOS (Disk Operating System) were introduced.
Parallel systems The need for more speed and efficiency led to the design of parallel systems: multiple
CPUs on the same machine.
Each CPU can be used to serve one program or a part of a program, which means that many tasks can be
accomplished in parallel instead of serially. The operating systems required for this are more complex
than those that support single CPUs.
Distributed systems Networking and internetworking, as we saw in Chapter 6, have created a new
dimension in operating systems.
A job that was previously done on one computer can now be shared between computers that may be
thousands of miles apart. Distributed systems combine features of the previous generation with new
duties such as controlling security.
Real-time systems (RTOS) A real-time system is expected to do a task within a specific time
constraint.
They are used with real-time applications, which monitor, respond to or control external processes or
environments.
Today’s operating systems are very complex. An operating system needs to manage different resources in
a computer system. It resembles an organization with several managers at the top level. Each manager is
responsible for managing their department, but also needs to cooperate with others and coordinate
activities.
A modern operating system has at least four duties: memory manager, process manager, device
manager and file manager.
State diagrams
Queuing
The whole idea behind process management is to synchronize different processes with different
resources. Whenever resources can be used by more than one user (or process, in this case), we can have
two problematic situations: deadlock and starvation.