Windows-98 Architecture - Next Gen Achievers

jaspersugarlandΛογισμικό & κατασκευή λογ/κού

14 Δεκ 2013 (πριν από 3 χρόνια και 7 μήνες)

82 εμφανίσεις


1

Windows 98 Architecture

Microsoft Windows 98 is a 32
-
bit operating system
with

built
-
in Internet connectivity, Plug and Play hardware support, high
performance, robustness, and backward compatibility with Windows 95.


Windows 98 components




Windows 98
features:




A complete 32
-
bit kernel



P
reemptive multitasking and multithreading support.




I
ntegrated 32
-
bit, protected
-
mode file system
,
32
-
bit ins
tallable file system drivers supporting FAT, FAT32, ISO 9660 (CD
-
ROM), ISO 13346 (Universal Disk Format/Digital Video Disc [UDF/DVD]), network redirection, and high performance.



F
i
le system drivers also support the use of long file names and an open, modu
lar architecture to handle future expansion.





The central information

hierarchical

database for Windows 98 is called the
registry
,

eliminating the need for Autoexec.bat,
Config.sys, and INI files
.

This work
s

as

central repository for hardware
-
specific in
formation for use by the hardware detection
and Plug and Play system components. Windows 98 maintains information about hardware components and devices that have
been identified through an enumeration or detection process, in the hierarchical structure of
the registry.



Earlier versions of Windows

used initialization (INI) files to store system
-
specific or application
-
specific information on the
state or configuration of the system
. INI files are text
-
based, limited to 64 KB in total size. Information store
d in INI files is
nonhierarchical and supports only two levels of information.The registry has no size restriction and can include both binary
and text values. The registry is hierarchically arranged, containing standardized values and the
HKEY_USERS

key s
tores
user
-
specific information.



Virtual Machine Manager manages resources needed for each application and system process running on the computer. Virtual
Machine Manager creates and maintains the virtual machine environments in which applications and syst
em processes run. A
virtual machine

(VM) is an environment in memory that, from the application's perspective, looks as if it is a separate
computer, complete with all the resources available on the physical computer that an application needs to run. Windo
ws 98
has a single VM called the System VM, in which all system processes run
.
The Virtual Machine Manager is responsible for

Process scheduling, Memory paging and
MS
-
DOS Mode support (for MS
-
DOS
-
based applications that must have exclusive
access to system r
esources).





Windows 98 uses
preemptive multitasking

for Win32
-
based applications.


Win32
-
based applications can take advantage of
multithreading
, a mechanism that Windows 98 provides to facilitate the ability to run applications concurrently. A Win32
-
base
d application running in the system is called a
process

in terms of the operating system. Each process consists of at least
a single thread of execution that identifies the code path flow as it is run by the operating system. A
thread

is a unit of code
tha
t can get a time slice from the operating system to run concurrently with other units of code, and must be associated with
a process. However, a Win32
-
based application can initiate multiple threads for a given process to enhance the application for
the us
er by improving throughput, enhancing responsiveness, and aiding background processing. Because of the preemptive

2

multitasking nature of Windows 98, threads of execution allow code to be smoothly processed in the background. Memory
Paging
.



Windows 98, uses

a demand
-
paged virtual memory system. This system is based on a flat, linear address space, accessed
using 32
-
bit addresses. Each process is allocated a unique virtual address space of 2 gigabytes (GB). The upper 2 GB is
shared, while the lower 2 GB is pr
ivate to the application. This virtual address space is divided into equal blocks, or
pages
.
Demand paging

is a method by which code and data are moved in pages from physical memory to a temporary paging file on
disk. As the information is needed by a proc
ess, it is paged back into physical memory on demand.



The
Memory Pager

maps virtual addresses from the process address space to physical pages in computer memory.



To support a 16
-
bit operating environment including Windows 3.1 and MS
-
DOS, the Intel proce
ssor architecture uses a
mechanism called a
segment.

Segments reference memory by using a 16
-
bit segment address, and a 16
-
bit offset address
within the segment. A segment is 64 KB in size, and performance of both applications and the operating system suff
er for
accessing information across segment boundaries. Windows 98 supports this memory model for backward compatibility to
Win16
-
based applications that were written for it by providing emulation by the Win16 subsystem
.




Windows 98 allows full use of the
4 GB of addressable memory space for all 32
-
bit operating system components and
applications. Each 32
-
bit application can access up to 2 GB of addressable memory space, enough to support the largest
desktop application.



Windows 98 features a layered file system architecture that supports multiple file systems, including the virtual file alloca
tion
table (VFAT), CD
-
ROM file system (CDFS), and UDF.
U
sers can specify names of up to 2
55 characters to identify their
documents.



Windows 98 features 32
-
bit, protected
-
mode code for reading information from


and writing information to


the file system
and the disk device. It also includes 32
-
bit dynamically sizable caching mechanisms, and

a full, 32
-
bit code path is available
from the file system to the disk device.



The Windows 98 file system architecture is made up of the following components:



Installable File System (IFS) Manager
. The IFS Manager is responsible for arbitrating access t
o different file
system components.




File system drivers
. The file system driver layer includes access to FAT
-
based disk devices, CD
-
ROM file systems,
32
-
bit Universal Disk Format (UDF) file system driver


and
32
-
bit
redirected network device support.




Blo
ck I/O subsystem
. The block I/O subsystem is responsible for interacting with the physical disk device.

It has
Input/Output Supervisor (IOS), a monolithic, 32
-
bit, protected
-
mode driver called
Port driver
, a 32
-
bit, protected
-
mode, universal driver model a
rchitecture for communicating with SCSI devices called SCSI layer and Miniport

T




Windows 98 architecture includes a component called Configura
tion Manager,
to support Plug and Play functionality. It

ensures that each device on the computer can use an interrupt request (IRQ), I/O port addresses, and other resources
without conflict with other devices.



Win32 Driver Model (WDM) support is implemen
ted in Windows 98 by adding a new layer to the existing VxD device driver
architecture that mimics the Windows NT kernel. Ntkern.vxd exposes this interface for WDM drivers, allowing vendors to
develop one driver for both Windows 98 and future versions of W
indows NT.



Windows 98 includes a core composed of three components


User, Kernel, and Graphics Device Interface (GDI) Each of
these components includes a pair of dynamic
-
link libraries (DLLs) (one 32
-
bit and one 16
-
bit) that provide services for the
appl
ications you run.

o

Many functions provided by the GDI


which are mostly complex, CPU
-
intensive functions


have been rewritten as
32
-
bit code to improve performance. Much of the window management code in the User components (small, fast
functions) remains

16
-
bit, thus retaining application compatibility.


3

o

T
he User component manages input from the keyboard, mouse, and other input devices and output to the user
interface (windows, icons, menus, and so on). It also manages interaction with the sound driver, t
imer, and
communications ports.

o

The Kernel provides base operating system functionality, including file I/O services, virtual memory management,
and task scheduling. When a user wants to start an application, the Kernel loads the EXE and DLL files for the

application. Exception handling is another service of the Kernel.
Exceptions

are events that occur as a program runs
and that require software outside the normal flow of control to be run. For example, if an application generates an
exception, the Kernel
is able to communicate that exception to the application to perform the necessary functions to
resolve the problem. The Kernel also allocates virtual memory, resolves import references, and supports demand
paging for the application. As the application run
s, the Kernel schedules and runs threads of each process owned by
an application.



The
Graphics Device Interface

(GDI) is the graphical system that manages what appears on the screen. It also provides
graphics support for printers and other output devices.

It draws graphic primitives, manipulates bitmaps, and interacts with
device
-
independent graphics drivers, including those for display and printer output device drivers.




The graphics subsystem provides graphics support for input and output devices. For re
liability and better performance,
Windows 98 uses a 32
-
bit graphics engine, also known as the device
-
independent bitmap (DIB) engine. This engine directly
controls graphics output to the screen, providing more reliable system performance. It also provides
a set of optimized generic
drawing functions for monochrome (1
-
bit), 16
-
color (4
-
bit), 256
-
color (8
-
bit), 65,535
-
color (16
-
bit), and 16,777,215
-
color
(24
-
bit) graphic devices and supports Bézier curves and paths.



The 32
-
bit Windows 98 printing subsystem p
rovides performance through smoother background printing and faster return
-
to
-
application time. By using background thread processing, the Windows 98 spooler passes data to the printer, as the printer is

ready to receive more information.



Windows 98 features a new 32
-
bit user interface that unifies information access into one utility to universally view local,
network, intranet, and Internet data. This new shell contains several d
esktop tools, including Network Neighborhood, the
selectable Active Desktop interface, and the selectable Active Channel interface.



All applications and tools can take advantage of the common controls offered by the shell, such as common dialog boxes, tre
e
views, and list views.