windows os architecture in summery
TRANSCRIPT
![Page 1: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/1.jpg)
Presented By :
Arachchi N.C.R. (148205J)
Dilruk G.A. (148209B)
Thursday, April 23, 2015 1
![Page 2: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/2.jpg)
Index …
Microsoft Windows Overview
History
Single-User Multitasking
Architecture
Operating System Organization
User-Mode Processes
Client/Server Model
Threads and SMP
Windows Objects
Thursday, April 23, 2015 2
![Page 3: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/3.jpg)
History
MS-DOS/PC-DOS 1.0- 1981 Developed for first IBM PC
Consist of 4000 lines of assembly source code
Ran in 8KB
Used Intel 8086 microprocessor
DOS 2.0- 1983 Released with IBM PC XT
Support Hard Disk and provided hierarchical directories
Memory resident portion up to 24KB
Thursday, April 23, 2015 3
![Page 4: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/4.jpg)
History cont.…
MS-DOS 3.0/Windows 1.0- 1984 Introduced with IBM AT PC
Support for new Keyboard and Hard Disk peripherals
Memory requirement 36KB
MS-DOS 3.1- 1984 Support for Networking of PC’s
MS-DOS 3.3- 1987 Support for IBM PS/2
Memory resident portion grown minimum of 46KB
Thursday, April 23, 2015 4
![Page 5: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/5.jpg)
History cont.…
Windows 3.0- 1990 Introduced GUI
Support for new Keyboard and Hard Disk peripherals
Memory requirement 36KB
MS-DOS 3.1- 1984 Support for Networking of PC’s
MS-DOS 3.3- 1987 Support for IBM PS/2
Memory resident portion grown minimum of 46KB
Thursday, April 23, 2015 5
![Page 6: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/6.jpg)
History cont.…
Windows 95- 1995 Introduced Taskbar, Start menu, Explorer file manager
Windows 98- 1998 Usage of WDM (Windows Driver Model)
USB Support
Windows 2000- 2000 Plug and Play improvements
Thursday, April 23, 2015 6
![Page 7: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/7.jpg)
History cont.…
Windows XP-2001 Windows Vista-
2006
Windows 7-2009 Windows 8-2012Thursday, April 23, 2015 7
![Page 8: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/8.jpg)
Single-User Multitasking
The operating system is designed mainly with a single user in
mind, but it can deal with many applications running at the same
time.
What happens if a user wishes to create a drawing and paste it
into a word processing document without multitasking??
Potentials
Increased speed and memory capacity of microprocessors.
Growth of client/server computing
1. Open the drawing program.
2. Create the drawing and save it in a file or on a temporary
clipboard.
3. Close the drawing program.
4. Open the word processing program.
5. Insert the drawing in the correct location
Thursday, April 23, 2015 8
![Page 9: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/9.jpg)
Architecture
HAL
Set of routines that
give a program
access to the
hardware
resources
HAL makes each
machine hardware
look same to the
kernel
Delivers the
support needed for
symmetric multi
processing (SMP)
Thursday, April 23, 2015 9
![Page 10: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/10.jpg)
Architecture cont.…
Kernel
Contains most
used and
fundamental
component.
Manages
• Thread
scheduling
• Process
switching
• Exception and
interrupt
handling
• Multiprocessor
synchronization
Only part that is
not preemptive and
pageable
Thursday, April 23, 2015 10
![Page 11: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/11.jpg)
Architecture cont....
Device Drivers
Include file system
and hardware
drivers
Translate user I/O
function calls to
hardware specific
requests.
Thursday, April 23, 2015 11
![Page 12: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/12.jpg)
Architecture cont....
Windowing and
graphics system
Handles GUI
functions such as
window component
management,
drawing, etc..
Thursday, April 23, 2015 12
![Page 13: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/13.jpg)
Architecture cont....
Executive
Contains the base
OS services such
as
• Memory mgmt.
• Process and
thread mgmt.
• Security
• I/O
• Inter process
communication
Thursday, April 23, 2015 13
![Page 14: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/14.jpg)
Architecture cont....
I/O Manager
Implements all the
Windows I/O APIs
Enforces security
and naming for
devices and file
systems
Thursday, April 23, 2015 14
![Page 15: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/15.jpg)
Architecture cont....
File System Cache
Improves the
performance by
keeping recently
referenced disk
data and holding
updates for short
time
Thursday, April 23, 2015 15
![Page 16: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/16.jpg)
Architecture cont....
Object Manager
Creates, manages
and deletes
executive objects,
processes, threads
and
synchronization
objects
Create object
handlers which
consist of access
control information
and a pointer to
the object
Thursday, April 23, 2015 16
![Page 17: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/17.jpg)
Architecture cont....
Plug and Play
manager
Determines which
drivers are
required to support
a particular device
and load them
Thursday, April 23, 2015 17
![Page 18: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/18.jpg)
Architecture cont....
Power Manager
Coordinates the
power among
devices and
reduce the power
consumption by
putting the
processor to sleep
on idle
Thursday, April 23, 2015 18
![Page 19: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/19.jpg)
Architecture cont....
Security reference
monitor
Manages the
access and the
audit logs through
out the system
Thursday, April 23, 2015 19
![Page 20: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/20.jpg)
Architecture cont....
Virtual Memory
Manager
Maps the virtual
address in the
process’s address
space to physical
addresses
Thursday, April 23, 2015 20
![Page 21: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/21.jpg)
Architecture cont....
Process / Thread
Manager
Manage processes
and threads
Thursday, April 23, 2015 21
![Page 22: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/22.jpg)
Architecture cont....
Configuration
manager
Responsible
manage the
system registry
which contains the
system and user
settings
Thursday, April 23, 2015 22
![Page 23: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/23.jpg)
Architecture cont....
Local procedure
call
Manage the
communication
between executive
subsystems
Thursday, April 23, 2015 23
![Page 24: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/24.jpg)
Architecture cont....
User Mode processes
System Support
Processes
Include the
services not
provided as part of
the kernel
• Logon process
• Session
manager
• Local Security
authentication
server
Thursday, April 23, 2015 24
![Page 25: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/25.jpg)
Service Processes
Other windows
services such as
event logger,
spooler
Architecture cont....User Mode processes
Thursday, April 23, 2015 25
![Page 26: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/26.jpg)
User Applications
Can be a
• Win32
• Posix
• OS/2
• Windows 3.1
• MS-DOS
application
Architecture cont....
User Mode processes
Thursday, April 23, 2015 26
![Page 27: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/27.jpg)
Environment
Subsystems
Expose the
windows services
to user
applications.
Responsible to
convert user
application calls to
windows calls
Architecture cont....
User Mode processes
Thursday, April 23, 2015 27
![Page 28: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/28.jpg)
Client/Server Model
Each environment and a execute service subsystem is
implemented as one or more processes
Each process waits for a request from a client for one of its
services
Client requests a service by sending a message
Server performs the requested operation and returns the
result
Advantages
Simplifies the Executive
Improves Reliability
Provides suitable base for distributed computing
Thursday, April 23, 2015 28
![Page 29: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/29.jpg)
Threads and SMP
OS routines can run on any available processor
Windows supports multiple threads execution within a single
process
Server processes may use multiple threads to process
request from more than one client simultaneously
Windows provides mechanisms for sharing data resources
between processes and flexible interprocess communication
capabilities
Thursday, April 23, 2015 29
![Page 30: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/30.jpg)
Windows Objects
The approach of object-oriented design facilitates the sharing
of resources and data among processes and the protection of
resources from unauthorized access
Encapsulation
Object class and instance
Inheritance
Polymorphism
Object may be either named or unnamed
Eg. of objects managed by kernel (two categories)
1. Control objetcs
2. Dispatcher objects
Thursday, April 23, 2015 30
![Page 31: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/31.jpg)
Continue …
Windows Threads
Process & Thread Objects
Multithreading
Thread States
Symmetric Multiprocessing
Windows Memory Management
Virtual Address Map
Paging
Windows Scheduling
Process & Thread Priorities
Multiprocessor Scheduling
Thursday, April 23, 2015 31
![Page 32: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/32.jpg)
Windows Process & Thread
Objects
Windows process are implemented as objects
Executable process may contain one or more threads
Each process is assigned a security access token
Thursday, April 23, 2015 32
![Page 33: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/33.jpg)
Windows Process & Thread
Objects
Thursday, April 23, 2015 33
![Page 34: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/34.jpg)
Multithreading
Threads in different process can execute
concurrently
Moreover, multiple threads within the same
process execute simultaneously in different
processors
Threads within same process can exchange
information through their common address space
Ex : In server application each client can have a
separate thread to serviceThursday, April 23, 2015 34
![Page 35: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/35.jpg)
Thread States
Thursday, April 23, 2015 35
![Page 36: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/36.jpg)
Symmetric Multiprocessing
Threads of any process can run on any processor
Windows microkernel assigns a ready thread to
the next available processor in case of absence
of affinity restrictions
Two Affinity policies
Soft affinity
Hard affinity
Thursday, April 23, 2015 36
![Page 37: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/37.jpg)
Windows Memory Management
Each process on 32-bit Microsoft Windows has its
own virtual address space that enables
addressing up to 4 gigabytes of memory
Memory manager controls memory allocation and
how paging is performed
Only some parts of the program and data that are
currently in active use need to be held in physical
RAM and other parts are in a swap file
Thursday, April 23, 2015 37
![Page 38: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/38.jpg)
Virtual Address Space
Virtual address space for a
process is the set of virtual
memory addresses that
process can use
The virtual address space
for 32-bit Windows is 4
gigabytes (GB) in size and
divided into two partitions:
one for use by the process
and the other reserved for
use by the system
Thursday, April 23, 2015 38
![Page 39: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/39.jpg)
Windows Paging
Page sizes are ranging from 4Kb to 64Kb for different
platforms
Two-level hierarchical memory map
Page directory table
• Page directory entries (PDEs) point to page table
• One page directory table per process
• Location in page directory register
Page table
• Page table entries (PTEs) point to page frames
TLB (translation look aside buffer) accelerates address
translation
Windows use local page replacement
Less recently used pages out algorithm
Thursday, April 23, 2015 39
![Page 40: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/40.jpg)
Virtual Address Translation
Thursday, April 23, 2015 40
![Page 41: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/41.jpg)
Windows Scheduling
Mainly consider responsiveness in highly
interactive environment.
Preemptive scheduling
Priority levels
Round-robin scheduling Algorithms
Thursday, April 23, 2015 41
![Page 42: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/42.jpg)
Process & Thread Priorities
Two priority classes, real time and variable
Each consist of 16 levels
Threads needed immediate attention is in the real
time class, those have precedence over others
Lower priority thread will preemptive when higher
one is ready
Real-time class priorities are fixed while variable
class can up or downThursday, April 23, 2015 42
![Page 43: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/43.jpg)
Process & Thread Priorities
Thursday, April 23, 2015 43
![Page 44: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/44.jpg)
Process & Thread Priorities
Thursday, April 23, 2015 44
![Page 45: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/45.jpg)
Multiprocessor Scheduling
In a multiprocessor system with N processors
The (N -1) highest priority thread are always active
And running on (N -1) extra processors
The Remaining lower priority threads share the
single remaining processor
Thursday, April 23, 2015 45
![Page 46: Windows OS Architecture in Summery](https://reader030.vdocuments.net/reader030/viewer/2022020208/55a782e01a28ab133e8b481a/html5/thumbnails/46.jpg)
Thursday, April 23, 2015 46