Evolution of OS
Evolution of OS
Evolution of OS
Operating System
A program that controls the execution of application programs An interface between applications and hardware
$fficiency
! Allows computer system resources to be used in an efficient manner
Ability to evolve
! %ermit effective development& testing& and introduction of new system functions without interfering with service
3
'
%rogram execution Access to *+O devices ontrolled access to files System access
! Software errors
Arithmetic overflow Access forbidden memory locations
Operating System
2esponsible for managing resources 3unctions same way as ordinary computer software
! *t is program that is executed
6ernel
%ortion of operating system that is in main memory ontains most fre.uently used functions Also called the nucleus
15
11
13
1'
7ardware 3eatures
"emory protection
! -o not allow the memory area containing the monitor to be altered
>imer
! %revents a job from monopoli?ing the system
1)
7ardware 3eatures
%rivileged instructions
! ertain machine level instructions can only be executed by the monitor
*nterrupts
! $arly computer models did not have this capability
1,
"emory %rotection
0ser program executes in user mode
! ertain instructions may not be executed
1/
11
0niprogramming
%rocessor must wait for *+O instruction to complete before preceding
14
"ultiprogramming
=hen one job needs to wait for *+O& the processor can switch to the other job
25
"ultiprogramming
21
0tili?ation 7istograms
22
$xample
23
>ime Sharing
0sing multiprogramming to handle multiple interactive jobs %rocessor@s time is shared among multiple users "ultiple users simultaneously access the system through terminals
2'
2)
"ajor Achievements
%rocesses "emory "anagement *nformation protection and security Scheduling and resource management System structure
2,
%rocesses
A program in execution An instance of a program running on a computer >he entity that can be assigned to and executed on a processor A unit of activity characteri?ed by a single se.uential thread of execution& a current state& and an associated set of system resources
2/
-eadloc#s
21
%rocess
onsists of three components
! An executable program ! Associated data needed by the program ! $xecution context of the program
All information the operating system needs to manage the process
24
%rocess
35
"emory "anagement
%rocess isolation Automatic allocation and management Support of modular programming %rotection and access control (ongAterm storage
31
Birtual "emory
Allows programmers to address memory from a logical point of view 8o hiatus between the execution of successive processes while one process was written out to secondary store and the successor proceess was read in
32
33
%aging
Allows process to be comprised of a number of fixedAsi?e bloc#s& called pages Birtual address is a page number and an offset within the page $ach page may be located any where in main memory 2eal address or physical address in main memory
3'
Birtual "emory
3)
3,
onfidentiality
! Assuring that users cannot read data for which access is unauthori?ed
3/
Authenticity
! oncerned with the proper verification of the identity of users and the validity of messages or data
31
-ifferential responsiveness
! -iscriminate among different classes of jobs
$fficiency
! "aximi?e throughput& minimi?e response time& and accommodate as many uses as possible
34
'5
System Structure
Biew the system as a series of levels $ach level performs a related subset of functions $ach level relies on the next lower level to perform more primitive functions >his decomposes a problem into a number of more manageable subproblems
'1
(evel 2
! %rocessor@s instruction set ! Operations such as add& subtract& load& and store
'2
(evel '
! *nterrupts
'3
(evel ,
! Secondary storage devices ! >ransfer of bloc#s of data
(evel /
! reates logical address space for processes ! Organi?es virtual address space into bloc#s
''
(evel 4
! Supports longAterm storage of named files
(evel 15
! %rovides access to external devices using standardi?ed interfaces
')
(evel 12
! %rovides fullAfeatured facility for the support of processes
(evel 13
! %rovides an interface to the operating system for the user
',
'/
'1
'4
)5
)1
)2
=indows Architecture
"odular structure for flexibility $xecutes on a variety of hardware platforms Supports application written for other operating system
)3
)'
Any module can be removed& upgraded& or replaced without rewriting the entire system
))
6ernelA"ode omponents
$xecutive
! ontains base operating system services
"emory management %rocess and thread management Security *+O *nterprocess communication
6ernel
! onsists of the most used components
),
6ernelA"ode omponents
7ardware abstraction layer ;7A(<
! *solates the operating system from platformAspecific hardware differences
-evice drivers
! >ranslate user *+O function calls into specific hardware device *+O re.uests
=indows $xecutive
*+O manager ache manager Object manager %lug and play manager %ower manager Security reference monitor Birtual memory manager %rocess+thread manager onfiguration manager (ocal procedure call ;(% < facility
)1
0serA"ode %rocesses
Special system support processes
! $xD logon process and the session manager
)4
lient+Server "odel
Simplifies the $xecutive
! %ossible to construct a variety of A%*s
*mproves reliability
! $ach service runs on a separate process with its own partition of memory ! lients cannot not directly access hardware
%rovides a uniform means for applications to communicate via (% %rovides base for distributed computing
,5
=indows Objects
$ncapsulation
! Object consists of one or more data items and one or more procedures
*nheritance
! Support to some extent in the $xecutive
%olymorphism
,2
08*E
7ardware is surrounded by the operating system software Operating system is called the system #ernel omes with a number of user services and interfaces
! Shell ! omponents of the compiler
,3
08*E
,'
08*E 6ernel
,)
,,
,/