1.2 Operating System Structure

Download Report

Transcript 1.2 Operating System Structure

1.2 Operating System
Structure
1. Monolithic System
• The earliest and most common OS
architecture.
• Every component of OS contained in the
kernel and can directly communicate with
any other (i.e by using function call).
• The kernel typically executes with
unrestricted access to the computer system
(refer next diagram)
1. Monolithic System
Application
User Space
System Call Interface
Kernel Space
MM- Memory management
Kernel
MM
I/O
PS
Net
IPC
. . .
FS
PS- Process scheduler
IPC- Interprocess communictaion
FS- File System
I/O- Input Output manager
Net- Network manager
2. Layered System
• To overcome the issue of monolithic architecture by
grouping components that performs similar
functions into layers
• Each layer communicates with those above and
below it.
• Lower-level layers provide services to higher-level
layer using interfaces that hide their implementation
• Layer OS are more modular than monolithic OS
because the implementation of each layer can be
modified without requiring any modification to
other layers
2. Layered System
• Each component hides how it performs its job
and presents a standard interface that other
components can use to request its services
• In a layer approach, a user process’s request
may need to pass through many layers before it
is services
• Early example of layer OS is THE (Technische Hogeschool
Eindhoven)
• Many of today’s OS including Windows XP and
Linux implement some level of layering.
• Main advantage is simplicity of construction
and debugging.
2. Layered System
user
User space
Kernel space
Layer 4
User applications
Layer 3
I/O Management
Operator – process
communication
Layer 1
Memory management
Layer 0
Processor allocation
and
multiprogramming
• The OS is divided into a number of layers
(levels)
• The bottom layer (layer 0), is the hardware.
• The highest (layer N) is the user interface.
Hardware
Layer 2
Layers of THE Operating System
3. Virtual Machines OS
• Virtual Machine OS is to support concurrent
execution of different operating system on a
computer .
• The resources of the physical computer are shared to
create the virtual machines.
– CPU scheduling can create the appearance that
users have their own processor.
– Spooling and a file system can provide virtual card
readers and virtual line printers.
– A normal user time-sharing terminal serves as the
virtual machine operator’s console.
3. Virtual Machines OS
Non-virtual Machine
Virtual Machine
3. Advantages & Disadvantages of
Virtual Machine OS
• Advantages:
– provides complete protection of system resources. Each
virtual machine is isolated from all other virtual
machines.
– perfect vehicle for operating-systems RND.
– System development is done on the virtual machine,
instead of on a physical machine. So does not disrupt
normal system operation.
• Disadvantages:
– This isolation permits no direct sharing of resources.
– Difficult to implement due to the effort required to
provide an exact duplicate to the underlying machine.
4. Client-Server Model
• Is one of the extended machine
Network Operating System (NOS)
• NOS is the system software of a local area network
(LAN) that integrates the network's hardware
components, usually adequate for connecting up to 50
workstations.
• Included such features as a menu-driven administration
interface, tape backup of file-server software, security
restrictions, facilities for sharing printers, central
storage of application programs and databases, remote
log-in via modem, and support for discuss workstations.
• A network operating system establishes and maintains
the connection between the workstations and the file
server; the physical connections alone aren't sufficient to
support networking.
Network Operating System (NOS)
• 2 type of NOS :
– Peer to pear
– Client Server
• Example of NOS operating system
– Microsoft Windows (Workgroups)
– Microsoft Windows NT Server
Open Source vs Closed Source OS
Open Source
Closed Source
User can get the source code
Source code - is held by the developer
Allow user can modify and change it,
following the guidelines in the
accompanying license
Only developer can make any changes
or study on it
Example : Ubuntu , RedHat
Windows NT, Windows Vista,
Owner : LINUX
Microsoft the owner and developer of
Windows
Terminologies in OS
• Cooperative multitasking
• Preemptive multitasking
• Multithreading
Terminologies in OS : Cooperative
Multitasking
• A type of multitasking in which the process
currently controlling the CPU must offer
control to other processes. It is called
cooperative because all programs must
cooperate for it to work
Terminologies in OS : Preemptive
Multitasking
Terminologies in OS :
Multithreading
Three Major Component of
Operating System
• Process Management
• File Management
• Memory Management
Process Management
File Management
Memory Management