- added thread_foreach
[pintos-anon] / doc / localsettings.texi
1 @c Local settings
2
3 @set coursenumber CS 140
4 @set localpintostarpath /usr/class/cs140/pintos/pintos.tar.gz
5 @set localpintoshttppath http://@/www.stanford.edu/@/class/@/cs140/@/pintos/@/pintos.@/tar.gz
6 @set localpintosbindir /usr/class/cs140/`uname -m`/bin
7
8 @set recommendvnc
9 @clear recommendcygwin
10
11 @macro localmachines{}
12 The CS 140 ``officially supported'' Pintos development machines are
13 the machines in Sweet Hall managed by Stanford ITSS, as described on
14 the @uref{http://www.stanford.edu/services/cluster/environs/sweet/, ,
15 ITSS webpage}.  You may use the Solaris or Linux machines.
16 @end macro
17
18 @macro localpathsetup{}
19 Under @command{csh}, Stanford's login shell, you can do so
20 with this command:@footnote{The term @samp{`uname -m`} expands to either
21 @file{sun4u} or @file{i686} according to the type of computer you're
22 logged into.}
23 @example
24 set path = ( @value{localpintosbindir} $path )
25 @end example
26 @noindent
27 @strong{Notice that both @samp{`} are left single quotes or
28 ``backticks,'' not apostrophes (@samp{'}).}
29 It is a good idea to add this line to the @file{.cshrc} file
30 in your home directory.  Otherwise, you'll have to type it every time
31 you log in.
32 @end macro
33
34 @macro localcrossbuild{}
35 Watch the commands executed during the build.  On the Linux machines,
36 the ordinary system tools are used.  On a SPARC machine, special build
37 tools are used, whose names begin with @samp{i386-elf-}, e.g.@:
38 @code{i386-elf-gcc}, @code{i386-elf-ld}.  These are ``cross-compiler''
39 tools.  That is, the build is running on a SPARC machine (called the
40 @dfn{host}), but the result will run on a simulated 80@var{x}86 machine
41 (called the @dfn{target}).  The @samp{i386-elf-@var{program}} tools are
42 specially built for this configuration.
43 @end macro
44
45 @macro localhonorcodepolicy{}
46 In the context of Stanford's CS 140 course, please respect the spirit
47 and the letter of the honor code by refraining from reading any homework
48 solutions available online or elsewhere.  Reading the source code for
49 other operating system kernels, such as Linux or FreeBSD, is allowed,
50 but do not copy code from them literally.  Please cite the code that
51 inspired your own in your design documentation.
52 @end macro
53
54 @macro localcredits{}
55 @c none needed
56 @end macro
57
58 @macro localcvspolicy{}
59 Instead, we recommend integrating your team's changes early and often,
60 using a source code control system such as CVS (@pxref{CVS}).
61 This is less likely to produce surprises, because everyone can see
62 everyone else's code as it is written, instead of just when it is
63 finished.  These systems also make it possible to review changes and,
64 when a change introduces a bug, drop back to working versions of code.
65 @end macro
66
67 @macro localcodingstandards{}
68 All of you should have taken a class like CS 107, so we expect you to be
69 familiar with some set of coding standards such as
70 @uref{http://www.stanford.edu/class/cs140/projects/misc/CodingStandards.pdf,
71 , CS 107 Coding Standards}. Even if you've taken 107, we recommend
72 reviewing that document.  We expect code at the ``Peer-Review Quality''
73 level described there.
74 @end macro
75
76 @macro localdevelopmenttools{}
77 @c Descriptions of additional, local development tools can be inserted here
78 @end macro