Operating Systems 2019W Lecture 22

From Soma-notes

Video

The video for the lecture given on April 3, 2019 is now available: Part 1, Part 2.

Notes

Lecture 22
----------

Atomic operations
Networking
hardware virtualization


Atomic operations
-----------------

atom means "indivisible" in the original greek?

an atomic operation is thus indivisible
 - it completes or it doesn't happen

a transaction is a simulation of an atomic operation
 - if parts of the transaction fail, you undo everything


Hardware virtualization
-----------------------
want to run multiple operating systems on one system
 - so multiple kernels

But kernels are special.  They expect access to:
 - hardware-level interrupts
 - run in supervisor mode
 - devices
 - page tables
 - software interrupts (system call invocations)

Two strategies:
 - fake it (emulation)
    - to make it fast, just emulate the privileged operations
    - original strategy of vmware on x86

 - hardware virtualizes resources
   - hypervisor mode over supervisor mode (ring -1)
   - shadow page tables (virtualization of page tables)
   - devices are faked or do their own virtualization