OS Concepts Ch. 1 - 5 Test Bank

Réussis tes devoirs et examens dès maintenant avec Quizwiz!

The CPU catches the interrupt and ____ it to the interrupt handler A) raises B) catches C) dispatches D) clears

C) dispatches

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()

C) fork()

Which of the following is a much more restricted, or even closed, system to developers than others? A) Linux B) Mac OS X C) iOS D) Android

C) iOS

Which of the following stage triggers the CPU switch from user program to interrupt processing? A) I/O request B) transfer done C) interrupt signaled D) interrupt handled

C) interrupt signaled

Which of the following operating system structure is the one for Mach OS? A) monolithic structure B) layered structure C) microkernel D) modular approach

C) microkernel

Which of the following is a user interface where human fingers slide across the screen or press the buttons to select choices? A) touch screen B) graphical user interface C) command line D) voice control

A) touch screen

The device controller _____ an interrupt by asserting a signal on the interrupt request line. A) raises B) catches C) dispatches D) clears

A) raises

Which of the following is the denotation of 1024^3 bytes? A) KB B) MB C) GB D) TB

C) GB

Which of the following is NOT secondary storage device? A) random access memory B) solid state disks C) optical disk D) magnetic tape

A) random access memory

____ operating systems are designed primarily to maximize resource utilization. A) PC B) Handheld computer C) Mainframe D) Network

C) Mainframe

What is a bootstrap program, and where is it stored?

A bootstrap program is the initial program that the computer runs when it is powered up or rebooted. It initializes all aspects of the system, from CPU registers to device controllers to memory contents. Typically, it is stored in read-only memory (ROM) or electrically erasable programmable read-only memory (EEPROM), known by the general term firmware, within the computer hardware.

Explain why an operating system can be viewed as a resource allocator.

A computer system has many resources that may be required to solve a problem: CPU time, memory space, file-storage space, I/O devices, and so on. The operating system acts as the manager of these resources. Facing numerous and possibly conflicting requests for resources, the operating system must decide how to allocate them to specific programs and users so that it can operate the computer system efficiently and fairly.

What role do device controllers and device drivers play in a computer system?

A general-purpose computer system consists of CPUs and multiple device controllers that are connected through a common bus. Each device controller is in charge of a specific type of device. The device controller is responsible for moving the data between the peripheral devices that it controls and its local buffer storage. Typically, operating systems have a device driver for each device controller. This device driver understands the device controller and presents a uniform interface for the device to the rest of the operating system.

Describe why multi-core processing is more efficient than placing each processor on its own chip.

A large reason why it is more efficient is that communication between processors on the same chip is faster than processors on separate chips.

Explain the difference between singly, doubly, and circularly linked lists.

A singly linked list is where each item points to its successor. A doubly linked list allows an item to point to its predecessor or successor. A circularly linked list is the where the last element points back to the first.

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()

A) CloseHandle()

Which of the following technology reduces the overhead for bulk data movement? A) Direct Memory Access (DMA) B) Non-uniform Memory Access (NUMA) C) Symmetric Multiprocessing (SMP) D) Storage Area Network (SAN)

A) Direct Memory Access (DMA)

Which of the following defines the view of the operating system seen by most users? A) application and system programs B) system calls C) device drivers D) library calls

A) application and system programs

Which of the following components of a computer system defines the ways to use system resources to solve computing problems? A) application programs B) operating system C) computer hardware D) computer logo

A) application programs

Which of the following is the correct program type for GRUB in Linux and Unix systems? A) bootstrap program B) compiler program C) binder program D) system utility

A) bootstrap program

When a process fails, the operating system takes a __ which can then be probed by a debugger for failure analysis. A) core dump B) crash dump C) capture of network statistic information D) capture of CPU usage information

A) core dump

A message-passing model is __. A) easier to implement than a shared memory model for intercomputer communication B) faster than shared memory model C) a network protocol, and doesn't apply to operating systems D) only useful for small simple operating systems

A) easier to implement than a shared memory model for intercomputer communication

Which of the following principles is used for adding and removing items from a queue? A) first in first out (FIFO) B) last in first out (LIFO) C) random order D) round robin

A) first in first out (FIFO)

Android runs Java programs __ A) in the Android RunTime (ART) virtual machine. B) natively. C) in the Java virtual machine. D) Android does not run Java programs.

A) in the Android RunTime (ART) virtual machine.

Where is the location of L1 cache? A) inside CPU core B) inside processor but outside CPU core C) inside main memory D) inside registers

A) inside CPU core

Microkernels use __ for communication. A) message passing B) shared memory C) system calls D) virtualization

A) message passing

Which of the following inter-process communication is used in microkernel? A) message passing B) shared memory C) socket communication D) all of above

A) message passing

Which of the following operating system structure is the one for MS-DOS? A) monolithic structure B) layered structure C) microkernel D) modular approach

A) monolithic structure

What category of system call includes the one for process creation and termination? A) process control B) file management C) device management D) protection

A) process control

Which of the following statements is incorrect? A) An operating system is an environment for the execution of programs. B) An operating system manage system resources. C) Operating systems provide both command line interface as well as graphical user interfaces. D) Operating system must provide both protection and security.

C) Operating systems provide both command line interface as well as graphical user interfaces.

The __ provides a portion of the system call interface for UNIX and Linux. A) POSIX B) Java C) Standard C library D) Standard API

C) Standard C library

Which of the following statements is false? A) Mobile devices must be concerned with power consumption. B) Mobile devices can provide features that are unavailable on desktop or laptop computers. C) The difference in storage capacity between a mobile device and laptop is shrinking. D) Mobile devices usually have fewer processing cores than a standard desktop computer.

C) The difference in storage capacity between a mobile device and laptop is shrinking.

What two operating systems currently dominate mobile computing?

Apple's iOS and Google's Android

In what way is an operating system like a government? A) It seldom functions correctly. B) It creates an environment within which other programs can do useful work. C) It performs most useful functions by itself. D) It is always concerned primarily with the individual's needs.

B) It creates an environment within which other programs can do useful work.

__ provide(s) an interface to the services provided by an operating system. A) Shared memory B) System calls C) Simulators D) Communication

B) System calls

Which of the following is the definition of processor? A) the hardware that executes instructions B) a physical chip that contains one or more CPUs C) the basic computation unit of the CPU D) including multiple computing cores on the same CPU

B) a physical chip that contains one or more CPUs

Which of the following contains the addresses of all the service routines? A) page table B) interrupt vector C) system call table D) file descriptor table

B) interrupt vector

Which of the following principles is used for adding and removing items from a stack? A) first in first out (FIFO) B) last in first out (LIFO) C) random order D) round robin

B) last in first out (LIFO)

Which of the following is tertiary storage medium? A) register B) magnetic tapes C) main memory D) hard-disk drive

B) magnetic tapes

The Windows CreateFile() system call is used to create a file. What is the equivalent system call in UNIX? A) ioctl() B) open() C) fork() D) createfile()

B) open()

Which of the following computing environments place rigid time requirements on the operation of a processor or the flow of data? A) traditional computing B) real-time embedded system C) client-server computing D) peer-to-peer computing

B) real-time embedded system

Which of the following is an inter-process communication that requires 2 processes share memory? A) message passing B) shared memory C) socket communication D) Operating system must provide both protection and security.

B) shared memory

Which of the following storage medium is the slowest regarding access speed? A) cache B) solid state drive C) register D) main memory

B) solid state drive

Which of the following is the only gateway between user space and kernel space? A) user interface B) system call C) operating system D) hardware drivers

B) system call

Describe cloud computing.

Cloud computing is a type of computing that delivers computing, storage, and application services across a network. Cloud computing often uses virtualization to provide its functionality. There are many different types of cloud environments, as well as services offered. Cloud computing may be either public, private, or a hybrid of the two. Additionally, cloud computing may offer applications, platforms, or system infrastructures.

Why are clustered systems considered to provide high-availability service?

Clustered systems are considered high-availability in that these types of systems have redundancies capable of taking over a specific process or task in the case of a failure. The redundancies are inherent due to the fact that clustered systems are composed of two or more individual systems coupled together.

Which of the following will trigger an interrupt? A) kernel function B) software execution C) CPU execution D) I/O completion

D) I/O completion

Which of the following is not a type of command interpreter? A) Bourne shell B) C shell C) Korn shell D) KDE or GNOME

D) KDE or GNOME

Which of the following is loosely coupled? A) multiprocessor systems B) single-processor system C) multi-core processor D) clustered system

D) clustered system

Which of the following is not an operating system service? A) program execution B) I/O operation C) protection and security D) graphical user interface

D) graphical user interface

Which of the following is nonvolatile? A) register B) cache C) main memory D) hard-disk drive

D) hard-disk drive

__ is a mobile operating system designed for the iPhone and iPad. A) Mac OS X B) Anroid C) UNIX D) iOS

D) iOS

Which of the following clears the interrupt by servicing the device? A) interrupt request line B) interrupt-controller hardware C) interrupt vector D) interrupt service routine

D) interrupt service routine

Which of the following programs runs all the time on the computer? A) compiler B) assembler C) text editor D) kernel

D) kernel

Which of the following operating system structure involves using loadable kernel module in design? A) monolithic structure B) layered structure C) microkernel D) modular approach

D) modular approach

What is the relationship between library call open() and open() system call? A) open() system call is part of open() B) open() system call is an alternate version of open() C) open() is a predecessor version of open() system call D) open() invokes open() system call to get service from operating system

D) open() invokes open() system call to get service from operating system

The ____ of a process contains temporary data such as function parameters, return addresses, and local variables.local variables. A) text section B) data section C) program counter D) stack

D) stack

The two separate modes of operating in a system are A) supervisor mode and system mode B) kernel mode and privileged mode C) physical mode and logical mode D) user mode and kernel mode

D) user mode and kernel mode

Describe why direct memory access (DMA) is considered an efficient mechanism for performing I/O.

DMA is efficient for moving large amounts of data between I/O devices and main memory. It is considered efficient because it removes the CPU from being responsible for transferring data. DMA instructs the device controller to move data between the devices and main memory.

Which of the following are used by Linux kernel as data structures? A) Lists, Stacks, and Queues B) Trees C) Hash Functions and Maps D) Bitmaps E) All of the above

E) All of the above

A system call is triggered by hardware.

False

Applications compiled on one operating system can be directly executable on other operating system due to common structure.

False

On UNIX, the setuid attribute on a program causes that program to run with the user ID of the current user's ID.

False

Solid state disks are considered volatile storage.

False

The process runs with effective UID all the time until the process is stopped.

False

iOS is open source, Android is closed source.

False

Computer systems can be divided into four approximate components. What are they?

Hardware, operating system, application programs, and users.

Explain cache coherency.

In multiprocessor environments, two copies of the same data may reside in the local cache of each CPU. Whenever one CPU alters the data, the cache of the other CPU must receive an updated version of this data. Cache coherency involves ensuring that multiple caches store the most updated version of the stored data.

Describe the operating system's two modes of operation.

In order to ensure the proper execution of the operating system, most computer systems provide hardware support to distinguish between user mode and kernel mode. A mode bit is added to the hardware of the computer to indicate the current mode: kernel (0) or user (1). When the computer system is executing on behalf of a user application, the system is in user mode. However, when a user application requests a service from the operating system (via a system call), it must transition from user to kernel mode to fulfill the request.

Describe three general methods used to pass parameters to the operating system during system calls.

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.

There are two different ways that commands can be processed by a command interpreter. One way is to allow 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

In the first approach, upon the user issuing a command, the interpreter jumps to the appropriate section of code, 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 techniques 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.

Why is main memory not suitable for permanent program storage or backup purposes? Furthermore, what is the main disadvantage to storing information on a magnetic disk drive as opposed to main memory?

Main memory is a volatile memory in that any power loss to the system will result in erasure of the data stored within that memory. While disk drives can store more information permanently than main memory, disk drives are significantly slower.

Distinguish mobile computing from traditional desktop computing.

Mobile computing takes place on handheld devices and tablets. Because these devices are portable and lightweight, they typically do not have the processing power and storage capacity of desktop systems. However, features such as GPS and accelerometers have allowed mobile devices to provide functionality that is unavailable to desktop systems.

Distinguish between uniform memory access (UMA) and non-uniform memory access (NUMA) systems.

On UMA systems, accessing RAM takes the same amount of time from any CPU. On NUMA systems, accessing some parts of memory may take longer than accessing other parts of memory, thus creating a performance penalty for certain memory accesses.

What are the advantages and disadvantages of using a microkernel approach?

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 increases system function overhead.

Describe the differences between physical, virtual, and logical memory.

Physical memory is the memory available for machines to execute operations (i.e., cache, random access memory, etc.). Virtual memory is a method through which programs can be executed that requires space larger than that available in physical memory by using disk memory as a backing store for main memory. Logical memory is an abstraction of the computer's different types of memory that allows programmers and applications a simplified view of memory and frees them from concern over memory-storage limitations.

Describe how Mac OS X is considered a hybrid system.

Primarily because the kernel environment is a blend of the Mach microkernel and BSD UNIX (which is closer to a monolithic kernel)

Explain the difference between protection and security.

Protection is concerned with controlling the access of processes or users to the resources of the computer system. The role of security is to defend the system from internal or external attacks.

Describe some requirements, or goals, when designing an operating system.

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

Distinguish between system and application programs.

System programs are not part of the kernel, but still are associated with the operating system. Application programs are not associated with the operating of the system.

Describe how Android uses a unique virtual machine for running Java programs.

The Android RunTime (ART) virtual machine is designed specifically for Android and has been optimized for mobile devices with limited memory and CPU processing capabilities.

What are the advantages of using a higher-level language to implement an operating system?

The code can be written faster, is more compact, and is easier to understand and debug. In addition, improvement in compiler technology will 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

Describe the compute-server and file-server types of server systems.

The compute-server system provides an interface to which a client can send a request to perform an action (for example, read data from a database); in response, the server executes the action and sends back results to the client. The file-server system provides a file-system interface where clients can create, update, read, and delete files. An example of such a system is a Web server that delivers files to clients running Web browsers.

Explain the purpose of an interrupt vector.

The interrupt vector is merely a table of pointers to specific interrupt-handling routines. Because there are a fixed number of interrupts, this table allows for more efficient handling of the interrupts than with a general-purpose, interrupt-processing routine.

Explain why a modular kernel may be the best of the current operating system design techniques.

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.

Describe the relationship between an API, the system-call interface, and the operating system.

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 operating-system interface are hidden from the programmer by the API and are managed by the run-time support library.

A system call runs in kernel mode only.

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 systems merge I/O devices and files into a combined file because of the similarity of system calls for each.

True

MapReduce is a system which allows for parallel processing of data across nodes in the cluster.

True

One important principle is the separation of policy from mechanism,

True

Processors for most mobile devices run at a slower speed than a processor in a desktop PC.

True

Skype uses a hybrid peer-to-peer approach.

True

Solid state disks are generally faster than magnetic disks.

True

There is no universally accepted definition of an operating system.

True

VMware is a virtual machine manager when it manages guest operating systems.

True

Virtually all modern operating systems provide support for SMP

True

iOS and Android combine different structures, resulting in hybrid systems that address performance, security, and usability issues.

True


Ensembles d'études connexes

Financial Accounting Test 1 Multiple Choice Review

View Set

Medical-Surgical Nursing Week 3 Part 2

View Set

Advanced Research in Psychology - Exam 1

View Set