CS 3733 Operating Systems
Lecture 42 [4/24/98]: NT Continued and Review
Replacement
- Takes first from from free list and replaces it
- Also faults adjacent pages
- If no frames on free list, uses per-process FIFO
- Processes start with default working set of 30 pages
- NT periodically tells a valid page if if no faults occur,
working set reduced by 1
- Processes with a lot of faults may get allocation increased.
Process Manager - doesn't keep parent-child relationships
Local Procedure Call (LPC)
- uses message passing
- server publishes visible connection-port object
- client opens handle to port and sends a connection request
- server creates a channel and returns a handle
- channel consists of pair of ports for two way communication
- accept callbacks so that they can take requests rather than replies
- three types of messages:
- small (upto 256 bytes) - uses ports message queue for storage
- larger - shared memory object is created and message contains
pointer to memory object
- quick LPC
- used for Win32 subsystem
- server ents up dedicated thread, 64 KB section object and
event-pair object to notify server when client has copied a message
or vice versa.
I/O Manager
- responsible for file systems, cache, device drivers and network drivers
- converts all request to I/O request packet (IRP)
- forwards IRPs to correct drivers
- last driver sends IRP to I/O manager to complete request
- VM maps up to 1/2 of system address space to file cache
- Cache deviced up into 256 KB blocks
- each cache block can hold a view represented by a
virtual address control block (VACB)
- For each open file, the cache manager has a separate VACB table
Skill: Have a basic overview of NT design
Revised 4/24/98