SlideShare una empresa de Scribd logo
1 de 45
cs4414 Fall 2013
University of Virginia
David Evans
Columbus, 28 Feb 2001 Jeonju, 17 June 2002
Class 2-0:
Once Upon a Process
Today’s Main Question
How can several programs
share a processor?
112 September 2013 University of Virginia cs4414
12 September 2013 University of Virginia cs4414 2
Recap:
Last Class
12 September 2013 University of Virginia cs4414 3
Program Computer
Center
Your Program Runs
Program A
Program B
Program C
A
B
A
C
Batch Processing
Multiprogramming
Kinds of Processor-Sharing
Multiprogramming
User program X runs until it gets stuck, then
supervisor program takes over.
Non-preemptive multi-tasking
User program X runs until it decides to let the
supervisor program run.
Preemptive multi-tasking
User program X runs until the (approximately)
supervisor decides to let another program run.
12 September 2013 University of Virginia cs4414 4
Non-preemptive Preemptive
12 September 2013 University of Virginia cs4414 5
12 September 2013 University of Virginia cs4414 6
MULTICS (1969)
UNIX (1975)
PowerMac G5
(Mac OS 9)
2006
MacBook Air
(Mac OS X)
2011
Microsoft
Windows 2.1x
1988
Which have
preemptive
multitasking?
Which have preemptive
multitasking?
12 September 2013 University of Virginia cs4414 7
MULTICS (1969)
UNIX (1975)
PowerMac G5
(Mac OS 9)
2006
MacBook Air
(Mac OS X)
2011
Microsoft
Windows 2.1x
1988
How could I prove it?
12 September 2013 University of Virginia cs4414 8
One-line Proof
12 September 2013 University of Virginia cs4414 9
Quiz
Which are results of preemptive multitasking?
A. A computer running Mac OS X crashes less
than one running Mac OS 9
B. A computer running Mac OS X needs
fewer hard reboots than one running Mac
OS 9
C. When you watch Gangnam Style even for
the 50th time, the video jitters
D. A Senator can play poker on an iPhone
during an important hearing
12 September 2013 University of Virginia cs4414 10
12 September 2013 University of Virginia cs4414 11
How did Apple add preemptive multitasking to Mac OS?
Mac OS X (Cheetah)
24 March 2001
Mac OS 9.2.2
5 Dec 2001
12 September 2013 University of Virginia cs4414 12
http://www.youtube.com/watch?v=YsWBJ_usRck&t=2m18s
(The answer is
probably not in this
movie.)
12 September 2013 University of Virginia cs4414 13
“Once you make them talk, they
won’t be inanimate anymore.”
Steve Jobs (as quoted by Sorkin
earlier in interview)
12 September 2013 University of Virginia cs4414 14
https://upload.wikimedia.org/wikipedia/commons/7/77/Unix_history-simple.svg
12 September 2013 University of Virginia cs4414 15
12 September 2013 University of Virginia cs4414 16
12 September 2013 University of Virginia cs4414 17
12 September 2013 University of Virginia cs4414 18
Tim Berners Lee finishing PS1 23 years early!
12 September 2013 University of Virginia cs4414 19
MULTICS
Unix
BSD
Linux
Minix
Android
NextStep
Mac OS X
iOS
Code (carries license)
“Ideas” (no license,
possible patent lawsuits)
FreeBSD
12 September 2013 University of Virginia cs4414 20
12 September 2013 University of Virginia cs4414 21
12 September 2013 University of Virginia cs4414 22
Non-Malicious
Developers
I am not making this up (really)!:
http://www.pkr.com/en/community/news-events/pkr-for-iphone/
Senator’s Phone
12 September 2013 University of Virginia cs4414 23
So, which API
do I use to
turn on his
microphone?
12 September 2013 University of Virginia cs4414 24
Malicious
Developers
(This one is speculative…)
PRK
senate hearing
Senator’s Phone
Actually just a little harder…
12 September 2013 University of Virginia cs4414 25
Malicious
Developers
Is “App Review” Possible?
12 September 2013 University of Virginia cs4414 26
Ok! Never
turns on
microphone.
Some
program
execution
turns on the
microphone!
12 September 2013 University of Virginia cs4414 27
Not on my
machine, muc
hachas!
What Seems To Be Possible
12 September 2013 University of Virginia cs4414 28
Ok! Never
turns on
microphone.
Some
program
execution
turns on the
microphone!Not
sure…let’s
send it to
NSA just in
case.
12 September 2013 University of Virginia cs4414 29
12 September 2013 University of Virginia cs4414 30
USENIX Security 2013 (click picture for talk video)
What Is Actually Possible
12 September 2013 University of Virginia cs4414 31
Ok! Never
turns on
microphone.
Some
program
execution
turns on the
microphone!Not
sure…let’s
send it to
NSA just in
case.
The Good News!
12 September 2013 University of Virginia cs4414 32
May have been posted by malicious app, not US senator.
How can
preemptive multitasking
even be possible?!?
12 September 2013 University of Virginia cs4414 33
More bad news…?
Preemptive multi-tasking
User program X runs until the supervisor
decides to let another program run.
Preemptive (?) Multitasking
12 September 2013 University of Virginia cs4414 34
Program A
Program B
Program C
A
B
A
Supervisor
Supervisor
Supervisor
A
12 September 2013 University of Virginia cs4414 35
12 September 2013 University of Virginia cs4414 36
Interrupts
12 September 2013 University of Virginia cs4414 37
How frequently
should the
supervisor’s alarm
clock (“kernel
timer interrupt”)
go off to check on
the workers?
My MacBook (Ubuntu)
12 September 2013 University of Virginia cs4414 38
bash-3.2$ uname -a
Darwin Davids-MacBook-Air-2.local 11.4.2 Darwin Kernel
Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-
1699.32.7~1/RELEASE_X86_64 x86_64
bash-3.2$ gcc timer.c ; ./a.out
kernel timer interrupt frequency is approx. 4016 Hz or higher
timer.c is a 50-line C program from
http://www.advenage.com/topics/linux-timer-interrupt-frequency.php (link on notes)
Midterm exemption opportunity:
make a Rust version (and convince me it is accurate)
Timer Interrupts
12 September 2013 University of Virginia cs4414 39
A B
Super
visor
set alarm clock
switch to program A
What makes the alarm clock ring?
Supervisor
set alarm clock
switch to program B
Supervisor
Who interrupts the supervisor?
12 September 2013 University of Virginia cs4414 40
The supervisor’s supervisor!
12 September 2013 University of Virginia cs4414 41
a.k.a. Hypervisor
12 September 2013 University of Virginia cs4414 42
Support for hypervisor added
to Intel x86 in 2005 (VT-x)
12 September 2013 University of Virginia cs4414 43
More general (quite
similar) idea in MULTICS
(but with 8-levels of
supervision in hardware
by 1975)
PS2: The Good Ole Shell
12 September 2013 University of Virginia cs4414 44
$ echo ‘Wha-hoo-wa!’
$ !!
$ traceroute 128.143.22.36
$ id -p ray
$ !!
$ fsck; !mount -u VA!

Más contenido relacionado

Similar a Once Upon a Process

Mirage: Extreme Specialization Of Cloud Appliances
Mirage: Extreme Specialization Of Cloud AppliancesMirage: Extreme Specialization Of Cloud Appliances
Mirage: Extreme Specialization Of Cloud Appliances
The Linux Foundation
 
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
Shadi Nabil Albarqouni
 

Similar a Once Upon a Process (13)

What the &~#@<!? (Memory Management in Rust)
What the &~#@<!? (Memory Management in Rust)What the &~#@<!? (Memory Management in Rust)
What the &~#@<!? (Memory Management in Rust)
 
Storage Systems
Storage SystemsStorage Systems
Storage Systems
 
Access Control
Access ControlAccess Control
Access Control
 
Reverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android appsReverse engineering and instrumentation of android apps
Reverse engineering and instrumentation of android apps
 
Research @ RELEASeD (presented at SATTOSE2013)
Research @ RELEASeD (presented at SATTOSE2013)Research @ RELEASeD (presented at SATTOSE2013)
Research @ RELEASeD (presented at SATTOSE2013)
 
Predicting Reassignments of Bug Reports — an Exploratory Investigation
Predicting Reassignments of Bug Reports — an Exploratory InvestigationPredicting Reassignments of Bug Reports — an Exploratory Investigation
Predicting Reassignments of Bug Reports — an Exploratory Investigation
 
Mirage: Extreme Specialization Of Cloud Appliances
Mirage: Extreme Specialization Of Cloud AppliancesMirage: Extreme Specialization Of Cloud Appliances
Mirage: Extreme Specialization Of Cloud Appliances
 
Mirage - Extreme specialization of cloud appliances (OSCON 2013)
Mirage - Extreme specialization of cloud appliances (OSCON 2013)Mirage - Extreme specialization of cloud appliances (OSCON 2013)
Mirage - Extreme specialization of cloud appliances (OSCON 2013)
 
Lessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet AgentsLessons I Learned While Scaling to 5000 Puppet Agents
Lessons I Learned While Scaling to 5000 Puppet Agents
 
Gc vit sttp cc december 2013
Gc vit sttp cc december 2013Gc vit sttp cc december 2013
Gc vit sttp cc december 2013
 
Using Git, Pointers in Rust
Using Git, Pointers in RustUsing Git, Pointers in Rust
Using Git, Pointers in Rust
 
Smartgears
SmartgearsSmartgears
Smartgears
 
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
Robust Stability and Disturbance Analysis of a Class of Networked Control Sys...
 

Más de David Evans

Más de David Evans (20)

Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!
 
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for CypherpunksTrick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
 
Hidden Services, Zero Knowledge
Hidden Services, Zero KnowledgeHidden Services, Zero Knowledge
Hidden Services, Zero Knowledge
 
Anonymity in Bitcoin
Anonymity in BitcoinAnonymity in Bitcoin
Anonymity in Bitcoin
 
Midterm Confirmations
Midterm ConfirmationsMidterm Confirmations
Midterm Confirmations
 
Scripting Transactions
Scripting TransactionsScripting Transactions
Scripting Transactions
 
How to Live in Paradise
How to Live in ParadiseHow to Live in Paradise
How to Live in Paradise
 
Bitcoin Script
Bitcoin ScriptBitcoin Script
Bitcoin Script
 
Mining Economics
Mining EconomicsMining Economics
Mining Economics
 
Mining
MiningMining
Mining
 
The Blockchain
The BlockchainThe Blockchain
The Blockchain
 
Becoming More Paranoid
Becoming More ParanoidBecoming More Paranoid
Becoming More Paranoid
 
Asymmetric Key Signatures
Asymmetric Key SignaturesAsymmetric Key Signatures
Asymmetric Key Signatures
 
Introduction to Cryptography
Introduction to CryptographyIntroduction to Cryptography
Introduction to Cryptography
 
Class 1: What is Money?
Class 1: What is Money?Class 1: What is Money?
Class 1: What is Money?
 
Multi-Party Computation for the Masses
Multi-Party Computation for the MassesMulti-Party Computation for the Masses
Multi-Party Computation for the Masses
 
Proof of Reserve
Proof of ReserveProof of Reserve
Proof of Reserve
 
Silk Road
Silk RoadSilk Road
Silk Road
 
Blooming Sidechains!
Blooming Sidechains!Blooming Sidechains!
Blooming Sidechains!
 
Useful Proofs of Work, Permacoin
Useful Proofs of Work, PermacoinUseful Proofs of Work, Permacoin
Useful Proofs of Work, Permacoin
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Once Upon a Process

  • 1. cs4414 Fall 2013 University of Virginia David Evans Columbus, 28 Feb 2001 Jeonju, 17 June 2002 Class 2-0: Once Upon a Process
  • 2. Today’s Main Question How can several programs share a processor? 112 September 2013 University of Virginia cs4414
  • 3. 12 September 2013 University of Virginia cs4414 2
  • 4. Recap: Last Class 12 September 2013 University of Virginia cs4414 3 Program Computer Center Your Program Runs Program A Program B Program C A B A C Batch Processing Multiprogramming
  • 5. Kinds of Processor-Sharing Multiprogramming User program X runs until it gets stuck, then supervisor program takes over. Non-preemptive multi-tasking User program X runs until it decides to let the supervisor program run. Preemptive multi-tasking User program X runs until the (approximately) supervisor decides to let another program run. 12 September 2013 University of Virginia cs4414 4
  • 6. Non-preemptive Preemptive 12 September 2013 University of Virginia cs4414 5
  • 7. 12 September 2013 University of Virginia cs4414 6 MULTICS (1969) UNIX (1975) PowerMac G5 (Mac OS 9) 2006 MacBook Air (Mac OS X) 2011 Microsoft Windows 2.1x 1988 Which have preemptive multitasking?
  • 8. Which have preemptive multitasking? 12 September 2013 University of Virginia cs4414 7 MULTICS (1969) UNIX (1975) PowerMac G5 (Mac OS 9) 2006 MacBook Air (Mac OS X) 2011 Microsoft Windows 2.1x 1988
  • 9. How could I prove it? 12 September 2013 University of Virginia cs4414 8
  • 10. One-line Proof 12 September 2013 University of Virginia cs4414 9
  • 11. Quiz Which are results of preemptive multitasking? A. A computer running Mac OS X crashes less than one running Mac OS 9 B. A computer running Mac OS X needs fewer hard reboots than one running Mac OS 9 C. When you watch Gangnam Style even for the 50th time, the video jitters D. A Senator can play poker on an iPhone during an important hearing 12 September 2013 University of Virginia cs4414 10
  • 12. 12 September 2013 University of Virginia cs4414 11 How did Apple add preemptive multitasking to Mac OS? Mac OS X (Cheetah) 24 March 2001 Mac OS 9.2.2 5 Dec 2001
  • 13. 12 September 2013 University of Virginia cs4414 12 http://www.youtube.com/watch?v=YsWBJ_usRck&t=2m18s (The answer is probably not in this movie.)
  • 14. 12 September 2013 University of Virginia cs4414 13 “Once you make them talk, they won’t be inanimate anymore.” Steve Jobs (as quoted by Sorkin earlier in interview)
  • 15. 12 September 2013 University of Virginia cs4414 14 https://upload.wikimedia.org/wikipedia/commons/7/77/Unix_history-simple.svg
  • 16. 12 September 2013 University of Virginia cs4414 15
  • 17. 12 September 2013 University of Virginia cs4414 16
  • 18. 12 September 2013 University of Virginia cs4414 17
  • 19. 12 September 2013 University of Virginia cs4414 18 Tim Berners Lee finishing PS1 23 years early!
  • 20. 12 September 2013 University of Virginia cs4414 19 MULTICS Unix BSD Linux Minix Android NextStep Mac OS X iOS Code (carries license) “Ideas” (no license, possible patent lawsuits) FreeBSD
  • 21. 12 September 2013 University of Virginia cs4414 20
  • 22. 12 September 2013 University of Virginia cs4414 21
  • 23. 12 September 2013 University of Virginia cs4414 22 Non-Malicious Developers I am not making this up (really)!: http://www.pkr.com/en/community/news-events/pkr-for-iphone/ Senator’s Phone
  • 24. 12 September 2013 University of Virginia cs4414 23 So, which API do I use to turn on his microphone?
  • 25. 12 September 2013 University of Virginia cs4414 24 Malicious Developers (This one is speculative…) PRK senate hearing Senator’s Phone
  • 26. Actually just a little harder… 12 September 2013 University of Virginia cs4414 25 Malicious Developers
  • 27. Is “App Review” Possible? 12 September 2013 University of Virginia cs4414 26 Ok! Never turns on microphone. Some program execution turns on the microphone!
  • 28. 12 September 2013 University of Virginia cs4414 27 Not on my machine, muc hachas!
  • 29. What Seems To Be Possible 12 September 2013 University of Virginia cs4414 28 Ok! Never turns on microphone. Some program execution turns on the microphone!Not sure…let’s send it to NSA just in case.
  • 30. 12 September 2013 University of Virginia cs4414 29
  • 31. 12 September 2013 University of Virginia cs4414 30 USENIX Security 2013 (click picture for talk video)
  • 32. What Is Actually Possible 12 September 2013 University of Virginia cs4414 31 Ok! Never turns on microphone. Some program execution turns on the microphone!Not sure…let’s send it to NSA just in case.
  • 33. The Good News! 12 September 2013 University of Virginia cs4414 32 May have been posted by malicious app, not US senator.
  • 34. How can preemptive multitasking even be possible?!? 12 September 2013 University of Virginia cs4414 33 More bad news…? Preemptive multi-tasking User program X runs until the supervisor decides to let another program run.
  • 35. Preemptive (?) Multitasking 12 September 2013 University of Virginia cs4414 34 Program A Program B Program C A B A Supervisor Supervisor Supervisor A
  • 36. 12 September 2013 University of Virginia cs4414 35
  • 37. 12 September 2013 University of Virginia cs4414 36
  • 38. Interrupts 12 September 2013 University of Virginia cs4414 37 How frequently should the supervisor’s alarm clock (“kernel timer interrupt”) go off to check on the workers?
  • 39. My MacBook (Ubuntu) 12 September 2013 University of Virginia cs4414 38 bash-3.2$ uname -a Darwin Davids-MacBook-Air-2.local 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu- 1699.32.7~1/RELEASE_X86_64 x86_64 bash-3.2$ gcc timer.c ; ./a.out kernel timer interrupt frequency is approx. 4016 Hz or higher timer.c is a 50-line C program from http://www.advenage.com/topics/linux-timer-interrupt-frequency.php (link on notes) Midterm exemption opportunity: make a Rust version (and convince me it is accurate)
  • 40. Timer Interrupts 12 September 2013 University of Virginia cs4414 39 A B Super visor set alarm clock switch to program A What makes the alarm clock ring? Supervisor set alarm clock switch to program B Supervisor
  • 41. Who interrupts the supervisor? 12 September 2013 University of Virginia cs4414 40
  • 42. The supervisor’s supervisor! 12 September 2013 University of Virginia cs4414 41 a.k.a. Hypervisor
  • 43. 12 September 2013 University of Virginia cs4414 42 Support for hypervisor added to Intel x86 in 2005 (VT-x)
  • 44. 12 September 2013 University of Virginia cs4414 43 More general (quite similar) idea in MULTICS (but with 8-levels of supervision in hardware by 1975)
  • 45. PS2: The Good Ole Shell 12 September 2013 University of Virginia cs4414 44 $ echo ‘Wha-hoo-wa!’ $ !! $ traceroute 128.143.22.36 $ id -p ray $ !! $ fsck; !mount -u VA!