Introduction & OS Structures Flashcards

1
Q

Operating system

A

A program that manages a computer’s hardware. Also provides a basis for application programs and acts as an intermediary between the computer user and the computer hardware

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

Virtualization

A

The OS takes a physical resource and transforms it into a more general, powerful and easy-to-use virtual form of itself / abstracting underlying hardware

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

What does an OS provide?

A
  • Standard library for resources
  • Resource management
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the advantages of the OS providing abstractions?

A
  • Separate interface & underlying hardware implementation
  • Allows applications to reuse common facilities
  • Makes different devices look the same
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the advantages of the OS providing resource management?

A
  • Protect applications from one another
  • Provide efficient access to resources /cost, time & energy)
  • Provides fair access to resources
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Resource

A

Anything valuable

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

What abstraction does a modern OS provide for the resource CPU?

A

Process / thread

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

Virtualizing the CPU

A

Turning a single CPU into a seemingly infinite number of CPUs and thus allowing many programs to seemingly run at once

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

What abstraction does a modern OS provide for the resource memory?

A

Address space

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

Virtualizing memory

A

Each process accesses its own private virtual address space, which the OS maps onto the physical memory of the machine

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

What abstraction does a modern OS provide for the resource disk?

A

Files

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

Resource management

A

Sharing of resources in a good manner

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

What techniques are deployed to manage the increasing complexity of OS’s?

A

Modularity, abstraction and hierarchy

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

What is the core component of an OS?

A

Kernel

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

Kernel

A

The software responsible for providing secure access to the hardware and executing programs

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

What four areas does the kernel handle?

A

Process management
Device driver
Memory management
System calls

17
Q

System calls

A

Provide the interface between a running program and the operating system kernel

18
Q

Describe the standard implementation of a system call

A

A run-time support system provides a system call interface where:
- A number is associated with each system call
- The system call interface maintains a table for system calls
- The intended system call is indexed according to its number

19
Q

Describe an OS with a simple structure

A

Programs and OS have the same level of privilege

20
Q

What are the pros of an OS with a simple structure?

A

Efficient - no switching between user and kernel space

21
Q

What are the cons of an OS with a simple structure?

A

No isolation - between applications & the OS leads to security issues

22
Q

Describe an OS with a monolithic kernel

A

The entire OS works in kernel space

23
Q

What are the pros of a monolithic kernel?

A

Good isolation & security - user space cannot directly access OS

24
Q

What are the cons of an OS with a monolithic kernel?

A

Inflexibility - to modify something in the OS, the entire kernel space must be reviewed
Unreliable - Device drivers can crash the entire system

25
Q

Describe an OS with a microkernel

A

Some services / modules are decoupled from the OS kernel and stay in the user space

26
Q

What are the pros of an OS with a microkernel?

A

Reliability - possible to change a service without affecting the entire OS
Security - isolation of device drivers in user space
Flexibility - changing a service in the user space won’t make it necessary to rebuild the system from scratch

27
Q

What are the cons of an OS with a microkernel?

A

Complexity
Communication overhead

28
Q

Describe an OS with a hybrid kernel

A

Combines monolithic kernel and microkernel

29
Q

What are the pros of an OS with a hybrid kernel?

A

Inherited from microkernel & monolithic kernel

30
Q

What are the cons of an OS with a hybrid kernel?

A

Inherited from microkernel & monolithic kernel

31
Q

What are the primary goals of an OS?

A
  • Efficient use of computer hardware
  • Easier problem solving for users & execution of user programs
  • Making the computer system more convenient to use
32
Q

What three things helps the OS achieve its goals?

A

Virtualization, concurrency, persistence

33
Q

What does virtualization mean for an OS?

A

Abstraction of underlying hardware

34
Q

Concurrency

A

Events are occurring simultaneously and may interact with one another

35
Q

Persistence

A

Safely storing data on different storage devices

36
Q

What are the other goals of the OS?

A
  • Protection between applications & between the OS and applications
  • Reliability
  • Energy efficiency
  • Security
  • Mobility