such operating systems started as small, simple, and limited systems and then
grew beyond their original scope. MS-DOS is an example of such a system. It was
originally designed and implemented by a few people who had no idea that it
would become so popular. It was written to provide the most functionality in the least space, so it was not divided into modules carefully.
instance, application programs are able to access the basic I/O routines
to write directly to the display and disk drives. Such freedom leaves MS-DOS
vulnerable to errant (or malicious) programs, causing entire system crashes
when user programs fail. Of course, MS-DOS was also limited by the hardware
of its era. Because the Intel 8088 for which it was written provides no dual
mode and no hardware protection, the designers of MS-DOS had no choice but
to leave the base hardware accessible.
Another example of limited structuring is the original UNIX operating
system. UNIX is another system that initially was limited by hardware functionality.
It consists of two separable parts: the kernel and the system programs.
The kernel is further separated into a series of interfaces and device drivers,
which have been added and expanded over the years as UNIX has evolved. We
can view the traditional UNIX operating system as being layered, as shown in
Figure 2.11. Everything below the system call interface and above the physical
hardware is the kernel. The kernel provides the file system, CPU scheduling,
memory management, and other operating-system functions through system
calls. Taken in sum, that is an enormous amount of functionality to be combined
into one level. This monolithic structure was difficult to implement and
maintain.
No comments:
Post a Comment