Windows 9x

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 144.226.173.68 (talk) at 19:08, 21 April 2007. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Windows "9x"
File:Am windows95 desktop.png
Screenshot of Windows 95, the first Windows in the 9x series
DeveloperMicrosoft
Working stateUnsupported
Source modelClosed source
Kernel typeMonolithic kernel
Default
user interface
Graphical User Interface
LicenseMS-EULA

Windows 9x is a term used to describe the DOS-based Microsoft Windows operating systems, Windows 95, Windows 98, and Windows Me, which were produced in the 1990s.

Overview

Unlike Windows 3.x, the Windows 9x operating systems are not running on top of MS-DOS. When the graphical user interface is launched, Windows switches from real mode to protected mode. For example, the memory management in Windows is different from the one in MS-DOS. However, MS-DOS is still important because Windows 9x will not start without using the MS-DOS boot component (IO.SYS).

Windows 9x consists of both 32-bit and 16-bit code. The Win32 API is entirely 32-bit, but DOS-based components, such as the boot loader and many of its device drivers are 16-bit. Additionally, some of the programs that ship with the operating system, such as ScanDisk and Disk Defragmenter, come in two versions: 16-bit (e.g. scandisk.exe) and 32-bit (e.g. scandskw.exe).

Windows 9x is designed to be a single-user system and the security model is therefore not comparable to the one in Windows NT. One reason of that is the FAT and FAT32 which are the only file systems that Windows 9x officially supports, although Windows NT also supports FAT. FAT and FAT32 have very limited security; every user that has access to a FAT drive also has access to all files on that drive. The file systems provide no access control lists like NTFS.[1]

Most of the feature set of the Windows 9x line of operating systems was merged with Windows NT with the release of Windows XP, which was the successor to both Windows 2000 and Windows Me.

Architecture

The user-mode parts of Windows 9x consists of three subsystems: the Win16 subsystem, the Win32 subsystem and MS-DOS. The GDI, which is a part of the Win32 and Win16 subsystems, is also a module that is loaded in user mode, unlike Windows NT where the GDI is loaded in kernel mode. The kernel-mode parts consists of the Virtual Machine Manager (VMM), the Installable File System Manager (IFSHLP), the Configuration Manager, and in newer releases also the WDM Driver Manager (NTKERN). As 32-bit OS Virtual Memory Space is 4 GByte, divided fixed, lower 2GBytes for application and upper 2GBytes for kernel per process

Registry

Like Windows NT, Windows 9x stores user-specific and configuration-specific settings in a large information database called the Windows registry. The registry eliminates the need of files such as Autoexec.bat, Config.sys, Win.ini, System.ini and other files with a .INI extension. Hardware-specific settings are also stored in the registry, and many device drivers uses the registry to load configuration data.

The registry consists of two files, User.dat and System.dat.

Virtual Machine Manager

The Virtual Machine Manager (VMM) is one of the core components of Windows 9x. VMM create virtual machine environments for system processes and Windows applications. VMM is the replacement for Win386 in Windows 3.x, and the file vmm32.vxd is a monolithic file which contains many basic VxDs that are needed for booting Windows.

Device drivers

Device drivers in Windows 9x can be virtual device drivers or WDM drivers. VxDs usually have the filename extensions .vxd or .386 and WDM compatible drivers usually use the extension .sys. The 32-bit VxD message server (msgsrv32) is a program that is able to load virtual device drivers (VxDs) at startup and then handle communication with the drivers. Additionally, the message server performs several background functions, including loading the Windows shell (such as Explorer.exe or Progman.exe).[2]

Another type of device drivers are .DRV drivers. These drivers are loaded in user-mode, and are commonly used to control devices such as multimedia devices. To provide access to these devices, a dynamic link library is required (such as MMSYSTEM.DLL).

File management

Like Windows for Workgroups 3.11, Windows 9x provides support for 32-bit file access, and unlike Windows 3.x, Windows 9x has support for the VFAT file system, allowing file names with a maximum of 255 character instead of having 8.3 filenames.

Limitations

Windows 9x has some known limitations, especially when compared to its successors:

  • 9x cannot take advantage of hyper-threading or dual-core CPUs
  • System resources, which refer to two 64K blocks of memory (the user heap and the GDI heap), are each limited to 64K.
  • Alpha compositing and therefore transparency effects, such as fade effects in menus, are not supported.
  • Maximum supported harddrive size is on all 9x (including Me) 137GBytes, there are unofficially solutions up to 2TBytes.
  • Files cannot be larger than 4 GB (FAT32) or 2 GB (FAT16) because the only built-in support of FAT16/FAT32, external commercial support for NTFS exists.
  • All 9x operating systems except Windows Me don't have generic built-in drivers for USB mass storage devices, generic external drivers up to USB 2.0 are available.
  • No DirectX 10 support, last compatible version is DirectX 9.0c October 2006.

Releases

  • Windows 95 original release
  • Windows 95 OEM Service Release 1 (OSR1)
  • Windows 95 OEM Service Release 2 (OSR2)
  • Windows 95 OEM Service Release 2.1 (OSR 2.1)
  • Windows 95 OEM Service Release 2.5
  • Windows 98 original release
  • Windows 98 Second Edition
  • Windows Millennium Edition (Me)

Plus! packs

References