0% found this document useful (0 votes)
13 views19 pages

Introduction To Operating System: Lecture-1

An operating system (OS) serves as an interface between users and computer hardware, managing tasks such as memory, process, and file management. It can be structured in various ways, including simple, layered, micro-kernel, monolithic, and modular architectures, each with its own advantages and disadvantages. The evolution of operating systems spans from the first generation in the 1940s to the current era of personal computing, highlighting significant developments such as multiprogramming and the rise of Microsoft Windows.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views19 pages

Introduction To Operating System: Lecture-1

An operating system (OS) serves as an interface between users and computer hardware, managing tasks such as memory, process, and file management. It can be structured in various ways, including simple, layered, micro-kernel, monolithic, and modular architectures, each with its own advantages and disadvantages. The evolution of operating systems spans from the first generation in the 1940s to the current era of personal computing, highlighting significant developments such as multiprogramming and the rise of Microsoft Windows.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 19

INTRODUCTION TO OPERATING

SYSTEM
Lecture-1
What is an OS?

• An OS is a interface between user and computer hardware.


• An operating system is a software which performs all the basic
tasks like file management, memory management, process
management, handling input and output, and controlling
peripheral devices such as disk drives and printers.
• An operating system (OS) is the program that, after being
initially loaded into the computer by a boot program,
manages all of the other application programs in a computer.
• The application programs make use of the operating system
by making requests for services through a defined application
program interface (API).
• Users can interact directly with the operating system through a
user interface, such as a command-line interface (CLI) or a
graphical UI (GUI).
What do Operating Systems do?
• An operating system is a well-organized collection of programs that
manages the computer hardware. It is a type of system software that is
responsible for the smooth functioning of the computer system .
Cont..

• Functions of OS:
• Memory Management
• Memory management refers to management of Primary Memory
or Main Memory. Main memory is a large array of words or bytes
where each word or byte has its own address.
• Main memory provides a fast storage that can be accessed directly
by the CPU. For a program to be executed, it must in the main
memory. An Operating System does the following activities for
memory management −
• Keeps tracks of primary memory, i.e., what part of it are in use by
whom, what part are not in use.
• In multiprogramming, the OS decides which process will get
memory when and how much.
• Allocates the memory when a process requests it to do so.
• De-allocates the memory when a process no longer needs it or has
been terminated.
Cont..
• Processor Management
• In multiprogramming environment, the OS decides which process gets the
processor when and for how much time. This function is called process
scheduling. An Operating System does the following activities for
processor management −
• Keeps tracks of processor and status of process. The program responsible
for this task is known as traffic controller.
• Allocates the processor (CPU) to a process.
• De-allocates processor when a process is no longer required.
• Device Management
• An Operating System manages device communication via their respective
drivers. It does the following activities for device management −
• Keeps tracks of all devices. Program responsible for this task is known as
the I/O controller.
• Decides which process gets the device when and for how much time.
• Allocates the device in the efficient way.
• De-allocates devices.
Cont..
• File Management
• A file system is normally organized into directories for easy
navigation and usage. These directories may contain files and other
directions.
• An Operating System does the following activities for file
management −
• Keeps track of information, location, uses, status etc. The collective
facilities are often known as file system.
• Decides who gets the resources.
• Allocates the resources.
• De-allocates the resources.
Cont..
• Other Important Activities
• Security − By means of password and similar other techniques, it prevents
unauthorized access to programs and data.
• Control over system performance − Recording delays between request
for a service and response from the system.
• Job accounting − Keeping track of time and resources used by various
jobs and users.
• Error detecting aids − Production of dumps, traces, error messages, and
other debugging and error detecting aids.
• Coordination between other software’s and users − Coordination and
assignment of compilers, interpreters, assemblers and other software to the
various users of the computer systems.
Operating system structure
• Operating system can be implemented with the help of various structures.
• The structure of the OS depends mainly on how the various common
components of the operating system are interconnected and melded into
the kernel.
• Depending on this we have following structures of the operating system:
• Simple structure:
• Such operating systems do not have well defined structure and are
small, simple and limited systems.
• The interfaces and levels of functionality are not well separated.
MS-DOS is an example of such operating system.
• In MS-DOS application programs are able to access the basic I/O
routines.
• These types of operating system cause the entire system to crash if
one of the user programs fails.
Cont..
• Layered structure:
• An OS can be broken into pieces and retain much more control on system.
• In this structure the OS is broken into number of layers (levels).
• The bottom layer (layer 0) is the hardware and the topmost layer (layer N)
is the user interface.
• These layers are so designed that each layer uses the functions of the lower
level layers only.
• This simplifies the debugging process as if lower level layers are debugged
and an error occurs during debugging then the error must be on that layer
only as the lower level layers have already been debugged.
Cont..
• Micro-kernel structure:
• This structure designs the operating system by removing all non-essential
components from the kernel and implementing them as system and user
programs. This result in a smaller kernel called the micro-kernel.
• Advantages of this structure are that all new services need to be added to
user space and does not require the kernel to be modified.
• Thus it is more secure and reliable as if a service fails then rest of the
operating system remains untouched. Mac OS is an example of this type of
OS.
• Advantages of Micro-kernel structure:
• It makes the operating system portable to various platforms.
• As microkernel are small so these can be tested effectively.
• Disadvantages of Micro-kernel structure:
• Increased level of inter module communication degrades system
performance.
Cont..
• Key Features of Microkernels:
• Minimal Kernel: The kernel’s functionality is minimal, often
including only the basic system functions like scheduling,
memory management, and inter-process communication.
• Modular Design: Most services like device drivers, file systems,
and network stacks run in user space as separate processes (called
servers). This leads to a more flexible and extensible OS
architecture.
• Isolation: Because non-essential services run in user space, a
failure in one of these services will not necessarily crash the
entire system. It only affects the service itself.
Cont..
• Complex Communication: Since many components run in
user space, they must communicate with the microkernel
through message-passing or inter-process communication
(IPC), which can be less efficient than direct kernel calls in a
monolithic kernel.
• Fault Tolerance: Due to the separation of components, a
failure in one service (e.g., a driver) does not compromise the
whole OS, making microkernels more fault-tolerant.
• Ex: Minix, QNX, L4, HURD
Cont..
• Monolithic Kernel structure:
• A monolithic kernel is a type of kernel architecture in which the
entire operating system (OS) runs in a single, large block of code in
kernel space.
• All core services, such as device drivers, file system management,
process management, and system calls, are part of the kernel.
• Key Features of Monolithic Kernels:
• Single Large Block of Code: The monolithic kernel contains all
necessary services within the kernel itself, as opposed to splitting
them into separate modules.
• Efficiency: Since everything is in one place and runs in kernel
mode, context switches and communication between components
are relatively fast.
Cont..
• Tightly Coupled: Device drivers, file systems, network
protocols, and other services are closely tied together within the
kernel. This can lead to more complex development and
maintenance.
• Larger Codebase: The size of the kernel is typically larger
because all the necessary components (e.g., drivers, networking
stack) are included directly in the kernel space.
• Potential Stability Issues: A bug in one part of the kernel could
cause the whole system to crash, since everything operates in
privileged mode.
• Ex: Linux, Unix
Cont..
• Modular structure or approach:
• It is considered as the best approach for an OS. It involves designing of a modular
kernel.
• The kernel has only set of core components and other services are added as
dynamically loadable modules to the kernel either during run time or boot time.
• It resembles layered structure due to the fact that each kernel has defined and
protected interfaces but it is more flexible than the layered structure as a module
can call any other module.
For example Solaris OS is organized as shown in the figure.
History of OS
• The First Generation (1940 to early 1950s)
• When the first electronic computer was developed in 1940, it
was created without any operating system.
• In early times, users have full access to the computer machine
and write a program for each task in absolute machine
language.
• The programmer can perform and solve only simple
mathematical calculations during the computer generation, and
this calculation does not require an operating system.
Cont..
• The Second Generation (1955 - 1965)
• The first operating system (OS) was created in the early 1950s
and was known as GMOS. General Motors has developed
OS for the IBM computer.
• The second-generation operating system was based on a single
stream batch processing system because it collects all similar
jobs in groups or batches and then submits the jobs to the
operating system using a punch card to complete all jobs in a
machine.
• At each completion of jobs (either normally or abnormally),
control transfer to the operating system that is cleaned after
completing one job and then continues to read and initiates the
next job in a punch card. After that, new machines were called
mainframes, which were very big and used by professional
operators.
Cont..

• The Third Generation (1965 - 1980)


• During the late 1960s, operating system designers were very
capable of developing a new operating system that could
simultaneously perform multiple tasks in a single computer
program called multiprogramming.
• The introduction of multiprogramming plays a very
important role in developing operating systems that allow a
CPU to be busy every time by performing different tasks on a
computer at the same time.
• During the third generation, there was a new development of
minicomputer's phenomenal growth starting in 1961 with the
DEC PDP-1. These PDP's leads to the creation of personal
computers in the fourth generation.
Cont..
• The Fourth Generation (1980 - Present Day)
• The fourth generation of operating systems is related to the
development of the personal computer.
• A major factor related to creating personal computers was the
birth of Microsoft and the Windows operating system.
• Microsoft created the first window operating system in 1975.
• After introducing the Microsoft Windows OS, Bill Gates and Paul
Allen had the vision to take personal computers to the next level.
Therefore, they introduced the MS-DOS in 1981; however, it was
very difficult for the person to understand its cryptic commands.
• Today, Windows has become the most popular and most
commonly used operating system technology. And then, Windows
released various operating systems such as Windows 95,
Windows 98, Windows XP and the latest operating system,
Windows 7, and so on.

You might also like