|
1. Windows System Architecture Overview
A review of the general architecture of the
Windows operating systems, including the organization of
the Executive. Also covered: O/S emulation subsystems,
executive subsystems, control and dispatcher objects, threads
and processes.
2. Achieving Hardware Independence
Discussion of how the OS achieves its goal
of hardware independence, focusing on the role of the Hardware
Abstraction Layer (HAL). Details of the HAL's abstraction of
processor resources are discussed, such as the HAL's model for
port/register access.
3. Virtual Memory
How and why Windows implements virtual memory for user
applications and the operating system. Page Tables, Page Directories,
the PFN, and the VAD. Memory manager policy, including working sets.
How the memory manager can be tuned.
4. The Registry
How the Registry can be viewed and changed. How
the Registry is organized. Specific keys and values of where
common system information is stored. System tuning parameters
located in the Registry.
5. Dispatching and Scheduling
A discussion of how the OS selects
the next thread to run. Includes discussions of scheduling
on both single and multiple CPU systems.
|
|
6. The I/O Manager
This section describes the architecture
and structure of the Windows I/O Subsystem. Disk caching and
the cache manager are discussed. There is also a detailed
discussion of how device stacks are built by the Plug and
Play Manager, and how requests are forwarded from device to
device (and hence driver to driver) down the device stack.
7. Interprocess and Network Communications
How interprocess and network communications are implemented on Windows.
Includes a discussion of how the network communications stack is implemented.
8. Interrupt Request Levels and DPCs
How Windows manages interrupts, and
queues completion requests.
9. Multiprocessor Issues
This section details the key issues of Windows' SMP design,
including synchronization, both inside and outside the Microkernel.
Also discussed is the effect that designing for SMP has on systems
software running on uniprocessor systems.
10.Tools for Internals
A review of helpful internals
tools that are distributed with the OS or as part of the
Resource Kit. These include tools that shed light on
activities such as the Performance Monitor MMC snap-in, or
that help you view special information or perform specialized
activities like OH, POOLMON, WINOBJ, and GFLAGS. Also includes
brief discussion of the tools necessary for developing and
debugging kernel mode software, and how a
debug environment is setup for decoding the mysteries of crashed
systems and crash dumps.
|
|