|
Next: The Human Up: The Computer Previous: Information Processing > Operating System ConceptsAs pointed out in section 2.1.3, operating systems serve two purposes, both making it easier for users to interact with a machine: managing a system's resources on the one hand and shielding users from the hardware on the other hand (3-5). System resources include, for example, CPU time, peripherals, and memory (4).
While this differentiation is debatable according to Silberschatz and Galvin, who point out that there is no universially accepted definition of what is part of the operating system and what is not (5), it gives an idea of how each layer provides a cleaner interface to the next layer (Tanenbaum 2). In other words, each layer could be regarded as a translator to the next layer, providing easier to use functions.
Unfortunately, this makes the undertaking of this paper a difficult one. A user's "conversation" with a computer system has to be regarded as a conversation with one or more layers, although the user only interacts with the surface. Thus, several parties may be responsible for utterances made by a system, the programmer(s) of a program, the programmers of an operating system, hardware suppliers, even administrators of a remote system (the latter will be further discussed in section 5.3.3). Furthermore, as pointed out in the previous section, errors occur due to different performance problems, be it a busy CPU or a network error. Figure 1, for example, shows an error message box from the Macintosh which was displayed after an application crash. Which layer is responsible for this error? Several factors may account for it, for example
Moreover, most users do not know anything about the layers of a system (and are not supposed to); thus, they are less likely to understand the reason for the crash. This point will be further discussed in section 5.3. > Next: The Human Up: The Computer Previous: Information Processing Tom Alby 2000-05-30 |