• Home
  • Textbooks
  • Operating System Concepts Essentials
  • Operating-System Structures

Operating System Concepts Essentials

Abraham Silberschatz, Peter B. Galvin, Greg Gagne

Chapter 2

Operating-System Structures - all with Video Answers

Educators


Chapter Questions

04:04

Problem 1

What is the purpose of system calls?

Tommy Nguyen
Tommy Nguyen
Numerade Educator
01:12

Problem 2

What are the five major activities of an operating system with regard to process management?

Hubert Agamasu
Hubert Agamasu
Numerade Educator
01:43

Problem 3

What are the three major activities of an operating system with regard to memory management?

Adam Conner
Adam Conner
Numerade Educator
01:12

Problem 4

What are the three major activities of an operating system with regard to secondary-storage management?

Hubert Agamasu
Hubert Agamasu
Numerade Educator

Problem 5

What is the purpose of the command interpreter? Why is it usually separate from the kernel?

Check back soon!
00:59

Problem 6

What system calls have to be executed by a command interpreter or shell in order to start a new process?

Adam Conner
Adam Conner
Numerade Educator
04:04

Problem 7

What is the purpose of system programs?

Tommy Nguyen
Tommy Nguyen
Numerade Educator

Problem 8

What is the main advantage of the layered approach to system design? What are the disadvantages of the layered approach?

Check back soon!
01:12

Problem 9

List five services provided by an operating system, and explain how each creates convenience for users. In which cases would it be impossible for user-level programs to provide these services? Explain your answer.

Hubert Agamasu
Hubert Agamasu
Numerade Educator

Problem 10

Why do some systems store the operating system in firmware, while others store it on disk?

Check back soon!
01:35

Problem 11

How could a system be designed to allow a choice of operating systems from which to boot? What would the bootstrap program need to do?

Adam Conner
Adam Conner
Numerade Educator

Problem 12

The services and functions provided by an operating system can be divided into two main categories. Briefly describe the two categories and discuss how they differ.

Check back soon!
01:12

Problem 13

Describe three general methods for passing parameters to the operating system.

Hubert Agamasu
Hubert Agamasu
Numerade Educator
00:41

Problem 14

Describe how you could obtain a statistical profile of the amount of time spent by a program executing different sections of its code. Discuss the importance of obtaining such a statistical profile.

Emily Himsel
Emily Himsel
Numerade Educator
01:12

Problem 15

What are the five major activities of an operating system with regard to file management?

Hubert Agamasu
Hubert Agamasu
Numerade Educator
00:46

Problem 16

What are the advantages and disadvantages of using the same systemcall interface for manipulating both files and devices?

Maxime Rossetti
Maxime Rossetti
Numerade Educator

Problem 17

Would it be possible for the user to develop a new command interpreter using the system-call interface provided by the operating system?

Check back soon!

Problem 18

What are the two models of interprocess communication? What are the strengths and weaknesses of the two approaches?

Check back soon!
01:48

Problem 19

Why is the separation of mechanism and policy desirable?

Sanchit Jain
Sanchit Jain
Numerade Educator
View

Problem 20

It is sometimes difficult to achieve a layered approach if two components of the operating system are dependent on each other. Identify a scenario in which it is unclear how to layer two system components that require tight coupling of their functionalities.

Nick Johnson
Nick Johnson
Numerade Educator
View

Problem 21

What is the main advantage of the microkernel approach to system design? How do user programs and system services interact in a microkernel architecture? What are the disadvantages of the microkernel approach?

James Kiss
James Kiss
Numerade Educator

Problem 22

In what ways is the modular kernel approach similar to the layered approach? In what ways does it differ from the layered approach?

Check back soon!

Problem 23

What is the main advantage for an operating-system designer of using a virtual-machine architecture? What is the main advantage for a user?

Check back soon!

Problem 24

Why is a just-in-time compiler useful for executing Java programs?

Check back soon!

Problem 25

What is the relationship between a guest operating system and a host operating system in a system like VMware? What factors need to be considered in choosing the host operating system?

Check back soon!

Problem 26

The experimental Synthesis operating system has an assembler incorporated in the kernel. To optimize system-call performance, the kernel assembles routines within kernel space to minimize the path that the system call must take through the kernel. This approach is the antithesis of the layered approach, in which the path through the kernel is extended to make building the operating system easier. Discuss the pros and cons of the Synthesis approach to kernel design and system-performance optimization.

Check back soon!

Problem 27

In Section 2.3, we described a program that copies the contents of one file to a destination file. This program works by first prompting the user for the name of the source and destination files. Write this program using either the Win32 or POSIX API. Be sure to include all necessary error checking, including ensuring that the source file exists.
Once you have correctly designed and tested the program, if you used a system that supports it, run the program using a utility that traces system calls. Linux systems provide the ptrace utility, and Solaris systems use the truss or dtrace command. On Mac OS X, the ktrace facility provides similar functionality. As Windows systems do not provide such features, you will have to trace through the Win32 version of this program using a debugger.

Check back soon!