Operating Systems 2019W Lecture 22

From Soma-notes
Revision as of 21:11, 3 April 2019 by Soma (talk | contribs) (Created page with "==Video== The video for the lecture given on April 3, 2019 is now available: [https://homeostasis.scs.carleton.ca/~soma/os-2019w/lectures/comp3000-2019w-lec22-20190403-1.m4v...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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