Windows
Windows
Windows
Windows
Chapter 11
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
History of Windows through
Windows 8.1
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
2000s: NT-based Windows (2)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Hardware Abstraction Layer
Figure 11-14. Simplified depiction of device stacks for two NTFS file
volumes. The I/O request packet is passed from down the stack. The
appropriate routines from the associated drivers are called at each
level in the stack. The device stacks themselves consist of device
objects allocated specifically to each stack.
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Device Drivers (2)
Figure 11-14. Simplified depiction of device stacks for two NTFS file
volumes. The I/O request packet is passed from down the stack. The
appropriate routines from the associated drivers are called at each
level in the stack. The device stacks themselves consist of device
objects allocated specifically to each stack.
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Implementation
of the Object
Manager
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Object Name Space (3)
Use of parse procedure:
1. Executive component passes Unicode pathname for
namespace
2. Object manager searches through directories and
symbolic links
3. Object manager calls the Parse procedure for object
type
4. I/O manager creates IRP, allocate file object, send
request to stack of I/O devices
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Object Name Space (4)
Use of parse procedure:
5. IRP passed down the I/O stack until it reaches
device object representing the file system instance
6. Device objects encountered as the IRP heads
toward the file system represent file system filter
drivers
7. File system device object has a link to file system
driver object
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Object Name Space (5)
Use of parse procedure:
8. NTFS fills in file object and returns it to I/O
manager, which returns back up through all devices
on the stack
9. Object manager is finished with its namespace
lookup
10. Final step is to return back to the user-mode caller
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Object Name Space (6)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Thread Pools and User-Mode
Scheduling (2)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Job, Process, Thread, and Fiber
Management API Calls (2)
Differences from UNIX:
4. Inheritance of file descriptors in UNIX a property the
handle. In Windows is also property of handle to
process creation.
5. New processes directly passed information about
primary window in Win32. Passed as parameters to
GUI applications in UNIX.
6. Windows does not have SETUID bit as property of
the executable, but one process can create a process
that runs as a different user (with proper token)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Job, Process, Thread, and Fiber
Management API Calls (3)
Differences from UNIX:
7. Process and thread handle returned from Windows
can be used at any time to modify new
process/thread in many ways.
UNIX only makes modifications to new process
between fork and exec calls, and only in limited ways
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Implementation of Processes
and Threads (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Scheduling (2)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
The Page Replacement Algorithm (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Physical Memory Management (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
I/O Request Packets
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Device
Stacks
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Implementation of the NT File System (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Storage Allocation (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Storage Allocation (2)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
File Compression
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Security API Calls (1)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Security API Calls (2)
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.
Security Mitigations
Chapter 11
Tanenbaum & Bo, Modern Operating Systems:4th ed., (c) 2013 Prentice-Hall, Inc. All rights reserved.