windows nt a distributed architecture

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)

Upload: marah-livingston

Post on 02-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

Windows NT A Distributed Architecture. Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali Abbas (Video-Tape). Agenda. Features - PowerPoint PPT Presentation

TRANSCRIPT

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)

2

AgendaAgendaFeaturesDesign goals of Windows NTArchitecture

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

Environment SubsystemSummaryBiblography

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

4

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

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.

6

Architecture - cont’d

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

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.

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

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.

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

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)

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

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)

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)

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

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

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

19

Win32 Subsystem - cont’dWin32 Subsystem - cont’d

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

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

22

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

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

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

25

Summary

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.

27

Any Questions Any Questions

?