Windows NT A Distributed ArchitectureAgendaFeaturesDesign goals of Windows NTWindows NT ArchitecturePowerPoint PresentationExecutive LayerObject ManagerSecurity Reference MonitorProcess ManagerVirtual Memory Manager(VMM)VMM - cont’dI/O ManagerI/O Manager - cont’dKernel LayerHardware Abstraction LayerEnvironment subsystemWin32 SubsystemWin32 Subsystem - cont’dOS/2 SubsystemMS-DOS EnvironmentMS-DOS Environment - Cont’dWindows 16-Bit EnvironmentWin 16-Bit Environment – cont’dSlide 25BibliographyAny Questions1 Windows NT Windows NT A Distributed ArchitectureA Distributed Architecture Professor: Mohamed Khalil CSE 8343 GROUP-A5 Dhaval Sanghvi Amit Sharma Ali Abbas (Video-Tape)2AgendaAgendaFeaturesDesign goals of Windows NTArchitecture•Three LayersUpper Layer - ExecutiveMiddle Layer - KernelLower Layer - Hardware Abstraction LayerEnvironment SubsystemSummaryBiblography3Features Features Preemptive MultitaskingSupport for Symmetric MultiprocessingIntegrated Networking servicesClient/Server ArchitectureSupport for several file systemsVirtual Memory ManagementSupport for 2 GB linear space for application and also 2GB for OS4Design goals of Windows NTDesign goals of Windows NTExtensibility PortabilityReliability CompatibilitySecurityPerformanceScalability Localization5Windows 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.6Architecture - cont’d7Executive 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 subsystem8Object ManagerObject ManagerAn 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 objectsMostly everything passed around and processed within NT is represented as an object.9Security Reference MonitorSecurity Reference MonitorChecks for proper authorization before granting access to objectsObject 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 objectImplements 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 files10Process 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 drivers12VMM - cont’dVMM - cont’dDrivers can be dynamically loaded, unloaded, started and stopped without rebooting the systemMultiple 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)13I/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 otherManages buffers for I/O requestsProvides time-out support for driversRecords which installable components are loaded in the system14I/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)15Kernel 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 failureProvides an API to the executive to kernel-managed objects (e.g. events, mutexes, semaphores and timers)16Hardware Abstraction LayerHardware Abstraction LayerIsolates 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 handling17Environment 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 understandImplemented using Client/Server model:–Application Client–Environment subsystem Server18Win32
View Full Document