Page 321 - DCAP103_Principle of operating system
P. 321
Principles of Operating Systems
Notes mutex covering the whole system before doing anything. While this approach eliminated potential
inconsistencies, it also eliminated the most of the values of multiprogramming since processes were
frequently forced to wait for unrelated processes to leave the kernel before they could enter it.
Second, each Windows 98 process had a 4-GB virtual address space. Of this, 2 GB was completely
private to the process. However, the next 1 GB was shared (writably) among all other processes
in the system. The bottom 1 MB was also shared among all processes to allow all of them to
access the MS-DOS interrupt vectors. This sharing facility was heavily used by most Windows
98 applications. As a consequence, a bug in one program could wipe out key data structures
used by unrelated processes, leading to whole crashing. Worse yet, the last 1 GB was shared
(writably) with the kernel and contained some critical kernel data structures. Any rogue program
that overwrote these data structures with garbage could bring down the system. The obvious
solution of not putting kernel data structures in user space was not possible because this feature
was essential to making old MS-DOS programs work under Windows 98.
In the millennium year, 2000, Microsoft brought out a minor revision to Windows 98 called
Windows Me (Windows Millennium Edition). Although it fixed a few bugs and added a
few features, under the covers it is essentially Windows 98. The new features included better
ways to catalog and share images, music, and movies, more support for home networking and
multiuser games, and more Internet-related features, such as support for instant messaging and
broadband connections (cable modems and ADSL). One interesting new feature was the ability
to restore the computer to its previous settings after a misconfiguration. If a user reconfigures
the system (e.g., changing the screen from 640 × 480 to 1024 × 768) and it no longer works, this
feature makes it possible to revert back to the last known working configuration.
10.1.3 Windows NT
By the late 1980s, Microsoft realized that building a modern 32-bit operating system on the top
of the leaky 16-bit MS-DOS probably was not the best way to go. It recruited David Cutler, one
of the key designers of DEC’s VMS operating system, to work for Microsoft and gave him the
job of leading a team to produce a brand-new 32-bit Windows compatible operating system
from the ground up. This new system, later called Windows NT (Windows New Technology),
was intended for mission-critical business applications as well as for home users. At the time,
mainframes still ruled the (business) world, so designing an operating system on the assumption
that companies would use personal computers for anything important was a visionary goal,
but one that history has shown to be a very good one. Features such as security and high
reliability, clearly lacking on the MS-DOS-based versions of Windows, were high on the agenda
for (Windows) NT. Cutler’s background with VMS clearly shows in various places, with there
being more than a passing similarity between the design of NT and that of VMS.
The project succeeded and the first version, called Windows NT 3.1, was released in 1993.
This initial release number was chosen to match the number of Microsoft’s then popular 16-bit
Windows 3.1 system. Microsoft expected that NT would rapidly replace Windows 3.1 because
it was technically a far superior system.
Much to its surprise, nearly all users preferred to stick with the old 16-bit system they knew,
rather than upgraded to an unknown 32-bit system they did not know, however better it might
be. Furthermore, NT required far more memory than Windows 3.1 and there were no 32-bit
programs for it to run, so why bother? The failure of NT 3.1 to catch on in the marketplace was
the reason Microsoft decided to build a 32-bit-ish version of Windows 3.1, namely Windows
95. The continued user resistance to NT then caused Microsoft to produce Windows 98 and
finally Windows Me; each one claimed to be the very last release of the MS-DOS-based systems.
314 LOVELY PROFESSIONAL UNIVERSITY