1 / 23

Windows 2000 System Architecture Course Overview

This course summary from the Computing Department at Lancaster University, UK covers key areas of Windows 2000 system architecture, including components, subsystems, kernel functionality, processes, threads, scheduling, memory management, and networking concepts. It provides in-depth insights into the design objectives, environment subsystems, kernel-mode programming environment, and memory management principles of Windows 2000.

steadham
Download Presentation

Windows 2000 System Architecture Course Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Windows 2000 Course Summary Computing Department, Lancaster University, UK

  2. Overview • Goals • Provide a summary of the whole course • Highlight key areas of importance

  3. System Architecture (1) • What is Windows 2000? • Features overview • Design objectives • How these differ from Win9x • Product Packaging • Key Concepts • Win32 API • Processes, Thread and Jobs • Virtual Memory • Kernel Mode vs. User Mode • Registry

  4. System Architecture (2) • Windows 2000 Architecture Components • Executive • Kernel • HAL • Device Drivers • Win32 User/GDI • In further detail: • The role of each component • Interaction between components

  5. System Architecture (3) • Environment Subsystems • Subsystem Components and their Role • Overview of OS/2, POSIX and Win32 subsystems • Subsystem Function Paths • Image Headers (Subsystem Type/Native Images) • POSIX Experimentation

  6. System Architecture (4) • OS Kernel Functionality • NTOSKRNL.EXE • Internal Naming Convention • Listing Undocumented Functions • Mechanism for Invoking System Functions from User Mode • Differences between Win32 and NtDll.Dll • Location of Operating System code • System Processes • Processed-Based Windows 2000 Code • Process Creation Hierarchy • System Start-up Processes

  7. System Mechanisms (1) • Objects and Handles • Introduction to objects • Benefits of using objects • Different types of Win32 objects • Kernel objects, GDI objects and User objects • Handles and Reference Counts • Security • Object Manager Functionality

  8. System Mechanisms (2) • Kernel Mode Programming Environment • Invoking Kernel-Mode Routines • Trap Dispatching • Interrupts and Exceptions • How interrupts/exceptions are generated • Dispatching of Interrupts • Interrupt Precedence via IRQLs • Software Interrupts • Hardware Interrupt Processing on x86

  9. Overview of Windows 2000 Management Mechanisms • The registry • Contents • Organisation • Access • Services • General concepts • Components • Examples • Windows Management Instrumentation • Windows 2000 WMI-enabled tools

  10. Processes, Threads and Scheduling (1) • What are processes, threads and jobs? • In further detail: • What each process has associated with it • Viewing process information • What each thread has associated with it • Viewing thread information • Fibers • General concepts / implementation “environment” • Win32 process and thread APIs • Exiting of processes • Different API calls used

  11. Processes, Threads and Scheduling (2) • General scheduling concepts • Views of priorities • The Win32 point of view • The Windows 2000 scheduler point of view • Win32 priorities versus kernel priorities • Manual process priority adjustments • Win32 scheduling-related APIs • Thread scheduling • General Windows 2000 scheduler concepts • Multiprocessor issues • Scheduling scenarios: preemption, voluntary switch, running thread experiences quantum end

  12. Processes, Threads and Scheduling (3) • Thread scheduling (cont.) • Quantum details • Thread scheduling states • Watching the scheduler • Priority adjustments • Applicable classes • Non applicable classes • Boosting • Conditions for boosting • General concepts • CPU starvation • Balance Set Manager

  13. Processes, Threads and Scheduling (4) • Thread scheduling (cont.) • Multiprocessor support • Concept of soft affinity • Concept of hard affinity • Hard affinity example

  14. Memory Management (1) • Virtual memory • General principles • Application’s view • Mapping virtual memory to physical memory pages • Virtual address space • Windows 2000 memory manager • Virtual address space allocation • Different regions • Page sizes within NT and 2000

  15. Memory Management (2) • Virtual address space (cont.) • Division between process space and system space • Process space - unique per process, user accessible • Contents • System space - system wide, kernel mode accessible • Contents • Windows 9x virtual address space • Additional user-mode shared memory - system wide • Virtual address translation

  16. Memory Management (3) • Physical memory • Maximum memory support • Under NT • Under 2000 via extended addressing support - “PAE” • Increased limits under 64-bit Windows 2000 • Page files • Size • Events when page file space runs low • Who is consuming space? • Page faults

  17. Memory Management (4) • Physical memory (cont.) • Working set • General concepts • Working set limit • Page replacement algorithm • System services • Adjust size, self-initiated trimming • System working set • Accounting for physical memory usage • Memory management information • General, process and physical memory information

  18. Windows Networking (1) • OSI model and Windows 2000 networking components • OSI reference model overview • Mapping of components against OSI layers • What each component does, and what layer it fits into • Networking APIs • Transport Driver Interface (TDI) clients • TDI transports (also known as protocol drivers) • NDIS library • NDIS miniport drivers

  19. Windows Networking (2) • Windows 2000 networking stack: • Services • Remote access • Active directory • File replication service • Network load balancing • Networking APIs • Windows Sockets (Winsock) • Named pipes and mailslots • Remote procedure call (RPC) • NetBIOS • Other • Telephony API, DCOM, message queuing

  20. Windows Networking (3) • Windows 2000 networking stack: (cont.) • Protocol drivers • Purpose • Drivers natively supported by Windows 2000 • Other driver support • NDIS drivers • Purpose • NDIS 5 features

  21. Windows Networking (4) • Winsock2 • Basic concepts • Overview of main features • Simultaneous access to multiple transport protocols • Winsock2 API / SPI separation • Winsock2 DLL • Winsock1.1 backward compatibility • Source code compatibility • Binary compatibility • Layered protocol architecture • Layered protocols and base protocols • Protocol chains

  22. I/O System, Cache Manager, File Systems (1) • I/O System • Design goals • Components • I/O operations • Flow of a typical I/O request • Types of device driver • Including user-mode drivers… • Win32 I/O APIs • Device-independent APIs • Device-type-dependent APIs

  23. I/O System, Cache Manager, File Systems (2) • Cache Manager • Overview • File system types supported • Types of data to be cached • Key features • Interaction between cache and memory manager • File Systems • Others • CDFS, UDF, FAT12, FAT16 and FAT32 • NTFS • Overview • Advanced features

More Related