Full file at

Similar documents
Chapter 2: Operating-System Structures

The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams.

Chapter 3: Operating-System Structures

Chapter 2: Operating-System Structures. Operating System Concepts Essentials 8 th Edition

Chapter 3: Operating-System Structures

Chapter 2: Operating-System

Chapter 2. Operating-System Structures

Chapter 2: Operating-System Structures

Operating-System Structures

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures

Chapter 3: Operating-System Structures

Chapter 2: System Structures

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management

Chapter 2: Operating-System Structures. Chapter 2: Operating-System Structures. Objectives. Operating System Services

Operating- System Structures

Chapter 2 Operating-System Structures

Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components

Operating-System Structures

Chapter 2: Operating-System Structures

Objectives. Chapter 2: Operating-System Structures. 2.1 Operating System Services

Often, more information is required when designing system call Information varies according to OS and types of system call

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

TDDI04, K. Arvidsson, IDA, Linköpings universitet Operating System Structures. Operating System Structures Overview. Operating System Services

Module 3: Operating-System Structures. Common System Components

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: System Structures

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

UNIT 2. OPERATING SYSTEM STRUCTURES

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne

OS Testbank. Random Questions Part 01

Lecture 2 Operating System Structures (chapter 2)

CS307: Operating Systems

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Introduction to PC Operating Systems

Four Components of a Computer System

CSE 4/521 Introduction to Operating Systems

Operating-System Structures

Chapter 2: System Structures. Operating System Concepts 9 th Edition

Module 3: Operating-System Structures

Chapter 2: System Structures. Operating System Concepts 9 th Edition

Operating-System Structures

Chapter 2: OS Structures

CHAPTER 16 - VIRTUAL MACHINES

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

CS420: Operating Systems. OS Services & System Calls

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester

Operating System Structure

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Lecture 2 - Fundamental Concepts

Kernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023

Operating System Review

CS 390 Chapter 2 Homework Solutions

What we saw. Desarrollo de Aplicaciones en Red. 1. OS Design. 2. Service description. 1.1 Operating System Service (1)

Chapter 2: Operating-System Structures. Operating System Concepts 8 th Edition

Unit 2 : Computer and Operating System Structure

Unit 5: Distributed, Real-Time, and Multimedia Systems

Introduction CHAPTER. Review Questions

Operating System Services

Chapter 2 Operating System Structures

! Software ( kernel ) that runs at all times. ! OS performs two unrelated functions: Maria Hybinette, UGA. user! 1! Maria Hybinette, UGA. user! n!

CHAPTER 16 - VIRTUAL MACHINES

Computer System Overview

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

Operating Systems. Operating System Structure. Lecture 2 Michael O Boyle

CHAPTER 3 RESOURCE MANAGEMENT

Chapter 2. Operating System Structures

LECTURE 2. Compilers and Interpreters

Introduction to Operating Systems (Part III)

CSC 453 Operating Systems

CSCI 8530 Advanced Operating Systems. Part 19 Virtualization

OPERATING SYSTEMS UNIT - 1

OPERATING SYSTEMS Lecture Notes. Prepared by K.Rohini, Assistant Professor, CSE Department, GVPCEW.

What is a VM? Categories of Virtual Machines. Process Virtual Machine 11/17/2010

CSCI 6730 / 4730 Operating Systems. Key Questions in System Design. Review: What is An Operating System? Key Points

Virtual Machines and Dynamic Translation: Implementing ISAs in Software

Computer System Architecture. CMPT 300 Operating Systems I. Summer Segment 3: Computer System Architecture. Melissa O Neill

Process Description and Control

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

JavaOS. David Burhans 2/3/2003 CS384 Dr. Taylor

ELEC 377 Operating Systems. Week 1 Class 2

Comprehensive Kernel Instrumentation via Dynamic Binary Translation

24-vm.txt Mon Nov 21 22:13: Notes on Virtual Machines , Fall 2011 Carnegie Mellon University Randal E. Bryant.

Operating System Architecture. CS3026 Operating Systems Lecture 03

The Process Abstraction. CMPU 334 Operating Systems Jason Waterman

Sista: Improving Cog s JIT performance. Clément Béra

CPSC/ECE 3220 Fall 2017 Exam Give the definition (note: not the roles) for an operating system as stated in the textbook. (2 pts.

Virtualization. ...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania.

CS370 Operating Systems

Notes of the course - Advanced Programming. Barbara Russo

What is a Process? Processes and Process Management Details for running a program

Software. CPU implements "machine code" instructions. --Each machine code instruction is extremely simple. --To run, expanded to about 10 machine code

A Bytecode Interpreter for Secure Program Execution in Untrusted Main Memory

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras

Executing Legacy Applications on a Java Operating System

CSE P 501 Compilers. Java Implementation JVMs, JITs &c Hal Perkins Winter /11/ Hal Perkins & UW CSE V-1

Advanced Programming & C++ Language

Transcription:

Import Settings: Base Settings: Brownstone Default Highest Answer Letter: D Multiple Keywords in Same Paragraph: No Chapter: Chapter 2 Multiple Choice 1. A is an example of a systems program. A) command interpreter B) Web browser C) text formatter D) database system Feedback: 2.2.1 2. If a program terminates abnormally, a dump of memory may be examined by a to determine the cause of the problem. A) module B) debugger C) shell D) control card Ans: B Feedback: 2.4.1 3. A message-passing model is. A) easier to implement than a shared memory model for intercomputer communication B) faster than the shared memory model C) a network protocol, and does not apply to operating systems D) only useful for small simple operating systems

Feedback: 2.4.5 4. Policy. A) determines how to do something B) determines what will be done C) is not likely to change across places D) is not likely to change over time Ans: B Feedback: 2.6.2 5. The major difficulty in designing a layered operating system approach is. A) appropriately defining the various layers B) making sure that each layer hides certain data structures, hardware, and operations from higher-level layers C) debugging a particular layer D) making sure each layer is easily converted to modules Feedback:: 2.7.2 6. A microkernel is a kernel. A) containing many components that are optimized to reduce resident memory size B) that is compressed before loading in order to reduce its resident memory size C) that is compiled to produce the smallest size possible when stored to disk D) that is stripped of all nonessential components Ans: D Feedback: 2.7.3 7. To the SYSGEN program of an operating system, the least useful piece of information is. A) the CPU being used

B) amount of memory available C) what applications to install D) operating-system options such as buffer sizes or CPU scheduling algorithms Ans: C Feedback: 2.10 8. A boot block. A) typically only knows the location and length of the rest of the bootstrap program B) typically is sophisticated enough to load the operating system and begin its execution C) is composed of multiple disk blocks D) is composed of multiple disk cylinders Feedback: 2.11 9. In a virtual machine, each program believes that it has. A) multiple processors B) its own memory C) another "virtual" computer to assist in its operations D) more memory than is physically available on the machine Ans: B Feedback: 2.8 10. is a popular commercial application that abstracts Intel 80XXx86 hardware into isolated virtual machines. A).NET B) JIT C) JVM D) VMware Ans: D Feedback: 2.8.6.1

11. is not an example of a benefit of virtual machines. A) The ability to run several different operating systems that all share the same hardware B) The ability to concurrently run several different operating systems C) Uses less physical memory than an actual operating system D) Protects the host system from guest operating systems Ans: C 12. provide(s) an interface to the services provided by an operating system. A) Shared memory B) System calls C) Simulators D) Communication Ans: B 13. is not one of the major categories of system calls. A) Process control B) Communications C) Protection D) Security Ans: D Feedback: 2.4 14. tricks an application by having it think it is the only process on the system. A) Paravirtualization B) Simulation C) The Java virtual machine D) The.NET framework Feedback: 2.8.4

15. allow operating system services to be loaded dynamically. A) Virtual machines B) Modules C) File systems D) Graphical user interfaces Ans: B Feedback: 2.7.4 16. Microkernels use for communication. A) message passing B) shared memory C) system calls D) virtualization Feedback: 2.7.3 17. The Windows CreateProcess() system call creates a new process. What is the equivalent system call in UNIX: A) NTCreateProcess() B) process() C) fork() D) getpid() Ans: C Feedback: 2.4.1 18. The close() system call in UNIX is used to close a file. What is the equivalent system call in Windows: A) CloseHandle() B) close() C) CloseFile() D) Exit()

Feedback: 2.4.1 19. Which of the following statements is incorrect? A) An operating system provides an environment for the execution of programs. B) An operating system manages system resources. C) Operating systems provide both command line as well as graphical user interfaces. D) Operating systems must provide both protection and security. Ans: C Feedback: 2.1 20. is/are not a technique for passing parameters from an application to a system call. A) Cache memory B) Registers C) Stack D) Special block in memory Essay 21. There are two different ways that commands can be processed by a command interpreter. One way is to allow the command interpreter to contain the code needed to execute the command. The other way is to implement the commands through system programs. Compare and contrast the two approaches. Ans: In the first approach, upon the user issuing a command, the interpreter jumps to the appropriate section of code, executes the command, and returns control back to the user. In the second approach, the interpreter loads the appropriate program into memory along with the appropriate arguments. The advantage of the first method is speed and overall simplicity. The disadvantage to this technique is that new commands require rewriting the interpreter program which, after a number of modifications, may get complicated, messy, or too large. The advantage to the second method is that new commands can be added without altering the command

interpreter. The disadvantage is reduced speed and the clumsiness of passing parameters from the interpreter to the system program. Feedback: 2.2 Difficulty: Hard 22. Describe the relationship between an API, the system-call interface, and the operating system. Ans: The system-call interface of a programming language serves as a link to system calls made available by the operating system. This interface intercepts function calls in the API and invokes the necessary system call within the operating system. Thus, most of the details of the operatingsystem interface are hidden from the programmer by the API and are managed by the run-time support library. Difficulty: Hard 23. Describe three general methods used to pass parameters to the operating system during system calls. Ans: The simplest approach is to pass the parameters in registers. In some cases, there may be more parameters than registers. In these cases, the parameters are generally stored in a block, or table, of memory, and the address of the block is passed as a parameter in a register. Parameters can also be placed, or pushed, onto the stack by the program and popped off the stack by the operating system. 24. What are the advantages of using a higher-level language to implement an operating system? Ans: The code can be written faster, is more compact, and is easier to understand and debug. In addition, improvements in compiler technology will improve the generated code for the entire operating system by simple recompilation. Finally, an operating system is far easier to port to move to some other hardware if it is written in a higher-level language. Feedback: 2.6.3 25. Describe some requirements, or goals, when designing an operating system.

Ans: Requirements can be divided into user and system goals. Users desire a system that is convenient to use, easy to learn, and to use, reliable, safe, and fast. System goals are defined by those people who must design, create, maintain, and operate the system: The system should be easy to design, implement, and maintain; it should be flexible, reliable, error-free, and efficient. Feedback: 2.6.1 26. What are the advantages and disadvantages of using a microkernel approach? Ans: One benefit of the microkernel approach is ease of extending the operating system. All new services are added to user space and consequently do not require modification of the kernel. The microkernel also provides more security and reliability, since most services are running as user rather than kernel processes. Unfortunately, microkernels can suffer from performance decreases due to increased system function overhead. Feedback: 2.7.3 27. Explain why a modular kernel may be the best of the current operating system design techniques. Ans: The modular approach combines the benefits of both the layered and microkernel design techniques. In a modular design, the kernel needs only to have the capability to perform the required functions and know how to communicate between modules. However, if more functionality is required in the kernel, then the user can dynamically load modules into the kernel. The kernel can have sections with well-defined, protected interfaces, a desirable property found in layered systems. More flexibility can be achieved by allowing the modules to communicate with one another. Feedback: 2.7.4 Difficulty: Hard 28. Describe two approaches to provide direct sharing of resources in a virtual-machine concept. Ans: First, it is possible to share a minidisk, and thus to share files. This scheme is modeled after a physical shared disk, but is implemented by software. Second, it is possible to define a network of virtual machines, each of which can send information over the virtual communications network. Again, the network is modeled after physical communication networks, but is implemented in software. Feedback: 2.8.2

29. In what ways does the JVM protect and manage memory? fter a class is loaded, the verifier checks that the.class file is valid Java bytecode and does not overflow or underflow the stack. It also ensures that the bytecode does not perform pointer arithmetic, which could provide illegal memory access. The JVM also automatically manages memory by performing garbage collection the practice of reclaiming memory from objects no longer in use and returning it to the system. Feedback: 2.8.6.2 30. What are two faster alternatives to implementing the JVM in software on top of a host operating system? faster software technique is to use a just-in-time (JIT) compiler. The first time a Java method is invoked, the bytecodes for the method are turned into native machine language for the host system, and then cached for subsequent invocations. A potentially faster technique is to run the JVM in hardware on a special Java chip that executes the Java bytecode operations as native code. Feedback: 2.8.6.2 31. Distinguish between virtualization and simulation Ans: Virtualization is the process whereby the system hardware is virtualized, thus providing the appearance to guest operating systems and applications that they are running on native hardware. In many virtualized environments, virtualization software runs at near native speeds. Simulation is the approach whereby the actual system is running on one set of hardware, but the guess system is compiled for a different set of hardware. Simulation software must simulate or emulate the hardware that the guest system is expecting. Because each instruction for the guest system must be simulated in software rather than hardware, simulation is typically much slower than virtualization. Feedback: 2.8.3 Difficulty: Hard 32. Describe Solaris 10 containers. Ans: Solaris containers or zones provides a virtual layer between the operating system and its applications. Only one kernel is present and the hardware is not virtualized. However, the

operating system and its devices are virtualized, providing processes within a container that they are the only running application on the system. Feedback: 2.8.4 True/False 33. KDE and GNOME desktops are available under open-source licenses. Feedback: 2.2.2 34. Many operating system merge I/O devices and files into a combined file because of the similarity of system calls for each. Feedback: 2.4.3 35. The virtual-machine concept does not offer complete protection of the various system resources. Ans: False Feedback: 2.8 36. A program written for the.net Framework need not worry about the specifics of the hardware or the operating system on which it will run. Feedback: 2.8

37. An initial bootstrap program is in the form of random-access memory (RAM). Ans: False Feedback: 2.11 38. System calls can be run in either user mode or kernel mode. Ans: False 39. Application programmers typically use an API rather than directory invoking system calls. 40. In general, Windows system calls have longer, more descriptive names and UNIX system calls use shorter, less descriptive names. Feedback: 2.4 41. Some level of hardware support is required to provide virtualization. Feedback: 2.8.5