Zybook Ch1: Introduction Flashcards

1
Q

What is an operating system (OS)?

A

The software that runs on the bare hardware of a computer and provides essential support for users to develop and use applications in the most efficient and safe manner.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the CPU’s hardware capabilities?

A

Machine instructions perform operations on contents of registers and memory locations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the CPU’s user needs?

A

The user thinks in terms of arrays, lists, and other high-level data structures, accessed and manipulated by corresponding high-level operations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the main memories hardware capabilities?

A

Physical memory is a linear sequence of addressable bytes or words that hold programs and data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the main memories user needs?

A

The user must manage a heterogeneous collection of entities of various types and sizes, including source and executable programs, library functions, and dynamically allocated data structures, each accessed by different operations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the secondary storage’s hardware capabilities?

A

Disk and other secondary storage devices are multi-dimensional structures, which require complex sequences of low-level operations to store and access data organized in discrete blocks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the secondary storage’s user needs?

A

The user needs to access and manipulate programs and data sets of various sizes as individual named entities without any knowledge of the disk organization.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the I/O devices hardware capabilities?

A

I/O devices are operated by reading and writing registers of the device controllers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the I/O devices user needs?

A

The user needs simple, uniform interfaces to access different devices without detailed knowledge of the access and communication protocols.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is abstraction?

A

the act of removing unimportant details or attributes of objects in order to construct more general and less complex objects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does the OS use abstraction?

A

by creating hierarchies of objects where multiple operations at one level are combined into a single operation at a higher level, thus hiding the details of the implementation and making the operation easier to use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is virtualization?

A

the act of creating the illusion of having one or more objects with more desirable characteristics than the real object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How does the OS use virtualization?

A

OSs rely on virtualization to create virtual CPUs, memory, I/O devices, and other system components that facilitate the work of programmers and users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How is the OS an extended machine?

A

abstraction and virtualization lets the OS make objects with expanded functionality and more favorable characteristics

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is multiprogramming?

A

a technique that keeps several programs active in memory and switches execution among the different programs to maximize the use of the CPU and other resources.
-Whenever a program enters an I/O-bound phase where little CPU time is needed, other programs can resume and utilize the CPU in the meantime. Similarly, whenever a device completes an operation, the OS activates computations that can utilize the now available device.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is time-sharing (multitasking)?

A

an extension of multiprogramming where the CPU is switched periodically among all active computations to guarantee acceptable response times to each user. Time-sharing employs the concept of virtualization by creating the illusion of having a separate virtual CPU for each computation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is the Kernel of an OS?

A

the minimal set of functions necessary to manage the system resources safely and efficiently

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is a privileged instruction?

A

Instructions that perform critical operations that access I/O devices and the CPU’s status and control registers. Thus only the OS kernel is allowed to execute privileged instructions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is Kernel mode?

A

the CPU state where both privileged and non-privileged instructions may be used

20
Q

What is User mode?

A

the CPU state where only non-privileged instructions may be used

21
Q

What is a way for modes to go from user to kernel mode?

A

attempting to execute a privileged instruction in user mode

22
Q

What is the OS shell?

A

a command interpreter that accepts and interprets textual commands issued by the user via a keyboard

23
Q

What is a shell script?

A

a program that implements a new operation by combining multiple commands and control statement into one named unit interpreted by the shell

24
Q

What is a system call?

A

a request from an application for an OS service

25
Q

How is a system call implemented?

A

A system call is implemented as a library function, which sets up the necessary parameters for the requested operation and issues a corresponding supervisor call.

26
Q

What is a supervisor call (kernel call)?

A

a privileged instruction that automatically transfers execution control to a well-defined location within the OS kernel. Thus supervisor calls provide the interface between the OS kernel and the higher-level software

27
Q

What are the two special features of a supervisor call?

A

1) The call switches execution from user mode to kernel mode by setting the mode bit in the CPU.
2) To prevent a call from branching to arbitrary locations within the kernel, the function to be invoked is not specified by an address but indirectly using an index into a branch vector. Thus kernel-mode execution is limited to only well-defined entry points within the kernel.

28
Q

What is an interrupt?

A

an event that diverts the current execution of a program to a predefined location in the kernel in order to respond to an event

29
Q

How/when are interrupts triggered?

A

An interrupt is triggered by a hardware signal sent to the CPU from an external device.

30
Q

What are the two most common uses of interrupts?

A

1) Signal to the OS the completion of an I/O operation. The interrupt is generated by the I/O device,
2) Implement time-sharing by periodically switching the CPU among multiple concurrent computations. The interrupt is generated by a countdown timer.

31
Q

What is a trap (internal interrupt)?

A

an interrupt triggered by the currently executing instruction

32
Q

What are some examples of traps?

A

Dividing by zero, executing an invalid opcode, or causing an arithmetic overflow are all errors, which result in a trap and cause the OS to abort the current program execution.

33
Q

Why does a supervisor call instruction cause a trap?

A

Because the main purpose is to transfer control to the kernel when requesting a service

34
Q

What is an interrupt handler?

A

a kernel function, invoked whenever an interrupt occurs, that determines the cause of the interrupt and invokes the appropriate kernel function to provide the response

35
Q

What happens after an interrupts executed kernel function completes its requested service?

A

the state of the interrupted computation is restored and control is returned to the instruction following the interrupt. The handling of an interrupt is thus completely transparent to the interrupted computation and provides an immediate response to asynchronous events

36
Q

What is Moore’s Law?

A

Moore’s law, formulated by the scientist Gordon Moore, is the observation that the number of transistors in an integrated circuit doubles about every two years. This prediction has held steady since the mid 1960’s until today.

37
Q

What are the 5 generations of computers and their enabling hardware technology?

A

Gen 1: Vacuum tubes

Gen2: Transistors

Gen 3: Integrated Circuits

Gen 4: Very large scale integration (VLSI)

Gen 5: Networking hardware

38
Q

What is the OS type for Gen 1 computers?

A

none

39
Q

What is the defining characteristics of Gen 1 computers?

A

All programming was done by experts in machine language without any support from an OS or any other system software.

40
Q

What is the OS type for Gen 2 computers?

A

Batch OS

41
Q

What is the defining characteristics of Gen 2 computers?

A

Programs were submitted in batches of punch cards. The role of the OS was to automate the compilation, loading, and execution of programs. Multiprogramming was developed, which allows the OS to schedule the execution of jobs to make more efficient use of the CPU and other resources.

42
Q

What is the OS type for Gen 3 computers?

A

Interactive multi-user OS.

43
Q

What is the defining characteristics of Gen 3 computers?

A

Interrupts were developed to allow the OS to enforce time-sharing and to interact with keyboards and display terminals, also developed during the same period. Increased capacity and speed of memory and secondary storage devices imposed additional management tasks on the OS.

44
Q

What is the OS type for Gen 4 computers?

A

Desktop and laptop OS.

45
Q

What is the defining characteristics for Gen 4 computers?

A

The OS was responsible for all operations, starting from the initial booting, to multitasking, scheduling, interactions with various peripheral devices, and keeping all information safe. The emphasis was on user-friendliness, including the introduction of the GUI.

46
Q

What is the OS type for Gen 5 computers?

A

OSs for supercomputers, distributed systems, and mobile devices.

47
Q

What is the defining characteristics for Gen 5 computers?

A

The ability to create extremely powerful chips spawned several directions of development. Supercomputers combined large numbers of processors and made the OS and other software responsible for exploiting the increased computation power through parallel processing. Computer networks gave rise to the Internet, which imposed requirements of privacy and safety along with efficient communication. Wireless networks led to the development of hand-held devices, with additional demands on the OS.