ÿþ<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40" xmlns:ns0="http://macVmlSchemaUri" xml:lang="en"> <head> <meta http-equiv=Content-Type content="text/html; charset=unicode"> <meta name=ProgId content=Word.Document> <meta name=Generator content="Microsoft Word 12"> <meta name=Originator content="Microsoft Word 12"> <link rel=File-List href="questions_files/filelist.xml"> <link rel=Edit-Time-Data href="questions_files/editdata.mso"> <!--[if !mso]> <style> v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--> <title>COS 318: Questions</title> <!--[if gte mso 9]><xml> <o:DocumentProperties> <o:Author>kai li</o:Author> <o:Template>Normal</o:Template> <o:LastAuthor>kai li</o:LastAuthor> <o:Revision>6</o:Revision> <o:TotalTime>42</o:TotalTime> <o:Created>2009-09-17T02:03:00Z</o:Created> <o:LastSaved>2009-12-08T16:31:00Z</o:LastSaved> <o:Pages>2</o:Pages> <o:Words>1489</o:Words> <o:Characters>8489</o:Characters> <o:Company>Princeton University</o:Company> <o:Lines>70</o:Lines> <o:Paragraphs>19</o:Paragraphs> <o:CharactersWithSpaces>9959</o:CharactersWithSpaces> <o:Version>12.00</o:Version> </o:DocumentProperties> <o:OfficeDocumentSettings> <o:AllowPNG/> </o:OfficeDocumentSettings> </xml><![endif]--> <link rel=themeData href="questions_files/themedata.thmx"> <link rel=colorSchemeMapping href="questions_files/colorschememapping.xml"> <!--[if gte mso 9]><xml> <w:WordDocument> <w:Zoom>150</w:Zoom> <w:SpellingState>Clean</w:SpellingState> <w:GrammarState>Clean</w:GrammarState> <w:TrackMoves/> <w:TrackFormatting/> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF/> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:SplitPgBreakAndParaMark/> <w:DontVertAlignCellWithSp/> <w:DontBreakConstrainedForcedTables/> <w:DontVertAlignInTxbx/> <w:Word11KerningPairs/> <w:CachedColBalance/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math"/> <m:brkBin m:val="before"/> <m:brkBinSub m:val="--"/> <m:smallFrac m:val="off"/> <m:dispDef/> <m:lMargin m:val="0"/> <m:rMargin m:val="0"/> <m:defJc m:val="centerGroup"/> <m:wrapIndent m:val="1440"/> <m:intLim m:val="subSup"/> <m:naryLim m:val="undOvr"/> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false" DefSemiHidden="false" DefQFormat="false" LatentStyleCount="267"> <w:LsdException Locked="false" QFormat="true" Name="Normal"/> <w:LsdException Locked="false" QFormat="true" Name="heading 1"/> <w:LsdException Locked="false" QFormat="true" Name="heading 2"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 3"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 4"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 5"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 6"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 7"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 8"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 9"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="caption"/> <w:LsdException Locked="false" QFormat="true" Name="Title"/> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/> <w:LsdException Locked="false" QFormat="true" Name="Subtitle"/> <w:LsdException Locked="false" QFormat="true" Name="Strong"/> <w:LsdException Locked="false" QFormat="true" Name="Emphasis"/> <w:LsdException Locked="false" Priority="99" Name="No List"/> <w:LsdException Locked="false" QFormat="true" Name="No Spacing"/> <w:LsdException Locked="false" QFormat="true" Name="List Paragraph"/> <w:LsdException Locked="false" QFormat="true" Name="Quote"/> <w:LsdException Locked="false" QFormat="true" Name="Intense Quote"/> <w:LsdException Locked="false" QFormat="true" Name="Subtle Emphasis"/> <w:LsdException Locked="false" QFormat="true" Name="Intense Emphasis"/> <w:LsdException Locked="false" QFormat="true" Name="Subtle Reference"/> <w:LsdException Locked="false" QFormat="true" Name="Intense Reference"/> <w:LsdException Locked="false" QFormat="true" Name="Book Title"/> <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/> </w:LatentStyles> </xml><![endif]--> <style> <!--@import url("../style.css"); #DAYOFMILK td {border-right: solid 5mm transparent;} /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:SimSun; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:‹[SO; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face {font-family:Times; panose-1:2 2 6 3 5 4 5 2 3 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-format:other; mso-font-pitch:variable; mso-font-signature:3 0 0 0 1 0;} @font-face {font-family:"\@SimSun"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} h1 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"Heading 1 Char"; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; mso-outline-level:1; font-size:24.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; font-weight:bold;} h2 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"Heading 2 Char"; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; mso-outline-level:2; font-size:18.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; font-weight:bold;} p.MsoTitle, li.MsoTitle, div.MsoTitle {mso-style-name:"Title\,title"; mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"Title Char\,title Char"; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} a:link, span.MsoHyperlink {mso-style-unhide:no; color:blue; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {mso-style-unhide:no; color:blue; text-decoration:underline; text-underline:single;} p {mso-style-unhide:no; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman";} span.Heading1Char {mso-style-name:"Heading 1 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"Heading 1"; mso-ansi-font-size:16.0pt; mso-bidi-font-size:16.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:SimSun; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; color:#345A8A; font-weight:bold;} span.Heading2Char {mso-style-name:"Heading 2 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"Heading 2"; mso-ansi-font-size:13.0pt; mso-bidi-font-size:13.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:SimSun; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; color:#4F81BD; font-weight:bold;} span.TitleChar {mso-style-name:"Title Char\,title Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"Title\,title"; mso-ansi-font-size:26.0pt; mso-bidi-font-size:26.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:SimSun; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; color:#183A63; letter-spacing:.25pt; mso-font-kerning:14.0pt;} span.TitleChar1 {mso-style-name:"Title Char1\,title Char1"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"Title\,title"; mso-ansi-font-size:26.0pt; mso-bidi-font-size:26.0pt; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:SimSun; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; color:#17365D; mso-themecolor:text2; mso-themeshade:191; letter-spacing:.25pt; mso-font-kerning:14.0pt;} p.citation, li.citation, div.citation {mso-style-name:citation; mso-style-unhide:no; margin-top:0in; margin-right:28.35pt; margin-bottom:0in; margin-left:28.35pt; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} p.e2, li.e2, div.e2 {mso-style-name:e2; mso-style-unhide:no; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} p.e21, li.e21, div.e21 {mso-style-name:e21; mso-style-unhide:no; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; font-style:italic;} p.title1, li.title1, div.title1 {mso-style-name:title1; mso-style-unhide:no; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times","serif"; mso-fareast-font-family:SimSun; mso-fareast-theme-font:minor-fareast; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; font-style:italic;} span.code {mso-style-name:code; mso-style-unhide:no;} span.cod {mso-style-name:cod; mso-style-unhide:no;} span.title2 {mso-style-name:title2; mso-style-unhide:no;} span.SpellE {mso-style-name:""; mso-spl-e:yes;} span.GramE {mso-style-name:""; mso-gram-e:yes;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:368378496; mso-list-template-ids:327867270;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l0:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:"Courier New";} @list l0:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l0:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l1 {mso-list-id:395133465; mso-list-template-ids:191118994;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l1:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l1:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l2 {mso-list-id:507796185; mso-list-template-ids:-329506708;} @list l2:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l2:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l2:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l3 {mso-list-id:522322170; mso-list-template-ids:1306529480;} @list l3:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l3:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l3:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l4 {mso-list-id:550575471; mso-list-template-ids:-863574008;} @list l4:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l4:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l4:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l5 {mso-list-id:595985516; mso-list-template-ids:-1309771252;} @list l5:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l5:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l5:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l6 {mso-list-id:655258626; mso-list-template-ids:1911969542;} @list l6:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l6:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l6:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l7 {mso-list-id:674574324; mso-list-template-ids:-612348958;} @list l7:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l7:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l7:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l8 {mso-list-id:1046756712; mso-list-template-ids:296127324;} @list l8:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l8:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l8:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l9 {mso-list-id:1066953357; mso-list-template-ids:-454006268;} @list l9:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l9:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l9:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l10 {mso-list-id:1100833304; mso-list-template-ids:-609034484;} @list l10:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l10:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l10:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l11 {mso-list-id:1127552408; mso-list-template-ids:1450896004;} @list l11:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l11:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l11:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l12 {mso-list-id:1170759014; mso-list-type:hybrid; mso-list-template-ids:-1524318078 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l12:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l13 {mso-list-id:1235123887; mso-list-template-ids:-844620174;} @list l13:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l13:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l13:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l14 {mso-list-id:1494294255; mso-list-template-ids:-1094697414;} @list l14:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l14:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l14:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l15 {mso-list-id:1690451163; mso-list-template-ids:-594779518;} @list l15:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l15:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l15:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l16 {mso-list-id:1696226541; mso-list-type:hybrid; mso-list-template-ids:-1844293720 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l16:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l17 {mso-list-id:1716732689; mso-list-template-ids:906419422;} @list l17:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l17:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l17:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l18 {mso-list-id:1875654017; mso-list-template-ids:-1392095540;} @list l18:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l18:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l18:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l19 {mso-list-id:1984190106; mso-list-template-ids:404113566;} @list l19:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l19:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l19:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} @list l20 {mso-list-id:2000307520; mso-list-template-ids:-112279230;} @list l20:level1 {mso-level-number-format:bullet; mso-level-text:·ð; mso-level-tab-stop:.5in; mso-level-number-position:left; text-indent:-.25in; mso-ansi-font-size:10.0pt; font-family:Symbol;} @list l20:level2 {mso-level-tab-stop:1.0in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level3 {mso-level-tab-stop:1.5in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level4 {mso-level-tab-stop:2.0in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level5 {mso-level-tab-stop:2.5in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level6 {mso-level-tab-stop:3.0in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level7 {mso-level-tab-stop:3.5in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level8 {mso-level-tab-stop:4.0in; mso-level-number-position:left; text-indent:-.25in;} @list l20:level9 {mso-level-tab-stop:4.5in; mso-level-number-position:left; text-indent:-.25in;} ol {margin-bottom:0in;} ul {margin-bottom:0in;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif";} </style> <![endif]--> <meta name=Title content="COS 318: Questions"> <meta name=Keywords content=""> <!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026"/> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1"/> </o:shapelayout></xml><![endif]--> </head> <body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'> <div class=Section1> <div> <h1><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language: EN'>Reading: Questions<o:p></o:p></span></h1> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'>Students are required to turn in their answers to the assigned questions before lecture. These notes are graded. Student will earn 3 points each time: 3 for excellent understanding, 2 for good understanding, 1 for understanding a little, and 0 for no understanding. If you submit your notes after the class, you will not receive any points.<span style='mso-spacerun:yes'>  </span><o:p></o:p></span></p> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'><o:p>&nbsp;</o:p></span></p> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'>You can click the  submit link in the reading assignments section on the course main webpage.<span style='mso-spacerun:yes'>  </span>We only accept online submissions.<span style='mso-spacerun:yes'>    </span><o:p></o:p></span></p> </div> <div> <div class=MsoNormal align=center style='text-align:center'><span lang=EN style='mso-ansi-language:EN'> <hr size=2 width="100%" align=center> </span></div> </div> <div> <h2><a name=q1><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 1.4-1.5<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q1'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q1'><span lang=EN style='mso-ansi-language:EN'>: Understand the responsibilities, components, and services of an operating system. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l3 level1 lfo1;tab-stops:list .5in'><span style='mso-bookmark:q1'><span class=GramE><span lang=EN style='mso-ansi-language: EN'>BIOS (Basic <span class=SpellE>Input/Output</span> System) is</span></span></span><span style='mso-bookmark:q1'><span lang=EN style='mso-ansi-language:EN'> typically held in a flash memory. Is it possible to put the BIOS on disk instead? Please tell briefly the pros and cons of on flash memory and on disk. <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l3 level1 lfo1;tab-stops:list .5in'><span style='mso-bookmark:q1'><span lang=EN style='mso-ansi-language:EN'>The simplest way to bootstrap an operating system is to boot from a binary image on a disk. What would you need to do if you are building a diskless workstation or a network computer which needs to bootstrap from a network file server? Explain your idea of how to do that. <o:p></o:p></span></span></li> </ul> <p class=MsoNormal style='margin-left:.25in'><span style='mso-bookmark:q1'><span lang=EN style='mso-ansi-language:EN'><o:p>&nbsp;</o:p></span></span></p> </div> <span style='mso-bookmark:q1'></span> <div> <h2><a name=q2><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 1.6-1.7<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q2'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q2'><span lang=EN style='mso-ansi-language:EN'>: Understand the OS structure and the implementation of system calls and libraries. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l18 level1 lfo2;tab-stops:list .5in'><span style='mso-bookmark:q2'><span lang=EN style='mso-ansi-language:EN'>What is the difference between a system call and a library call?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l18 level1 lfo2;tab-stops:list .5in'><span style='mso-bookmark:q2'><span lang=EN style='mso-ansi-language:EN'>What are the advantages and disadvantages of the micro-kernel approach? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q2'></span> <div> <h2><a name=q3><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.1-2.2.1-2.2.3<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q3'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>: Understand the concept of program, process, and thread. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l1 level1 lfo3;tab-stops:list .5in'><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>What are the differences between a </span></span><span style='mso-bookmark: q3'><em><span lang=EN style='font-family:"Times","serif";mso-bidi-font-family: Times;mso-ansi-language:EN'>program</span></em></span><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'> and a </span></span><span style='mso-bookmark:q3'><em><span lang=EN style='font-family:"Times","serif"; mso-bidi-font-family:Times;mso-ansi-language:EN'>process</span></em></span><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l1 level1 lfo3;tab-stops:list .5in'><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>What are the differences between a </span></span><span style='mso-bookmark: q3'><em><span lang=EN style='font-family:"Times","serif";mso-bidi-font-family: Times;mso-ansi-language:EN'>process</span></em></span><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'> and a </span></span><span style='mso-bookmark:q3'><em><span lang=EN style='font-family:"Times","serif"; mso-bidi-font-family:Times;mso-ansi-language:EN'>thread</span></em></span><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l1 level1 lfo3;tab-stops:list .5in'><span style='mso-bookmark:q3'><span lang=EN style='mso-ansi-language:EN'>Write the <span class=SpellE>psuedo</span>-code to perform a process context switch<o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q3'></span> <div> <h2><a name=q4><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.2.4-2.2.9<o:p></o:p></span></a></h2> <p><span style='mso-bookmark:q4'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q4'><span lang=EN style='mso-ansi-language:EN'>: Understand different kinds of threads as well as the concept of a critical section. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l4 level1 lfo4;tab-stops:list .5in'><span style='mso-bookmark:q4'><span lang=EN style='mso-ansi-language:EN'>What are the differences between a kernel thread and a user-level thread?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l4 level1 lfo4;tab-stops:list .5in'><span style='mso-bookmark:q4'><span lang=EN style='mso-ansi-language:EN'>Suppose two students share a house and they share the responsibility of buying milk, but their fridge is small. So, they would like to avoid buying too much milk. One day, <o:p></o:p></span></span></li> </ul> <table class=MsoNormalTable border=0 cellpadding=0 style='mso-cellspacing:1.5pt; margin-left:64.35pt;mso-yfti-tbllook:1184;mso-padding-alt:0in 5.4pt 0in 5.4pt'> <thead> <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Time</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Student A</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Student B</span></p> </td> <span style='mso-bookmark:q4'></span> </tr> </thead> <tr style='mso-yfti-irow:1'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:00</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Looks in fridge. No milk.</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'><span style='mso-bookmark:q4'></span> <p class=MsoNormal><span style='mso-bookmark:q4'><o:p>&nbsp;</o:p></span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:2'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:05</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Bikes to <span class=SpellE>WaWa</span></span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'><span style='mso-bookmark:q4'></span> <p class=MsoNormal><span style='mso-bookmark:q4'><o:p>&nbsp;</o:p></span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:3'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:10</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Arrives at <span class=SpellE>WaWa</span></span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Pours cereal. Looks in fridge. No milk.</span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:4'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:15</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Buys milk</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Drives to <span class=SpellE>WaWa</span></span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:5'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:20</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Arrives and <span class=SpellE>and</span> puts milk away</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Arrives at <span class=SpellE>WaWa</span></span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:6'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:25</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'><span style='mso-bookmark:q4'></span> <p class=MsoNormal><span style='mso-bookmark:q4'><o:p>&nbsp;</o:p></span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Buys milk</span></p> </td> <span style='mso-bookmark:q4'></span> </tr> <tr style='mso-yfti-irow:7;mso-yfti-lastrow:yes'> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>3:30</span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'><span style='mso-bookmark:q4'></span> <p class=MsoNormal><span style='mso-bookmark:q4'><o:p>&nbsp;</o:p></span></p> </td> <span style='mso-bookmark:q4'></span> <td style='padding:.75pt .75pt .75pt .75pt'> <p class=MsoNormal><span style='mso-bookmark:q4'>Arrives at home. Pours milk into cereal, <span class=GramE>then</span> puts it away in the fridge.</span></p> </td> <span style='mso-bookmark:q4'></span> </tr> </table> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l4 level1 lfo4;tab-stops:list .5in'><span style='mso-bookmark:q4'><span lang=EN style='mso-ansi-language:EN'>At each step, the student can be distracted and do other things. How would you solve this problem? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q4'></span> <div> <h2><a name=q5><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.3.3, 2.3.6<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q5'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>: Understand how to use disabled interrupts and atomic read-modify-write to implement mutual exclusion. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l14 level1 lfo5;tab-stops:list .5in'><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>The simplest way to implement Acquire() and Release() is: <o:p></o:p></span></span></li> </ul> <p class=MsoNormal style='margin-left:.5in'><span style='mso-bookmark:q5'><span class=GramE><span lang=EN style='mso-ansi-language:EN'>Acquire(</span></span></span><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>) { disable interrupts; } Release() { enable interrupts; } <o:p></o:p></span></span></p> <p class=MsoNormal style='margin-left:.5in'><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>Do you think it works? <span class=GramE>If so, under what conditions?</span> If do not think so, explain why it does not work and how would you make it work. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l14 level1 lfo5;tab-stops:list .5in'><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>The textbook mentioned using a test-and-set instruction to implement mutual exclusion. How would you use it to implement </span><span class=GramE><span class=code>Acquire(</span></span><span class=code>)</span></span><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'> and </span><span class=code>Release()</span></span><span style='mso-bookmark:q5'><span lang=EN style='mso-ansi-language:EN'>? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q5'></span> <div> <h2><a name=q6><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.4 </span></a><span style='mso-bookmark:q6'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 2.5)</span></i></span><span style='mso-bookmark:q6'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p><span style='mso-bookmark:q6'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q6'><span lang=EN style='mso-ansi-language:EN'>: Understand the criteria and methods of CPU scheduling <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l10 level1 lfo6;tab-stops:list .5in'><span style='mso-bookmark:q6'><span lang=EN style='mso-ansi-language:EN'>The non-preemptive scheduler in project 2 uses the First-Come-First-Serve (FCFS) method. Compare this approach with the round-robin scheduling. Under what conditions is the FCFS approach preferred? Under what conditions is round-robin preemptive scheduling approach better? <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l10 level1 lfo6;tab-stops:list .5in'><span style='mso-bookmark:q6'><span lang=EN style='mso-ansi-language:EN'>Round-robin schedulers normally maintain a list of ready processes or threads without duplicates. What would happen if a process or thread occurs more than once in this list? Is there a case where you would like to do that? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q6'></span> <div> <h2><a name=q7><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.3.5, 2.3.7, </span></a><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN'><a href="birrell_threads.pdf"><span class=SpellE>Birrell</span></a><o:p></o:p></span></h2> <p><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language: EN'>Goal</span></i><span lang=EN style='mso-ansi-language:EN'>: Understand the concept of semaphores and monitors and know about how to use them. <o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l2 level1 lfo7;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>What is the difference between Hoare's monitor and the monitor in <span class=SpellE>Birrell's</span> paper? <o:p></o:p></span></li> <li class=MsoNormal style='mso-list:l2 level1 lfo7;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>The textbook has an example (Figure 2-27) of using a Monitor to solve the consumer-producer problem. How would you use the primitives in <span class=SpellE>Birrell's</span> paper to solve the problem? <o:p></o:p></span></li> </ul> </div> <div> <h2><a name=q8><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 6 </span></a><span style='mso-bookmark:q8'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 3)</span></i></span><span style='mso-bookmark:q8'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p><span style='mso-bookmark:q8'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>: Understand the cause of deadlocks and think about the best solution. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l0 level1 lfo8;tab-stops:list .5in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>The textbook lists four conditions for a deadlock (3.2.1) to occur. Discuss what happen if we remove any one of them. <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l0 level1 lfo8;tab-stops:list .5in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>The textbook also lists four strategies to deal with deadlocks (3.3.2): <o:p></o:p></span></span></li> </ul> <ul style='margin-top:0in' type=disc> <ul style='margin-top:0in' type=circle> <li class=MsoNormal style='mso-list:l0 level2 lfo8;tab-stops:list 1.0in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>ignore the problem<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l0 level2 lfo8;tab-stops:list 1.0in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>detect and recover<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l0 level2 lfo8;tab-stops:list 1.0in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>avoid deadlocks by careful resource allocation<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l0 level2 lfo8;tab-stops:list 1.0in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>prevent deadlocks by negating a necessary condition<o:p></o:p></span></span></li> </ul> </ul> <p class=MsoNormal style='margin-left:.5in'><span style='mso-bookmark:q8'><span lang=EN style='mso-ansi-language:EN'>Explain which strategy you prefer and how you would implement it. <o:p></o:p></span></span></p> </div> <span style='mso-bookmark:q8'></span> <div> <h2><a name=q10><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 5.1-5.3, 5.5-5.9<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q10'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q10'><span lang=EN style='mso-ansi-language:EN'>: Understand I/O devices, their interrupt handlers, and device drivers. <o:p></o:p></span></span></p> <p><span style='mso-bookmark:q10'><span lang=EN style='mso-ansi-language:EN'>A complicated issue in designing a device driver is to provide asynchronous operations. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l11 level1 lfo9;tab-stops:list .5in'><span style='mso-bookmark:q10'><span lang=EN style='mso-ansi-language:EN'>What design and implementation issues will you need to consider if you want to provide users with asynchronous operations? List the issues you can think of and make some comments on each. <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q10'></span> <div> <h2><a name=q11><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 2.3.8, 8.2.1-8.2.4<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q11'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q11'><span lang=EN style='mso-ansi-language:EN'>: Understand the issues in designing message-passing APIs and how to implement them. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l7 level1 lfo10;tab-stops:list .5in'><span style='mso-bookmark:q11'><span lang=EN style='mso-ansi-language:EN'>Consider implementing inter-process communication primitives </span><span class=GramE><span class=code>send(</span></span><span class=code>destination, <span class=SpellE>msg</span>, n)</span></span><span style='mso-bookmark: q11'><span lang=EN style='mso-ansi-language:EN'> and </span><span class=SpellE><span class=code>recv</span></span><span class=code>(source, buffer, max)</span></span><span style='mso-bookmark:q11'><span lang=EN style='mso-ansi-language:EN'>, where </span><span class=cod>destination</span></span><span style='mso-bookmark:q11'><span lang=EN style='mso-ansi-language:EN'> and </span><span class=code>source</span></span><span style='mso-bookmark:q11'><span lang=EN style='mso-ansi-language:EN'> specify the destination process and source process respectively. Provide <span class=SpellE>psuedo</span>-code to show how to implement the two primitives. Your code should consider issues with synchronization and buffer management. <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q11'></span> <div> <h2><a name=q12><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 3.1-3.3.3 </span></a><span style='mso-bookmark:q12'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 4.1-4.3.3)</span></i></span><span style='mso-bookmark:q12'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q12'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q12'><span lang=EN style='mso-ansi-language:EN'>: Understand the basic concept of virtual memory and various address translations <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l8 level1 lfo11;tab-stops:list .5in'><span style='mso-bookmark:q12'><span lang=EN style='mso-ansi-language:EN'>What virtual memory related states do you need to keep in a PCB?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l8 level1 lfo11;tab-stops:list .5in'><span style='mso-bookmark:q12'><span lang=EN style='mso-ansi-language:EN'>What virtual memory related <span class=GramE>tasks does</span> an OS kernel need to do during a context switch? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q12'></span> <div> <h2><a name=q13><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 3.4 </span></a><span style='mso-bookmark:q13'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 4.4)</span></i></span><span style='mso-bookmark:q13'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q13'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q13'><span lang=EN style='mso-ansi-language:EN'>: Understand the properties of various page replacement algorithms. <o:p></o:p></span></span></p> <p><span style='mso-bookmark:q13'><span lang=EN style='mso-ansi-language:EN'>The textbook describes 10 page replacement algorithms in Section 4.4. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l13 level1 lfo12;tab-stops:list .5in'><span style='mso-bookmark:q13'><span lang=EN style='mso-ansi-language:EN'>Which two algorithms do you like the best? Explain why.<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l13 level1 lfo12;tab-stops:list .5in'><span style='mso-bookmark:q13'><span lang=EN style='mso-ansi-language:EN'>What minimal hardware mechanisms do your favorite algorithms need?<o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q13'></span> <div> <h2><a name=q14><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 3.5-3.6 </span></a><span style='mso-bookmark:q14'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 4.6-4.7)</span></i></span><span style='mso-bookmark:q14'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q14'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q14'><span lang=EN style='mso-ansi-language:EN'>: Understand implementation issues. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l9 level1 lfo13;tab-stops:list .5in'><span style='mso-bookmark:q14'><span lang=EN style='mso-ansi-language:EN'>How do you avoid virtual memory thrashing?<o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l9 level1 lfo13;tab-stops:list .5in'><span style='mso-bookmark:q14'><span lang=EN style='mso-ansi-language:EN'>When a process forks off a child process, it needs to replicate its address space. This operation may take a while to complete. One technique to speed this up is to create an address space mapping to the same set of pages without copying data and mark all pages read-only. On a write, the kernel will catch the access fault, allocates a page frame, copy the page from its parent process, mark the page to be read-write, and then return to the faulting instruction. This technique is called &quot;copy-on-write.&quot; How would you implement copy-on-write? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q14'></span> <div> <h2><a name=q15></a><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'><a href="p106-clark.pdf">DARPA Internet Protocols</a><o:p></o:p></span></h2> <div style='margin-left:28.35pt;margin-right:28.35pt'> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'>David Clark, </span><span class=title2>The design philosophy of the DARPA internet protocols,</span><span lang=EN style='mso-ansi-language:EN'> In Proceedings of SIGCOMM Conference. 1988. <o:p></o:p></span></p> </div> <p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i><span lang=EN style='mso-ansi-language: EN'>: Understand the design principles of the Internet. <o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l20 level1 lfo14;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>What are the main differences between datagram protocol and TCP? <o:p></o:p></span></li> <li class=MsoNormal style='mso-list:l20 level1 lfo14;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>List two main technological successes in the development of DARPA internet protocols? Briefly state why you think they are so. <o:p></o:p></span></li> </ul> </div> <div> <h2><a name=q16><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 5.4<o:p></o:p></span></a></h2> <p class=MsoNormal><span style='mso-bookmark:q16'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q16'><span lang=EN style='mso-ansi-language:EN'>: Understand how disks work and learn about various disk scheduling algorithms. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l5 level1 lfo15;tab-stops:list .5in'><span style='mso-bookmark:q16'><span lang=EN style='mso-ansi-language:EN'>The textbook describes two disk arm scheduling algorithms (SSF and Elevator). Discuss which you prefer and why? <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l5 level1 lfo15;tab-stops:list .5in'><span style='mso-bookmark:q16'><span lang=EN style='mso-ansi-language:EN'>The textbook mentions RAID. What are the advantages and disadvantages of level 4 and level 5? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q16'></span> <div> <h2><a name=q17><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 4.1, 9.3.1-9.3.3 </span></a><span style='mso-bookmark: q17'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 6.1, 9.6)</span></i></span><span style='mso-bookmark:q17'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q17'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q17'><span lang=EN style='mso-ansi-language:EN'>: Understand file system interfaces and protection. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l6 level1 lfo16;tab-stops:list .5in'><span style='mso-bookmark:q17'><span lang=EN style='mso-ansi-language:EN'>If you are in charge of designing a file system API, what issues must you consider? List a number of issues and explain, using a sentence for each, why it must be considered. <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l6 level1 lfo16;tab-stops:list .5in'><span style='mso-bookmark:q17'><span lang=EN style='mso-ansi-language:EN'>The textbook mentioned three protection mechanisms in Section 9.6. Could you apply them to file systems? Please state your opinion and briefly provide your supporting arguments. <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q17'></span> <div> <h2><a name=q18><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 4.2-4.3.3, 4.5.2-4.5.3 </span></a><span style='mso-bookmark:q18'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN; font-weight:normal'>(2e: 6.2-6.3.3, 6.4.3, 6.4.5)</span></i></span><span style='mso-bookmark:q18'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q18'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q18'><span lang=EN style='mso-ansi-language:EN'>: Understand file directories and file layout alternatives. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l17 level1 lfo17;tab-stops:list .5in'><span style='mso-bookmark:q18'><span lang=EN style='mso-ansi-language:EN'>The textbook lists three ways to implement files: linked list allocation scheme, linked list allocation with an index, and <span class=SpellE>i</span>-node. What is your favorite scheme and why. <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l17 level1 lfo17;tab-stops:list .5in'><span style='mso-bookmark:q18'><span lang=EN style='mso-ansi-language:EN'>What is your favorite method to implement file directories? Discuss why you like your choice. <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q18'></span> <div> <h2><a name=q19><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 4.4.2-4.4.4, 4.3.5 </span></a><span style='mso-bookmark: q19'><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal'>(2e: 6.3.6-6.3.8)</span></i></span><span style='mso-bookmark:q19'><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'> <o:p></o:p></span></span></h2> <p class=MsoNormal><span style='mso-bookmark:q19'><i style='mso-bidi-font-style: normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i></span><span style='mso-bookmark:q19'><span lang=EN style='mso-ansi-language:EN'>: Understand the issues and some solutions for file system reliability. <o:p></o:p></span></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l15 level1 lfo18;tab-stops:list .5in'><span style='mso-bookmark:q19'><span lang=EN style='mso-ansi-language:EN'>State very briefly what to do in order to make a log-structured file system be consistent after a crash. <o:p></o:p></span></span></li> <li class=MsoNormal style='mso-list:l15 level1 lfo18;tab-stops:list .5in'><span style='mso-bookmark:q19'><span lang=EN style='mso-ansi-language:EN'>What is the difference between a file buffer cache and virtual memory? <o:p></o:p></span></span></li> </ul> </div> <span style='mso-bookmark:q19'></span> <div> <h2><a name=q20><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>MOS 10.6.3-10.6.4, </span></a><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN'><a href="netapp.pdf"><span class=SpellE>NetApp</span></a> <o:p></o:p></span></h2> <div style='margin-left:28.35pt;margin-right:28.35pt'> <p class=MsoNormal><span class=GramE><span lang=EN style='mso-ansi-language: EN'>David <span class=SpellE>Hitz</span>, James Lau, and Michael Malcolm.</span></span><span lang=EN style='mso-ansi-language:EN'> </span><span class=title2>File system design for an NFS file server appliance.</span><span lang=EN style='mso-ansi-language: EN'> Winter USENIX Technical Conference (San Francisco, CA, 17-21 January 1994), pages 235-246. <span class=GramE>USENIX Association, 1994.</span> <o:p></o:p></span></p> </div> <p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN style='mso-ansi-language:EN'>Goal</span></i><span lang=EN style='mso-ansi-language: EN'>: Understand the design and issue of the original <span class=SpellE>NetApp</span> file server. <o:p></o:p></span></p> <p><span lang=EN style='mso-ansi-language:EN'>This paper describes the internals of WAFL, the <span class=SpellE>NetApp's</span> file system which has a built-in mechanism to take snapshots. <o:p></o:p></span></p> <ul style='margin-top:0in' type=disc> <li class=MsoNormal style='mso-list:l19 level1 lfo19;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>Is possible to implement snapshots as an &quot;add-on&quot; to an ordinary file system that has no built-in snapshot mechanisms? <o:p></o:p></span></li> <li class=MsoNormal style='mso-list:l19 level1 lfo19;tab-stops:list .5in'><span lang=EN style='mso-ansi-language:EN'>If you think the answer is yes, outline how you would build the add-on snapshots. If you think the answer is no, briefly explain why not. <o:p></o:p></span></li> </ul> <h2><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language: EN'>Virtual Machine Monitor<o:p></o:p></span></h2> <h2><span lang=EN style='font-size:10.0pt;mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN;font-weight:normal;mso-bidi-font-weight:bold'>Mendel <span class=SpellE>Rosenblum</span> and Tal <span class=SpellE>Garfinkel</span>, Virtual Machine Monitors: Technology and Future Trends. <span class=GramE><i style='mso-bidi-font-style:normal'>Computer</i>.</span><span style='mso-spacerun:yes'>  </span>38(5) 39-<span class=GramE>47,</span> May 2005.<o:p></o:p></span></h2> <h2><span lang=EN style='font-size:10.0pt;mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN;font-weight:normal;mso-bidi-font-weight:bold'>Goal: Understand the benefits and challenges of virtual machine monitors.<o:p></o:p></span></h2> <h2 style='margin-left:.5in;text-indent:-.25in;mso-list:l12 level1 lfo20'><![if !supportLists]><span lang=EN style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family: Symbol;mso-bidi-font-family:Symbol;mso-ansi-language:EN;font-weight:normal; mso-bidi-font-weight:bold'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span lang=EN style='font-size:10.0pt; mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN;font-weight: normal;mso-bidi-font-weight:bold'>What is the main benefit of using a virtual machine monitor?<o:p></o:p></span></h2> <h2 style='margin-left:.5in;text-indent:-.25in;mso-list:l12 level1 lfo20'><![if !supportLists]><span lang=EN style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family: Symbol;mso-bidi-font-family:Symbol;mso-ansi-language:EN;font-weight:normal; mso-bidi-font-weight:bold'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span lang=EN style='font-size:10.0pt; mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN;font-weight: normal;mso-bidi-font-weight:bold'>What is the main challenge of implementing virtual machine monitors and briefly explain why.<o:p></o:p></span></h2> <h2><span class=SpellE><span lang=EN style='mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN'>Deduplication</span></span><span lang=EN style='mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN'> <o:p></o:p></span></h2> <h2><span class=GramE><span lang=EN style='font-size:10.0pt;mso-fareast-font-family: "Times New Roman";mso-ansi-language:EN;font-weight:normal;mso-bidi-font-weight: bold'>Benjamin Zhu, Kai Li, and Hugo Patterson.</span></span><span lang=EN style='font-size:10.0pt;mso-fareast-font-family:"Times New Roman";mso-ansi-language: EN;font-weight:normal;mso-bidi-font-weight:bold'><span style='mso-spacerun:yes'>  </span><span class=GramE>Avoiding the Disk Bottleneck in Data Domain <span class=SpellE>Deduplication</span> File System.</span><span style='mso-spacerun:yes'>  </span><span class=GramE>Proceedings of the 6th USENIX Conference on File and Storage Technologies.</span><span style='mso-spacerun:yes'>  </span>San Jose, California.<span style='mso-spacerun:yes'>  </span>February 2008.<o:p></o:p></span></h2> <h2><span lang=EN style='font-size:10.0pt;mso-fareast-font-family:"Times New Roman"; mso-ansi-language:EN;font-weight:normal;mso-bidi-font-weight:bold'>Goal: Understand the benefits and challenges of <span class=SpellE>deduplication</span> storage systems.<o:p></o:p></span></h2> <h2 style='margin-left:.5in;text-indent:-.25in;mso-list:l16 level1 lfo21'><![if !supportLists]><span lang=EN style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family: Symbol;mso-bidi-font-family:Symbol;mso-ansi-language:EN;font-weight:normal; mso-bidi-font-weight:bold'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span lang=EN style='font-size:10.0pt; mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN;font-weight: normal;mso-bidi-font-weight:bold'>What is the main idea of <span class=SpellE>deduplication</span> storage system?<o:p></o:p></span></h2> <h2 style='margin-left:.5in;text-indent:-.25in;mso-list:l16 level1 lfo21'><![if !supportLists]><span lang=EN style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family: Symbol;mso-bidi-font-family:Symbol;mso-ansi-language:EN;font-weight:normal; mso-bidi-font-weight:bold'><span style='mso-list:Ignore'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span lang=EN style='font-size:10.0pt; mso-fareast-font-family:"Times New Roman";mso-ansi-language:EN;font-weight: normal;mso-bidi-font-weight:bold'>What is the main idea to achieve high-throughput deduplication?<o:p></o:p></span></h2> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'><o:p>&nbsp;</o:p></span></p> </div> <div> <div class=MsoNormal align=center style='text-align:center'><span lang=EN style='mso-ansi-language:EN'> <hr size=2 width="100%" align=center> </span></div> </div> <div id=Footer> <p class=MsoNormal><span lang=EN style='mso-ansi-language:EN'>COS 318: Operating Systems <br> <a href="http://www.princeton.edu">Princeton University</a><br> <a href="http://www.cs.princeton.edu">Department of Computer Science</a> <o:p></o:p></span></p> </div> </div> </body> </html>