13.07.2015 Views

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

chapter 7THE USER INTERFACEWe have seen how operating systems satisfy the Resource and Beautification Principlesand thereby provide resources and services to processes. We will now change our perspectiveto see how the operating system satisfies these principles to provide resourcesand services to users. In particular, we will look at how a user can specify what programsto run and how they should be treated. We will also mention a number of programsthat are packaged with most operating systems to provide an environment in whichusers can get their work done.It is not easy to draw a line separating the operating system from extraneous programsthat happen to be running under that operating system. One attitude we could takeis that the operating system includes only those functions that can be accessed throughservice calls or through interrupts. Figure 3.23 places these functions in the kernel. Mostof this chapter is irrelevant to operating systems defined in this narrow way. The attitudeat the other extreme is that the operating system includes every program running on thecomputer. In that case, a full discussion of operating systems must describe all the algorithmsthat might be programmed; that would certainly encompass all of computer science.We will take an intermediate stance. The term ‘‘operating system’’ will include allthe standard programs that are included in any distribution of the software. We can distinguishkernel software, which requires hardware privileges to perform its functions;essential utilities, which may not require privilege but which every user needs and whichdetermine the user’s view of the operating system; and optional utilities, which are usefulprograms that users may wish to use on occasion.Different operating systems make these distinctions in different ways. For some,like Multics, kernel software is itself divided into layers. Command interpretation (discussedin this chapter), an essential utility on some operating systems, is an optional utilityunder Unix. The file manager (discussed at great length in Chapter 6) can be consideredeither as part of the kernel or as an essential utility.This chapter deals primarily with functions provided by the operating system eitheras essential or as optional utilities. Essential utilities shape the user’s view of the234

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!