27
1 Windows NT Windows NT A Distributed A Distributed Architecture Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali Abbas (Video-Tape)

1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

Embed Size (px)

Citation preview

Page 1: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

1

Windows NT Windows NT A Distributed ArchitectureA Distributed Architecture

Professor: Mohamed Khalil

CSE 8343

GROUP-A5

Dhaval Sanghvi

Amit Sharma

Ali Abbas (Video-Tape)

Page 2: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

2

AgendaAgendaFeaturesDesign goals of Windows NTArchitecture

• Three Layers Upper Layer - Executive Middle Layer - Kernel Lower Layer - Hardware Abstraction Layer

Environment SubsystemSummaryBiblography

Page 3: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

3

Features Features

Preemptive MultitaskingSupport for Symmetric Multiprocessing Integrated Networking servicesClient/Server ArchitectureSupport for several file systemsVirtual Memory ManagementSupport for 2 GB linear space for application

and also 2GB for OS

Page 4: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

4

Design goals of Windows NTDesign goals of Windows NTExtensibility PortabilityReliability CompatibilitySecurityPerformanceScalability Localization

Page 5: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

5

Windows NT ArchitectureWindows NT ArchitectureWindows 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 layerMiddle layer - The kernelLower layer - Hardware Abstraction

Layer(HAL)User Mode is composed of environment

subsystems.

Page 6: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

6

Architecture - cont’d

Page 7: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

7

Executive LayerExecutive LayerEach component of NT Executive provides a set of API’sSome API’s are designed to be invoked by user-mode

processes.Some API’s are visible only in the kernel mode inside the

ExecutiveNT’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

Page 8: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

8

Object ManagerObject 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.

Page 9: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

9

Security Reference MonitorSecurity 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

Page 10: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

10

Process ManagerProcess ManagerCreates,deletes and modifies processes and threadsDoes not dispatch or schedules any work. This is

done by the kernelA process is represented within NT by a process

objectProcess Object = (process’ virtual address space,

resources visible to the process, process threads)NT does not maintain parent-child information

between related processes.

Page 11: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

11

Virtual Memory Manager(VMM)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

Page 12: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

12

VMM - cont’dVMM - cont’d

Drivers can be dynamically loaded, unloaded, started and stopped without rebooting the system

Multiple installable file systems including MS-DOS FAT ( File Allocation Table), High Performance File System(HPFS), the CD-ROM file system and the NT File System(NTFS)

Page 13: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

13

I/O ManagerI/O ManagerMapped file I/O capabilities for image

activation, file caching and application usePacket 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 requestsProvides time-out support for driversRecords which installable components are

loaded in the system

Page 14: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

14

I/O Manager - cont’dI/O Manager - cont’dNTFS 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)

Page 15: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

15

Kernel LayerKernel LayerSchedules 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 kernel-managed objects (e.g. events, mutexes, semaphores and timers)

Page 16: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

16

Hardware Abstraction LayerHardware Abstraction Layer Isolates the kernel from hardware variationsExports 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

Page 17: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

17

Environment subsystemEnvironment subsystemUser mode process that provides services to

applicationsThese services emulate the behavior of a specific

OSConverts requests made by an application to

requests that NT’s kernel mode component understand

Implemented using Client/Server model:– Application Client– Environment subsystem Server

Page 18: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

18

Win32 SubsystemWin32 Subsystem Implements the Win32 APIEach 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

Page 19: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

19

Win32 Subsystem - cont’dWin32 Subsystem - cont’d

Page 20: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

20

OS/2 SubsystemOS/2 SubsystemSupports OS/2 up to 1.3 character-mode

applicationsEach OS/2 application runs on its own separate

address space and separate from the OS/2 subsystem’s address space

POSIX SubsystemSupports POSIX character-mode applicationsEach POSIX application runs on its own

separate address space and separate from POSIX subsystem’s address space

Page 21: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

21

MS-DOS EnvironmentMS-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

Page 22: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

22

MS-DOS Environment - Cont’dMS-DOS Environment - Cont’d

Page 23: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

23

Windows 16-Bit EnvironmentWindows 16-Bit EnvironmentAll Win16 applications are supported by a single

VDM called WOW (Win16 on Win32)WOW is like a virtual windows machineThe WOW runs on an address space separate from

all other user level processesA WOW emulates a PC as a DOS VDM doesWOW converts Win16 API’s and messages to and

from Win32The Win32 subsystem is used to execute the

translated calls

Page 24: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

24

Win 16-Bit Environment – cont’dWin 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

Page 25: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

25

Summary

Page 26: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

26

BibliographyBibliography

http://www.win2000mag.com/Windows NT server 4.0 Administrator’s

Bible, R.Cowart and K.Gregg, IDG BooksInside Windows NT Workstation, George

Eckel, New Riders, 1996.

Page 27: 1 Windows NT A Distributed Architecture Windows NT A Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali

27

Any Questions Any Questions

?