<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=Operating_Systems_2019W_Lecture_22</id>
	<title>Operating Systems 2019W Lecture 22 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=Operating_Systems_2019W_Lecture_22"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Operating_Systems_2019W_Lecture_22&amp;action=history"/>
	<updated>2026-04-05T16:59:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Operating_Systems_2019W_Lecture_22&amp;diff=22322&amp;oldid=prev</id>
		<title>Soma: Created page with &quot;==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...&quot;</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Operating_Systems_2019W_Lecture_22&amp;diff=22322&amp;oldid=prev"/>
		<updated>2019-04-04T01:11:29Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==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...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Video==&lt;br /&gt;
&lt;br /&gt;
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 Part 1], [https://homeostasis.scs.carleton.ca/~soma/os-2019w/lectures/comp3000-2019w-lec22-20190403-2.m4v Part 2].&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lecture 22&lt;br /&gt;
----------&lt;br /&gt;
&lt;br /&gt;
Atomic operations&lt;br /&gt;
Networking&lt;br /&gt;
hardware virtualization&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Atomic operations&lt;br /&gt;
-----------------&lt;br /&gt;
&lt;br /&gt;
atom means &amp;quot;indivisible&amp;quot; in the original greek?&lt;br /&gt;
&lt;br /&gt;
an atomic operation is thus indivisible&lt;br /&gt;
 - it completes or it doesn&amp;#039;t happen&lt;br /&gt;
&lt;br /&gt;
a transaction is a simulation of an atomic operation&lt;br /&gt;
 - if parts of the transaction fail, you undo everything&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hardware virtualization&lt;br /&gt;
-----------------------&lt;br /&gt;
want to run multiple operating systems on one system&lt;br /&gt;
 - so multiple kernels&lt;br /&gt;
&lt;br /&gt;
But kernels are special.  They expect access to:&lt;br /&gt;
 - hardware-level interrupts&lt;br /&gt;
 - run in supervisor mode&lt;br /&gt;
 - devices&lt;br /&gt;
 - page tables&lt;br /&gt;
 - software interrupts (system call invocations)&lt;br /&gt;
&lt;br /&gt;
Two strategies:&lt;br /&gt;
 - fake it (emulation)&lt;br /&gt;
    - to make it fast, just emulate the privileged operations&lt;br /&gt;
    - original strategy of vmware on x86&lt;br /&gt;
&lt;br /&gt;
 - hardware virtualizes resources&lt;br /&gt;
   - hypervisor mode over supervisor mode (ring -1)&lt;br /&gt;
   - shadow page tables (virtualization of page tables)&lt;br /&gt;
   - devices are faked or do their own virtualization&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
</feed>