OS Architectures Flashcards

1
Q

What is a Simple Architechure?

A
  • Typically for small or preliminary systems
  • All of the OS runs in kernel mode ( No well-defined structure, Everything is small enough that we can still find the pieces)
  • If unchecked, can lead to monolithic systems (all components are intertwined or interdependent)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a Layered Architecture?

A
  • Functionality of the OS is divided into different layers
  • Layers organized Hierarchically (lowest layer deals with hardware, next layer provides basic functions like memory management and scheduling, next layer adds more abstraction)
  • Each layer only uses the services of the layer directly below it and provides service to the one directly above
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Layered Architecture Pros?

A
  • Each Layer is isolated from others (can swap in or out new implementations of layers without affecting the whole system)
  • Easier to construct, debug, and maintain because of the isolation.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Layered Architecture Cons?

A
  • You need to carefully plan the functionality of each layer
  • Some features conceptually (to us) might want us to form cycles in the layer structure, which may force us to move functionality lower than we would like.
  • Not as effcient since one task may need multiple function calls to get through all the layers.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

what is a Microkernel Architecture?

A

Isolate the smallest amount of functionality in the kernel (Process management, minimal memory management,
interprocess communication)
-All other functionality is run as separate user-space

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

Microkernel Architecture Pros?

A
  • Minimal functionality run in kernel mode.
  • Quick to swap in or out parts of the overall OS
  • Easy to add to the OS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Microkernel Architecture cons?

A

Efficiency sometimes a concern:
-  Must still go through APIs and “formal” communication paths to
trade data between parts of the OS
-  Efficiency puts pressure on the OS implementers to move more and
more functionality into the microkernel, which can lead towards a
more monolithic structure if left unchecked

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

What is a Modular Architecture?

A
-Allow OS functionality to be integrated into the OS on
demand
-Functionality is divided into modules (like a layered
architecture) but a module can call any other module
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a Hybrid Architecture?

A

A combination of different architectures like iOS

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

What is a Virtual Machine Architecture?

A

Basically like a layered architecture, where the bottom layer is a host OS and there is another operating system using the hardware through the host OS.

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

Virtual Machine Architecture

A

Virtualized hardware can be mapped directly to real hardware or
be truly simulated by the VM
Direct access
-  Provides efficient execution within the virtual machine
-  Can create some risks of security compromise
-  Mustn’t let the virtual machine’s OS enter kernel mode
 Must trap all kernel mode operations to the host OS -  Eg. VMWare
Simulated hardware
-  Provides better security to the host OS
-  Allows for more flexible design of virtual hardware
-  Allows for common virtual hardware across different real hardware
-  Often viewed as slower since assembly-level instructions are interpreted
-  Eg. Java VM

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