Unit 14 - Windows Operating Systems
Unit 14 - Windows Operating Systems
14.1 Introduction
In the previous unit, we have discussed about multiprocessor systems. Now
it is the time to focus our attention on most popular series of operating
systems viz. Windows.
Windows 2000, Windows XP and Windows Server 2003 are all part of the
Windows NT (New Technology) family of Microsoft operating systems. They
are all preemptive, reentrant operating systems, which have been designed
to work with either uniprocessor- or symmetrical multi processor (SMP)-
based Intel x86 computers. To process input/output (I/O) requests it uses
packet-driven I/O which utilizes I/O request packets (IRPs) and
asynchronous I/O. Starting with Windows XP, Microsoft began building in
64-bit support into their operating systems – before this their operating
systems were based on a 32-bit model. This unit briefly discusses about
various Windows operating systems.
Objectives:
After studying this unit, you should be able to:
explain the architectural details of Windows NT
discuss functionality and operations of Windows NT
describe the services of Windows NT
explain the deployment related issues in Windows NT
system reference that object and thereby determines whether the object can
be destroyed when a close request is sent to it. Every object exists in a
hierarchical object namespace.
Further executive subsystems are the following:
(i) I/O manager: It allows devices to communicate with user-mode
subsystems. It translates user-mode read and write commands in read or
write IRPs which it passes to device drivers. It accepts file system I/O
requests and translates them into device specific calls, and can incorporate
low-level device drivers that directly manipulate hardware to either read
input or write output. It also includes a cache manager to improve disk
performance by caching read requests and write to the disk in the
background
(ii) Security reference monitor (SRM): The primary authority for enforcing
the security rules of the security integral subsystem. It determines whether
an object or resource can be accessed, via the use of access control lists
(ACLs), which are made up of access control entries (ACEs). ACEs contain
a security identifier (SID) and a list of operations that the ACE gives a select
group of trustees – a user account, group account, or logon session –
permission (allow, deny, or audit) to that resource.
(iii) IPC manager: Short for Inter Process Communication Manager, this
manages the communication between clients (the environment subsystem)
and servers (components of the Executive). It can use two facilities: the
Local Procedure Call (LPC) facility (clients and servers on the one
computer) and the Remote Procedure Call (RPC) facility (where clients and
servers are situated on different computers. Microsoft has had significant
security issues with the RPC facility.
(iv) Virtual memory manager: It manages virtual memory, allowing
Windows 2000 to use the hard disk as a primary storage device (although
strictly speaking it is secondary storage). It controls the paging of memory in
and out of physical memory to disk storage.
(v) Process manager: It handles process and thread creation and
termination
(vi) PnP manager: It handles Plug and Play and supports device detection
and installation at boot time. It also has the responsibility to stop and start
devices on demand – sometimes this happens when a bus gains a new
device and needs to have a device driver loaded to support that device.
Both FireWire and USB are hot-swappable and require the services of the
PnP Manager to load, stop and start devices. The PnP manager interfaces
with the HAL, the rest of the executive (as necessary) and with device
drivers.
(vii) Power manager: The power manager deals with power events and
generates power IRPs. It coordinates these power events when several
devices send a request to be turned off it determines the best way of doing
this.
The display system has been moved from user mode into the kernel mode
as a device driver contained in the file Win32k.sys. There are two
components in this device driver – the Window Manager and the GDI.
(viii) Window manager: It is responsible for drawing windows and menus.
It controls the way that output is painted to the screen and handles input
events (such as from the keyboard and mouse), then passes messages to
the applications that need to receive this input
(ix) GDI: The Graphics Device Interface is responsible for tasks such as
drawing lines and curves, rendering fonts and handling palettes. Windows
2000 introduced native alpha blending into the GDI.
(x) Microkernel & kernel-mode drivers: The Microkernel sits between the
HAL and the Executive and provides multiprocessor synchronization, thread
and interrupt scheduling and dispatching, and trap handling and exception
dispatching. The Microkernel often interfaces with the process manager.
The microkernel is also responsible for initializing device drivers at boot-up
that are necessary to get the operating system up and running.
(xi) Hardware abstraction layer: The Windows NT Hardware Abstraction
Layer, or HAL, is a layer between the physical hardware of the computer
and the rest of the operating system. It was designed to hide differences in
hardware and therefore provide a consistent platform on which applications
may run. The HAL includes hardware specific code that controls I/O
interfaces, interrupt controllers and multiple processors.
Self-Assessment Questions
1. User mode in the Windows NT line is made of subsystems capable of
passing I/O requests to the appropriate kernel mode software drivers by
using the I/O manager. (True / False)
Manipal University Jaipur B1405 Page No. 239
Operating Systems Unit 14
The executive interfaces with all the user mode subsystems. It deals with
I/O, object management, security and process management. It contains
various components, including:
Object manager: A special executive subsystem that all other executive
subsystems must pass through to gain access to Windows 2000 resources.
This essentially is a resource management infrastructure service that allows
Windows 2000 to be an object oriented operating system.
I/O manager: Allows devices to communicate with user-mode subsystems
by translating user-mode read and write commands and passing them to
device drivers.
Security reference monitor (SRM): The primary authority for enforcing the
security rules of the security integral subsystem.
IPC manager: Manages the communication between clients (the
environment subsystem) and servers (components of the executive).
Virtual memory manager: Manages virtual memory, allowing Windows
2000 to use the hard disk as a primary storage device (although strictly
speaking it is secondary storage).
Process manager: Handles process and thread creation and termination.
PnP manager: Handles Plug and Play and supports device detection and
installation at boot time.
Power manager: The power manager coordinates power events and
generates power IRPs.
The display system is handled by a device driver contained in Win32k.sys.
The Window Manager component of this driver is responsible for drawing
windows and menus while the GDI (graphical device interface) component
is responsible for tasks such as drawing lines and curves, rendering fonts
and handling palettes.
The above features are same as that of Windows NT.
Self-Assessment Questions
4. Kernel mode in Windows 2000 has full access to the hardware and
system resources of the computer. (True / False)
5. GDI stands for ______________________________________.
contain many areas that only have zeroes. Reparse points allow the object
manager to reset a file namespace lookup and let file system drivers
implement changed functionality in a transparent manner. Reparse points
are used to implement Volume Mount Points, Directory Junctions,
Hierarchical Storage Management, Native Structured Storage and Single
Instance Storage. Volume mount points and directory junctions allow for a
file to be transparently referred from one file or directory location to another.
Encrypting file system
The Encrypting File System (EFS) introduced strong encryption into the
Windows file world. It allowed any folder or drive on an NTFS volume to be
encrypted transparently to the end user. EFS works in conjunction with the
EFS service, Microsoft's CryptoAPI and the EFS File System Run-Time
Library (FSRTL). As of February 2004, its encryption has not been
compromised.
EFS works by encrypting a file with a bulk symmetric key (also known as the
File Encryption Key, or FEK), which is used because it takes a relatively
smaller amount of time to encrypt and decrypt large amounts of data than if
an asymmetric key cipher is used. The symmetric key that is used to encrypt
the file is then encrypted with a public key that is associated with the user
who encrypted the file, and this encrypted data is stored in the header of the
encrypted file. To decrypt the file, the file system uses the private key of the
user to decrypt the symmetric key that is stored in the file header. It then
uses the symmetric key to decrypt the file. Because this is done at the file
system level, it is transparent to the user. Also, in case of a user losing
access to their key, support for recovery agents that can decrypt files has
been built in to the EFS system.
Basic and dynamic disk storage
Windows 2000 introduced the Logical Disk Manager for dynamic storage. All
versions of Windows 2000 support three types of dynamic disk volumes
(along with basic storage): simple volumes, spanned volumes and striped
volumes:
Simple volume: This is a volume with disk space from one disk.
Spanned volumes: Multiple disks spanning up to 32 disks. If one disk fails,
all data in the volume is lost.
Striped volumes: Also known as RAID-0, a striped volume stores all its
data across several disks in stripes. This allows better performance because
disk read and writes are balanced across multiple disks. Windows 2000 also
added support for iSCSI protocol.
Accessibility support
The Windows 2000 onscreen keyboard map allows users who have
problems with using the keyboard to use a mouse to input text.
Microsoft made an effort to increase the usability of Windows 2000 for
people with visual and auditory impairments and other disabilities. They
included several utilities designed to make the system more accessible.
FilterKeys are a group of keyboard related support for people with typing
issues, and include:
SlowKeys: Windows is told to disregard keystrokes that are not held down
for a certain time period.
BounceKeys: Multiple keystrokes to one key to be ignored within a certain
timeframe.
RepeatKeys: Allows users to slow down the rate at which keys are
repeated via the keyboard's key repeat feature.
ToggleKeys: When turned on, Windows will play a sound when either the
CAPS LOCK, NUM LOCK or SCROLL LOCK keys are pressed.
MouseKeys: Allows the cursor to be moved around the screen via the
numeric keypad instead of the mouse.
On screen keyboard: Assists those who are not familiar with a given
keyboard by allowing them to use a mouse to enter characters to the
screen.
SerialKeys: Gives Windows 2000 the ability to support speech
augmentation devices.
StickyKeys: Makes modifier keys (ALT, CTRL and SHIFT) become "sticky"
– in other words a user can press the modifier key, release that key and
then press the combination key. Normally the modifier key must remain
pressed down to activate the sequence.
On screen magnifier: Assists users with visual impairments by magnifying
the part of the screen they place their mouse over.
Narrator: Microsoft Narrator assists users with visual impairments with
system messages, as when these appear the narrator will read this out via
the sound system.
Manipal University Jaipur B1405 Page No. 245
Operating Systems Unit 14
system information viewer, the ability to view open shared folders and
shared folder sessions, a device manager and a tool to view all the local
users and groups on the Windows 2000 computer. It also contains a disk
management snap-in, which contains a disk defragmenter as well as other
disk management utilities. Lastly, it also contains a services viewer, which
allows users to view all installed services and to stop and start them on
demand, as well as configure what those services should do when the
computer starts.
REGEDIT.EXE utility
Windows 2000 comes bundled with two utilities to edit the Windows registry.
One acts like the Windows 9x REGEDIT.EXE program and the other could
edit registry permissions in the same manner that Windows NT's
REGEDT32.EXE program could. REGEDIT.EXE has a left-side tree view
that begins at "My Computer" and lists all loaded hives. REGEDT32.EXE
has a left-side tree view, but each hive has its own window, so the tree
displays only keys. REGEDIT.EXE represents the three components of a
value (its name, type, and data) as separate columns of a table.
REGEDT32.EXE represents them as a list of strings. REGEDIT.EXE was
written for the Win32 API and supports right-clicking of entries in a tree view
to adjust properties and other settings. REGEDT32.EXE was also written for
the Win32 API and requires all actions to be performed from the top menu
bar. Because REGEDIT.EXE was directly ported from Windows 98, it does
not support permission editing (permissions do not exist in Windows 9x).
Therefore, the only way to access the full functionality of an NT registry was
with REGEDT32.EXE, which uses the older multiple document interface
(MDI), which newer versions of REGEDIT do not use. Windows XP was the
first system to integrate these two programs into one, adopting the
REGEDIT.EXE behavior with the additional NT functionality.
The System File Checker (SFC) also comes bundled with Windows 2000. It
is a command line utility that scans system files and verifies whether they
were signed by Microsoft and works in conjunction with the Windows File
Protection mechanism. It can also repopulate and repair all the files in the
Dllcache folder.
Recovery console
The Recovery Console is usually used to recover unbootable systems. The
14.5 Summary
Let’s recapitulate important points discussed in this unit:
The Windows NT operating system family's architecture consists of two
layers (user mode and kernel mode), with many different modules within
both of these layers.
The user mode is made up of subsystems which can pass I/O requests
to the appropriate kernel mode drivers via the I/O manager (which exists
in kernel mode).
The environment subsystem was designed to run applications written for
many different types of operating systems.
The integral subsystem looks after operating system specific functions
on behalf of the environment subsystem.
Windows 2000 has support for many languages other than English.
Windows 2000 introduced the Microsoft Management Console (MMC),
which is used to create, save, and open administrative tools.
14.7 Answers
Self Assessment Questions
1. True
2. Hardware Abstraction Layer
3. a) GDI
4. False
5. Graphical Device Interface
6. b) IPC
7. True
8. Microsoft Management Console
9. c) Narrator
Terminal Questions
1. The Windows NT operating system family's architecture consists of two
layers (user mode and kernel mode), with many different modules within
both of these layers. User mode in the Windows NT line is made of
subsystems capable of passing I/O requests to the appropriate kernel
mode software drivers by using the I/O manager. (Refer section 14.2 for
detail)
–––––––––––––––––––––