From: Godmar Back Date: Fri, 29 Aug 2008 12:37:46 +0000 (+0000) Subject: added refs and fixed up intro X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=610c2ea8453c5c82565aff4bc9d7bad97766b61a;p=pintos-anon added refs and fixed up intro --- diff --git a/sigcse2009/introduction.tex b/sigcse2009/introduction.tex index 1673e6f..3a85363 100644 --- a/sigcse2009/introduction.tex +++ b/sigcse2009/introduction.tex @@ -63,7 +63,7 @@ PortOS~\cite{Atkin2002PortOS}, JOS~\cite{1088822}, or Yalnix~\cite{1088822} we believe that it is unique in two aspects. First, Pintos runs on both real hardware and in emulated and -simulated environments.~\footnote{GeekOS claims to also run on real hardware, it requires, +simulated environments.\footnote{GeekOS claims to also run on real hardware, it requires, however, a dedicated disk and does not support running off USB devices, making it impractical for many lab settings.} Second, we have created a set of analysis tools @@ -71,6 +71,14 @@ for the emulated environment that allows students to detect programming mistakes such as race conditions. Figure~\ref{fig:pintosenvs} shows the three environments in which the same kernel can be run. +Others have used Linux, either on dedicated devices (e.g., iPodLinux~\cite{1352199}), +or in virtualizated environments~\cite{1008027,1352648,Nieh2005Experiences}, to provide +an internal, concrete perspective. Compared to those approaches, Pintos provides +a similar level of realism to students in that they can see the result of their +work on concrete or virtualized hardware, but does not require that students +understand the often arcane and ill-documented interfaces of the Linux kernel, +which were not designed from an educational perspective. + This paper reports on the design philosophy that underlies Pintos, details its structure, and outlines the nature and learning goals of each assignments. @@ -79,12 +87,12 @@ assignments. \pintosdetailfigure{} -To be discussed: -User-Mode Linux\cite{1008027} -iPodLinux~\cite{1352199} -Linux in VM\cite{Nieh2005Experiences} - % Challenges. % How to embed principles? % How to teach software engineering? % Realism vs. Simplification + +%User-Mode Linux\cite{1008027} +%Virtualization\cite{1352648} +%Linux in VM\cite{Nieh2005Experiences} + diff --git a/sigcse2009/racedt.tex b/sigcse2009/racedt.tex index 0d9b282..2c9064d 100644 --- a/sigcse2009/racedt.tex +++ b/sigcse2009/racedt.tex @@ -7,7 +7,7 @@ system emulator~\cite{Bellard2005QEMU} to help detect these mistakes. Since these tools do not require additional support from the Pintos kernel; students can use them without complicating their code. -Data races are found by using a semaphore-aware modification of the RaceTrack algorithm~\cite{RaceTrack}. +Data races are found by using a semaphore-aware modification of the RaceTrack algorithm~\cite{Yu2005RaceTrack}. Calls to Pintos's synchronization primitives are instrumented at runtime to track every thread's data sharing pattern. Meanwhile, every memory access records synchronization information to shadow memory maintained by the analysis tool. When the synchronization information for a memory address diff --git a/sigcse2009/sigcse2009.bib b/sigcse2009/sigcse2009.bib index e539757..847646b 100644 --- a/sigcse2009/sigcse2009.bib +++ b/sigcse2009/sigcse2009.bib @@ -1,6 +1,41 @@ % % This file is automatically generated by citeulike.org % +@inproceedings{Yu2005RaceTrack, + address = {New York, NY, USA}, + author = {Yu, Yuan and Rodeheffer, Tom and Chen, Wei }, + booktitle = {SOSP '05: Proceedings of the twentieth ACM symposium on Operating systems principles}, + citeulike-article-id = {2373000}, + doi = {10.1145/1095810.1095832}, + isbn = {1595930795}, + pages = {221--234}, + posted-at = {2008-08-29 13:59:10}, + priority = {2}, + publisher = {ACM}, + title = {RaceTrack: efficient detection of data race conditions via adaptive tracking}, + url = {http://portal.acm.org/citation.cfm?id=1095810.1095832}, + year = {2005} +} + + + +@article{1352648, + address = {, USA}, + author = {Gaspar, Alessio and Langevin, Sarah and Armitage, William D. and Rideout, Matt }, + citeulike-article-id = {3170970}, + journal = {J. Comput. Small Coll.}, + number = {5}, + pages = {123--132}, + posted-at = {2008-08-29 02:42:41}, + priority = {2}, + publisher = {Consortium for Computing Sciences in Colleges}, + title = {March of the (virtual) machines: past, present, and future milestones in the adoption of virtualization in computing education}, + volume = {23}, + year = {2008} +} + + + @inproceedings{1352201, address = {New York, NY, USA}, author = {Brylow, Dennis },