Operating Systems Ch. 2
If a program terminates abnormally, a dump of memory may be examined by a ____ to determine the cause of the problem.
Debugger
What is an API?
An application programming interface (API) allows application developers to bypass traditional web pages and interact directly with the underlying service through function calls.
Android runs Java programs _____________
Android RunTime (ART) Virtual Machine
Which of the following defines the view of the operating system seen by most users?
Application and System Programs
The major difficulty in designing a layered operating system approach is ____.
Appropriately Defining the Various Layers
Which of the following is the correct program type for GRUB in Linux and UNIX systems?
Bootstrap Program
_____ is/are not a technique for passing parameters from an application to a system call.
Cache Memory
A message-passing model is _________________.
Easier to implement than a shared memory model for intercomputer communication
Applications compiled on one operating system can be directly executable on other operating systems due to common structure.
False
System calls can be run in either user mode or kernel mode.
False
iOS is open source, Android is closed source.
False
Describe some goals when designing an operating system.
user goals - ease of use, fast, reliable. system goals - easy to design, implement, and maintain
A microkernel is a kernel _____.
That is stripped of all nonessential components
What are the two basic goal groups that must be considered when designing an operating system?
User and System
What are the advantages and disadvantages of using a microkernel approach?
advantages: adding a new service doesn't require modifying the kernel. A simpler kernel design typically results in a more reliable operating system.
Which of the following is a much more restricted, or closed, system to developers than others?
iOS
_______ is a mobile operating system designed for the iPhone and iPad
iOS
Explain why a modular kernel may be the best of the current operating system design techniques.
more flexible because the module can call any other module, and it does not need message passing to communicate.
When a process fails, the operating system takes a _________ which can then be probed by a debugger for failure analysis.
Core Dump
Which of the following is not a type of command interpreter?
KDE or Gnome
Which of the following operating system structures is the one for MS-DOS?
Monolithic
The close() system call in UNIX is used to close a file. What is the equivalent system call in Windows?
CloseHandle()
What are the advantages of using a higher-level language to implement an operating system?
Code can be written faster, is more compact, and easier to understand and debug.
A _____ is an example of a systems program.
Command Interpreter
Policy_____.
Determines what will be done.
The Windows CreateProcess() system call creates a new process. What is the equivalent system call in UNIX?
Fork()
Describe how Android uses a unique virtual machine for running Java programs.
Google developed a separate API and virtual machine specifically for mobile devices.
Which of the following is not an operating system service?
Graphical User Interface
Microkernels use _____ for communication.
Message Passing
Which of the following inter-process communications is used in microkernel?
Message Passing
Which of the following is an inter-process communication that requires two processes share memory?
Message Passing
Which of the following operating system structures is the one for Mach OS?
Microkernel
Which of the following operating system structures involves using loadable kernel modules in design?
Modular Approach
_____ allow operating system services to be loaded dynamically.
Modules
Describe how Mac OS X is considered a hybrid system.
OS X hybrid kernel made with Mach and BSD parts, plus I/O kit and kernel extensions.
The Windows CreateFile() system call is used to create a file. What is the equivalent call in UNIX?
Open()
What is the relationship between library call open() and system call open()?
Open() invokes the open() system call to get service from the operating system
Which of the following statements is incorrect?
Operating systems provide both command line as well as graphical user interfaces.
Describe three general methods used to pass parameters to the operating system during system calls.
Pass the parameters in registers, messages are stored as a block and passed as a parameter, or they are pushed onto a stack, and popped off by the operating system.
What is the difference between policy and mechanism?
Policy - what will be done Mechanism - how will it be done
What category of system call includes the ones for process creation of and termination?
Process Control
What is a system call?
Programming interface to the services provided by the OS
Of the following 5 forms of storage, rank them from fastest to slowest in terms of access time: (1) main memory, (2) magnetic disk, (3) registers, (4) solid state disk, (5) cache.
Registers, Cache, Main, SSD, Magnetic Disk
_____ is not one of the major categories of system calls
Security
Describe operating system structure services.
Services included in the operating system to make the experience better for the user.
What kernel data structure can be used for one technique of passing parameters to system calls
Stack
The ___________ provides a portion of the system call interface for UNIX and linux
Standard C Library
Which of the following is the only gateway between user space and kernel space?
System Call
_____________ Provide(s) an interface to the services provided by an operating system.
System Calls
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.
The first way is faster, but can become cumbersome to maintain after several modifications to the interpreter program. The second way is slower, but since there isn't a need to modify the command interpreter when adding new commands, it needs infrequent modification.
Describe the relationship between an API, the system-call interface, and the operating system.
The system-call interface serves as a link to calls made by the OS. This interface is hidden from users and programmers by an API.
A boot block_____.
Typically only knows the loation and length of the rest of the bootstrap program.
Which of the following is a user interface where human fingers slide across the screen or press buttons to select choices?
Touch Screen
An initial bootstrap program is in the form of random-access memory (RAM).
True
Application programmers typically use an API rather than directory invoking system calls.
True
In general, Windows system calls have longer, more descriptive names and UNIX system calls use shorter, less descriptive names.
True
Mac OS X is a hybrid system consisting of both the Mach microkernel and BSD UNIX.
True
Many operating system merge I/O devices and files into a combined file because of the similarity of system calls for each.
True
One important principle is the separation of policy from mechanism
True
iOS and android combine different structures, resulting in hybrid systems that address performance, security, and usability issues.
True
