OS Structures Flashcards

1
Q

OS Services for users are:

A
  • UI
  • Program execution
  • I/O operations
  • File-system manipulation
  • Process communication
  • Error detection and handling
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

OS Services for the system are:

A

efficiency and sharing

  • Resource allocation
  • Accounting
  • Protection and security
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Give two examples to User-OS interfaces

A
  • CLI (Command Line Interpreter) (shell)

- GUI

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

What is the programming interface to the services provided by the operating system called?

A

System calls

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

System calls are written in…

A

a high level language (C, C++)

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

System calls are called by…

A

running a program to get service from kernel

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

Describe the process of calling a system call

A

The number associated with the system call is used as an index to find the address of the corresponding system call from the system call table. The system call in the address runs and returns.

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

What are the three methods to pass parameters to the OS for system calls?

A

1) Simplest: pass parameters in registers
2) Store in a block or a table and pass address of block in a register
3) Parameters pushed to the stack by the program and popped off by the OS

Last two do not limit the num of parameters passed

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

System calls are accessed directly by programs. True of False?

A

False. System calls are NOT accessed directly by programs. They’re accessed by programs VIA a high-level API rather than direct system call use.

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

Name 6 types of system calls.

A
  • Process control
  • File management
  • Device management
  • Information maintenance
  • Communications
  • Protection
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name 4 different operating system structures.

A
  • Simple Structure (MSDOS)
  • Layered
  • Microkernel
  • Modules
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

MSDOS provides…

A

most functionality in the least amount of space

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

MSDOS is divided into modules. True or False?

A

False. Although it has some structure, its interfaces and levels of functionality are not well separated.

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

Describe the Layered Approach.

A

OS is divided into layers. Lowest being hardware and highest being the user interface. Each layer only uses services of lower layers.

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

Give an example of a Layered OS and its layers.

A

UNIX. Hardware-Kernel-Application Programs

Also, Linux.

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

Microkernel structure moves as much from … into …

A

kernel into user space

17
Q

How does communication take place between user modules?

A

By using message passing

18
Q

What are the benefits of the microkernel approach?

A
  • Easier to extend a microkernel
  • Porting the OS to new architecture is easier
  • More reliable (less code running in kernel mode)
  • More secure
19
Q

Detriments of microkernel approach?

A

User space to kernel space communication has a performance overhead.

20
Q

Provide an example of a microkernel structure OS.

A

MINIX3 OS.

21
Q

What is the structure that most modern operating systems implement?

A

Modules. (kernel modules)

22
Q

Describe the aspects of the modules approach.

A
  • Object-oriented
  • Each core component is separate
  • Each talks to other over known interfaces
  • Each is loadable as needed within the kernel
23
Q

Modules are similar to … but more ….

A

layers but more flexible

24
Q

Linux, while being a layered system, also supports …

A

modules

25
Q

Give an example to a modules based OS.

A

Solaris.

26
Q

Two examples of hybrid operating systems are…

A

Mac OS X consisting of:

  • Mach: microkernel and
  • BSD: monolithic (simple structure e.g. MSDOS)

and

Android

27
Q

What are the 3 types of Virtualization?

A
  • Virtual machines:
    running OS/apps identical to the bare hardware
  • Emulation:
    “ “ different than the bare hardware
  • Abstract machines:
    run apps developed/compiled for an abstract machine running on a bare hardware (e.g. JVM. Run a java app on JVM running on x86)
28
Q

What does virtualization do?

A

Abstracts/virtualizes hardware to allow OSs and programs can run on a virtualized machine or environment

29
Q

Give an example to a Type-2 Hypervisor (hosted virtual machine)

A

VMware Workstation

30
Q

Give an example to a Type-1 Hypervisor (running directly on hardware)

A

VMware ESX Hypervisor

31
Q

Describe the system booting procedure.

A
  • > Bootstrap program (loader) locates the kernel, loads it and starts the kernel.
  • > Then control is given to kernel
  • > Kernel starts the environment and makes the computer ready to interact with the user (via GUI or CLI)
32
Q

System booting can be an … step procedure

A

Two step procedure.

  • Bootstrap program loads another more complex boot program
  • That boot program loads the kernel