WINDOWS 2000
History
• 1988: Gates approaches David Cutler
(DEC)
• 1993: WinNT Launched
• 2000: Windows 2000 (previously “NT5.0”)
• 2001 Windows XP (build 2600)
• 2003 Windows Server 2003
Goals
• Extensibility
– Code must be able to grow and change
as market requirements change.
• Portability
– The system must be able to run on
multiple hardware architectures and must
be able to move with relative ease to new
ones as market demands dictate.
Goals (con..)
• Reliability and Robustness
– Protection against internal malfunction
and external tampering.
– Applications should not be able to
harm the OS or other running applications.
• Compatibility
– User interface and APIs should be
compatible with older versions of
Goals (con..)
Windows as well as older operating
systems such as MS-DOS.
– It should also interoperate well with
UNIX, OS/2, and NetWare.
• Performance
– Within the constraints of the other
design goals, the system should be as fast
and responsive as possible on each
hardware platform.
System Components
• Executive: Contains the base operating
system services, such as memory
management,
• process and thread management,
security, I/O, and inter process
communication.
• Kernel: Consists of the most used and
most fundamental components of the
operating system.
System Components (con..)
• The kernel manages thread scheduling,
process switching, exception and interrupt
handling, and multiprocessor
synchronization.
• Unlike the rest of the Executive and the
user level, the kernel's own code does not
run in threads. Hence, it is the only part of
the operating system that is not premptible
or page able.
System Components (con..)
• Hardware abstraction layer (HAL): Maps
between generic hardware commands and
responses and those unique to a specific
platform. It isolates the operating system from
platform-specific hardware differences.
• The HAL makes each machine's system bus,
direct memory access (DMA) controller, interrupt
controller, system timers, and memory module
look the same to the kernel. It also delivers the
support needed for symmetric multiprocessing
(SMP), explained subsequently.
System Components (con..)
• Device drivers: Include both file system and hardware
device drivers that translate user I/O function calls into
specific hardware device I/O requests.
• Windowing and graphics system: Implements the
graphical user interface (GUI) functions, such as
dealing with windows, user interface controls, and
drawing.
• The Windows Executive includes modules for specific
system functions and provides an API for user-mode
software.
System Components (con..)
Following is a brief description of each of the
Executive modules:
• I/O manager: Provides a framework through
which I/O devices are accessible to
applications, and is responsible for dispatching
to the appropriate device drivers for further
processing.
• The I/O manager implements all the Windows
I/O APIs and enforces security
and naming for devices and file systems (using the
object manager).
System Components (con..)
• Cache manager: Improves the performance
of file-based I/O by causing recently
referenced disk data to reside in main memory
for quick access, and by deferring disk writes by
holding the updates in memory for a short time
before sending them to the disk.
• Object manager: Creates, manages, and
deletes Windows Executive objects and
abstract data types that are used to represent
resources such as processes, threads, and
synchronization objects.
System Components (con..)
• It enforces uniform rules for retaining, naming, and
setting the security of objects. The object manager also
creates object handles, which consist of access control
information and a pointer to the object.
• Plug and play manager: Determines which drivers are
required to support a particular device and loads
those drivers.
• Power manager: Coordinates power management
among various devices and can be configured to
reduce power consumption by putting the processor to
sleep.
System Components (con..)
• Security reference monitor: Enforces access-
validation and audit-generation rules. The
Windows object-oriented model allows for a
consistent and uniform view of security, right
down to the fundamental entities that make up
the Executive. Thus, Windows uses the same
routines for access validation and for audit
checks for all protected objects, including files,
processes, address spaces, and I/O devices.
•
System Components (con..)
• Virtual memory manager: Maps virtual
addresses in the process's address space to
physical pages in the computer's memory.
• Process/thread manager: Creates and
deletes objects and tracks process and
thread objects.
• Configuration manager: Responsible for
implementing and managing the system
registry, which is the repository for both system
wide and per-user settings of various
parameters.
System Components (con..)
• Local procedure call (LPC) Facility:
Enforces a client/server relationship
between applications and executive
subsystems within a single system, in a
manner similar to a remote procedure call
(RPC) facility used for distributed
processing.
11-16
File System API Calls in Windows 2000
(1)
• Principle Win32 API functions for file I/O
• Second column gives nearest UNIX equivalent
11-17
File System API Calls in Windows 2000 (2)
A program fragment for copying a file using
the Windows 2000 API functions
Ceng 334 - Operating Systems 11-18
File System API Calls in Windows 2000 (3)
• Principle Win32 API functions for directory
management
• Second column gives nearest UNIX
equivalent, when one exists
11-19
File System Structure (1)
The NTFS master file table
11-20
File System Structure (2)
The attributes used in MFT records
11-21
File System Structure (3)
An MFT record for a three-run, nine-block file
11-22
File System Structure (4)
A file that requires three MFT records to store its runs
11-23
File System Structure (5)
The MFT record for a small directory.
11-24
File Name Lookup
Ceng 334 - Operating Systems 11-25
File Compression
(a) An example of a 48-block file being compressed to 32
blocks
(b) The MTF record for the file after compression
11-26
File Encryption
Operation of the encrypting file system
user's public key
11-27
Security in Windows 2000
Structure of an access token
11-28
Security API Calls (1)
Example security descriptor for a file
11-29
Security API Calls (2)
Principal Win32 API functions for security
Caching in Windows 2000
The path through the cache to the
hardware

Windows 2000

  • 1.
  • 2.
    History • 1988: Gatesapproaches David Cutler (DEC) • 1993: WinNT Launched • 2000: Windows 2000 (previously “NT5.0”) • 2001 Windows XP (build 2600) • 2003 Windows Server 2003
  • 3.
    Goals • Extensibility – Codemust be able to grow and change as market requirements change. • Portability – The system must be able to run on multiple hardware architectures and must be able to move with relative ease to new ones as market demands dictate.
  • 4.
    Goals (con..) • Reliabilityand Robustness – Protection against internal malfunction and external tampering. – Applications should not be able to harm the OS or other running applications. • Compatibility – User interface and APIs should be compatible with older versions of
  • 5.
    Goals (con..) Windows aswell as older operating systems such as MS-DOS. – It should also interoperate well with UNIX, OS/2, and NetWare. • Performance – Within the constraints of the other design goals, the system should be as fast and responsive as possible on each hardware platform.
  • 6.
    System Components • Executive:Contains the base operating system services, such as memory management, • process and thread management, security, I/O, and inter process communication. • Kernel: Consists of the most used and most fundamental components of the operating system.
  • 7.
    System Components (con..) •The kernel manages thread scheduling, process switching, exception and interrupt handling, and multiprocessor synchronization. • Unlike the rest of the Executive and the user level, the kernel's own code does not run in threads. Hence, it is the only part of the operating system that is not premptible or page able.
  • 8.
    System Components (con..) •Hardware abstraction layer (HAL): Maps between generic hardware commands and responses and those unique to a specific platform. It isolates the operating system from platform-specific hardware differences. • The HAL makes each machine's system bus, direct memory access (DMA) controller, interrupt controller, system timers, and memory module look the same to the kernel. It also delivers the support needed for symmetric multiprocessing (SMP), explained subsequently.
  • 9.
    System Components (con..) •Device drivers: Include both file system and hardware device drivers that translate user I/O function calls into specific hardware device I/O requests. • Windowing and graphics system: Implements the graphical user interface (GUI) functions, such as dealing with windows, user interface controls, and drawing. • The Windows Executive includes modules for specific system functions and provides an API for user-mode software.
  • 10.
    System Components (con..) Followingis a brief description of each of the Executive modules: • I/O manager: Provides a framework through which I/O devices are accessible to applications, and is responsible for dispatching to the appropriate device drivers for further processing. • The I/O manager implements all the Windows I/O APIs and enforces security and naming for devices and file systems (using the object manager).
  • 11.
    System Components (con..) •Cache manager: Improves the performance of file-based I/O by causing recently referenced disk data to reside in main memory for quick access, and by deferring disk writes by holding the updates in memory for a short time before sending them to the disk. • Object manager: Creates, manages, and deletes Windows Executive objects and abstract data types that are used to represent resources such as processes, threads, and synchronization objects.
  • 12.
    System Components (con..) •It enforces uniform rules for retaining, naming, and setting the security of objects. The object manager also creates object handles, which consist of access control information and a pointer to the object. • Plug and play manager: Determines which drivers are required to support a particular device and loads those drivers. • Power manager: Coordinates power management among various devices and can be configured to reduce power consumption by putting the processor to sleep.
  • 13.
    System Components (con..) •Security reference monitor: Enforces access- validation and audit-generation rules. The Windows object-oriented model allows for a consistent and uniform view of security, right down to the fundamental entities that make up the Executive. Thus, Windows uses the same routines for access validation and for audit checks for all protected objects, including files, processes, address spaces, and I/O devices. •
  • 14.
    System Components (con..) •Virtual memory manager: Maps virtual addresses in the process's address space to physical pages in the computer's memory. • Process/thread manager: Creates and deletes objects and tracks process and thread objects. • Configuration manager: Responsible for implementing and managing the system registry, which is the repository for both system wide and per-user settings of various parameters.
  • 15.
    System Components (con..) •Local procedure call (LPC) Facility: Enforces a client/server relationship between applications and executive subsystems within a single system, in a manner similar to a remote procedure call (RPC) facility used for distributed processing.
  • 16.
    11-16 File System APICalls in Windows 2000 (1) • Principle Win32 API functions for file I/O • Second column gives nearest UNIX equivalent
  • 17.
    11-17 File System APICalls in Windows 2000 (2) A program fragment for copying a file using the Windows 2000 API functions
  • 18.
    Ceng 334 -Operating Systems 11-18 File System API Calls in Windows 2000 (3) • Principle Win32 API functions for directory management • Second column gives nearest UNIX equivalent, when one exists
  • 19.
    11-19 File System Structure(1) The NTFS master file table
  • 20.
    11-20 File System Structure(2) The attributes used in MFT records
  • 21.
    11-21 File System Structure(3) An MFT record for a three-run, nine-block file
  • 22.
    11-22 File System Structure(4) A file that requires three MFT records to store its runs
  • 23.
    11-23 File System Structure(5) The MFT record for a small directory.
  • 24.
  • 25.
    Ceng 334 -Operating Systems 11-25 File Compression (a) An example of a 48-block file being compressed to 32 blocks (b) The MTF record for the file after compression
  • 26.
    11-26 File Encryption Operation ofthe encrypting file system user's public key
  • 27.
    11-27 Security in Windows2000 Structure of an access token
  • 28.
    11-28 Security API Calls(1) Example security descriptor for a file
  • 29.
    11-29 Security API Calls(2) Principal Win32 API functions for security
  • 30.
    Caching in Windows2000 The path through the cache to the hardware