While uncommon, it is possible for operating systems to generate code during execution or to modify previously executing code. For instance, an operating system might redefine a function at runtime, by overwriting the instructions for that function directly, into a more optimal version as it gathers statistics during execution.
A naive implementation of the translator might overlook this possibility and execute stale code under such circumstances. Why, for example, would a naive implementation of the translator in the paper have this problem? Then, devise a simple strategy that takes code generation into account and allows the VMM to re-translate modified code.
Local Stanford students should write up their response on a sheet of paper that includes their name. The sheet of paper with the response should be submitted immediately before lecture.
SCPD students should write up their response in a text file named
response.virt.txt and upload it via the submission and grades page. You’ll
need to sign in with your SUNetID to access the page. Responses will be accepted
until one week after the corresponding paper’s lecture.
In either case, the response should be short, likely only a pithy paragraph in length.
Tuesdays and Thursdays
4:30pm - 5:50pm
Gates B1
Dawson
Mondays
3:00pm - 5:00pm
Gates 314
Sergio
Mondays and Wednesdays
6:00pm - 7:30pm
Gates 288
Dawson Engler
Instructor
Gates 314
Sergio Benitez
Instructor
Gates 288
Spring 2015
Spring 2014
Winter 2013
Spring 2013
Spring 2012
Spring 2011
Spring 2010