A5_Presentation2
Download
Report
Transcript A5_Presentation2
Windows NT
A Distributed Architecture
Professor: Mohamed Khalil
CSE 8343
GROUP-A5
Dhaval Sanghvi
Amit Sharma
Ali Abbas (Video-Tape)
1
Agenda
Features
Design goals of Windows NT
Architecture
• Three Layers
Upper Layer - Executive
Middle Layer - Kernel
Lower Layer - Hardware Abstraction Layer
Environment Subsystem
Summary
Biblography
2
Features
Preemptive Multitasking
Support for Symmetric Multiprocessing
Integrated Networking services
Client/Server Architecture
Support for several file systems
Virtual Memory Management
Support for 2 GB linear space for application
and also 2GB for OS
3
Design goals of Windows NT
Extensibility
Portability
Reliability
Compatibility
Security
Performance
Scalability
Localization
4
Windows NT Architecture
Windows NT is a modular operating system
composed of simple modules : kernel mode
and user mode.
Kernel Mode composed of mainly 3 layers:
Upper layer - Executive layer
Middle layer - The kernel
Lower layer - Hardware Abstraction
Layer(HAL)
User Mode is composed of environment
subsystems.
5
Architecture - cont’d
6
Executive Layer
Each component of NT Executive provides a
set of API’s
Some API’s are designed to be invoked by
user-mode processes.
Some API’s are visible only in the kernel mode
inside the Executive
NT’s API’s are flexible enough to implement a
wide range of operating system environments.
NT’s Executive has six subsystems - Object
Manager, Process Manager, Virtual Memory
Manager, Security Reference Monitor, Local
Procedure Call Facility, I/O subsystem
7
Object Manager
An object is a representation of a conceptual or
physical entity in the system.
Examples of Objects:
– Files
– Directories
– Processes
– Threads
– Synchronization Objects (semaphores,
mutexes, events, timers)
– Virtual Memory objects
Mostly everything passed around and processed
within NT is represented as an object.
8
Security Reference Monitor
Checks for proper authorization before granting
access to objects
Object Manager is a customer of a SRM: it asks
SRM if a process has the proper rights to execute a
certain type of action on an object.
Implements auditing functions to keep track of
attempts to access an object
Implements high level security:
– Resource owners must be able to control who
has access to it.
– Unique user name and password identification
– Audit trail of successful and unsuccessful
attempts
– Protection from unauthorized tampering of files
9
Process Manager
Creates,deletes and modifies processes and
threads
Does not dispatch or schedules any work. This
is done by the kernel
A process is represented within NT by a
process object
Process Object = (process’ virtual address
space, resources visible to the process, process
threads)
NT does not maintain parent-child information
between related processes.
10
Virtual Memory Manager(VMM)
Implements a fetch policy(when the pager
brings a page from disk to memory). Uses a
demand paging algorithm with the locality of
reference(“clustering”)
Implements shared memory segments(used by
LPC to transfer large messages)
Certain parts of the VMM are processor
dependent (e.g. page table entries,page
size,virtual address translation)
Manages file system drivers,device drivers and
network drivers
11
VMM - cont’d
Drivers can be dynamically loaded, unloaded,
started and stopped without rebooting the
system
Multiple installable file systems including MSDOS FAT ( File Allocation Table), High
Performance File System(HPFS), the CDROM file system and the NT File
System(NTFS)
12
I/O Manager
Mapped file I/O capabilities for image
activation, file caching and application use
Packet driven I/O system. Every I/O request is
represented by an IRP (I/O Request Packet)
that moves from one I/O system component to
the other
Manages buffers for I/O requests
Provides time-out support for drivers
Records which installable components are
loaded in the system
13
I/O Manager - cont’d
NTFS extends MS-DOS FAT with HPFS with:
– Quick recovery of disk data after system
failure
– Ability to handle very large files (17 billion
GB)
– Security features (e.g. execute only files)
– Support for POSIX OS environments
– Features for future extensibility(e.g.
transaction-based operations to enhance fault
tolerance,user-controlled file version numbers,
flexible options for file naming and file
attributes)
14
Kernel Layer
Schedules threads to run.
Handles hardware interrupts and dispatches
them to appropriate drivers and threads.
Handles software and hardware generated
exceptions (e.g. writing to non-existing
memory position, memory parity errors)
Graceful system shutdown and restoration after
power failure
Provides an API to the executive to kernelmanaged objects (e.g. events, mutexes,
semaphores and timers)
15
Hardware Abstraction Layer
Isolates the kernel from hardware variations
Exports an API to upper layers to handle hardware
dependent issues such as:
– Processor initialization( support for SMP
computers)
– Instruction cache and data cache
– Device driver support(e.g. bus addressing,
interrupt control, DMA functions)
– Timing and interrupt functions
– Firmware interface functions
– Low level error handling
16
Environment subsystem
User mode process that provides services to
applications
These services emulate the behavior of a specific
OS
Converts requests made by an application to
requests that NT’s kernel mode component
understand
Implemented using Client/Server model:
– Application
Client
– Environment subsystem
Server
17
Win32 Subsystem
Implements the Win32 API
Each Win32 application runs on its own
address space separate from Win32
subsystems’ address space
Manages all the keyboard and mouse input and
all screen output for entire system
acts as a server to the other
environment subsystems
18
Win32 Subsystem - cont’d
19
OS/2 Subsystem
Supports OS/2 up to 1.3 character-mode
applications
Each OS/2 application runs on its own separate
address space and separate from the OS/2
subsystem’s address space
POSIX Subsystem
Supports POSIX character-mode applications
Each POSIX application runs on its own
separate address space and separate from
POSIX subsystem’s address space
20
MS-DOS Environment
Associates each DOS application with Virtual
DOS Machines (VDM)
Each DOS applications runs on its own address
space
A VDM provides the DOS application with:
– Execution of Intel x86 instructions
– Simulated DOS INT 21 services
– Simulated DOS BIOS interrupt services
– Simulated standard PC hardware devices
21
MS-DOS Environment - Cont’d
22
Windows 16-Bit Environment
All Win16 applications are supported by a
single VDM called WOW (Win16 on Win32)
WOW is like a virtual windows machine
The WOW runs on an address space separate
from all other user level processes
A WOW emulates a PC as a DOS VDM does
WOW converts Win16 API’s and messages to
and from Win32
The Win32 subsystem is used to execute the
translated calls
23
Win 16-Bit Environment – cont’d
Each Win16 application is assigned to a
different thread within the WOW VDM
process
Each such thread must yield control before
another thread of the WOW is allowed to run
If Win16 application crashes it may take the
whole WOW down but it does not affect the
other Win 32 applications
24
Summary
25
Bibliography
http://www.win2000mag.com/
Windows NT server 4.0 Administrator’s
Bible, R.Cowart and K.Gregg, IDG Books
Inside Windows NT Workstation, George
Eckel, New Riders, 1996.
26
Any Questions
?
27