X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=sigcse2009%2Fprinciples.tex;h=221fb438fe8cea31663712e3639c4774ec14d7dc;hb=00518d06da1411fe087ea2a5b84a80dc25f05fba;hp=681234893245bc075e3d64764eb3873244fbb00f;hpb=02d9affcb344f1ebc4253c59230fea7119469a89;p=pintos-anon diff --git a/sigcse2009/principles.tex b/sigcse2009/principles.tex index 6812348..221fb43 100644 --- a/sigcse2009/principles.tex +++ b/sigcse2009/principles.tex @@ -23,9 +23,9 @@ portions that initially proved difficult to understand or confusing. \paragraph{Maximize Creative Freedom} OS design involves a tremendous amount of creative freedom, both in the -choice of algorithm and data structures. Our projects are designed to +choice of algorithms and data structures. Our projects are designed to stimulate creativity by avoiding the prescription of specific approaches -to accomplish each project's goals. Instead, students must design their +to accomplish each project's goals. Instead, students design their own data structures and associated algorithms as much as possible. \paragraph{Practice Test-driven Development} @@ -57,16 +57,17 @@ is substantially similar to how user programs are being debugged. \paragraph{Include Analysis Tools} Static and dynamic analysis tools are now being widely used; an OS course should -be no exception. We have extended the QEMU emulator~\cite{Bellard2005QEMU} to -perform tailored analyses that point out errors such as race conditions. +be no exception. In Section~\ref{sec:dynamicanalysis}, we describe how we +extended the QEMU emulator~\cite{Bellard2005QEMU} to +perform tailored analyses that find errors such as race conditions. \paragraph{Provide Extensive and Structured Documentation} If using an instructional system requires too much undocumented knowledge, -the system is often not shared, or falls into disuse, because the learning curve -for instructors wishing to use it is too steep and training teaching assistants is difficult. +the system is often not shared or falls into disuse because the learning curve +for instructors is too steep and training teaching assistants is difficult. Pintos includes an extensive 129 page manual, a sample solution, -and instructions for teaching assistants. The assignment documentation separates sections -students must read from sections that merely provide supplemental information. +and grading instructions for teaching assistants. The project documentation +highlights sections students must read from sections that merely provide supplemental information. %Even though Pintos uses an existing and complex architecture, our experience indicates %that the manual is sufficient for most students.