xref: /xv6-public/runoff.spec (revision d8828817)
1sheet1: left
2
3# "left" and "right" specify which page of a two-page spread a file
4# must start on.  "left" means that a file must start on the first of
5# the two page.  "right" means it must start on the second of the two
6# pages.  The file may start in either column.
7#
8# "even" and "odd" specify which column a file must start on.  "even"
9# means it must start in the left of the two columns.  "odd" means it
10# must start in the right of the two columns.
11
12# types.h either
13# param.h either
14# defs.h either
15# x86.h either
16# asm.h either
17# mmu.h either
18# elf.h either
19# mp.h either
20
21even: bootasm.S  # mild preference
22even: bootother.S  # mild preference
23even: bootmain.c  # mild preference
24even: main.c
25# mp.c don't care at all
26# even: initcode.S
27# odd: init.c
28
29# spinlock.h either
30left: spinlock.h  # mild preference
31even: spinlock.h  # mild preference
32
33# This gets struct proc and allocproc on the same spread
34right: proc.h
35odd: proc.h
36
37# goal is to have two action-packed 2-page spreads,
38# one with
39#     userinit growproc fork exit wait
40# and another with
41#     scheduler sched yield forkret sleep wakeup1 wakeup
42left: proc.c   # VERY important
43odd: proc.c   # VERY important
44
45# setjmp.S either
46# vm.c either
47# kalloc.c either
48
49# syscall.h either
50# trapasm.S either
51# traps.h either
52# even: trap.c
53# vectors.pl either
54# syscall.c either
55# sysproc.c either
56
57# buf.h either
58# dev.h either
59# fcntl.h either
60# stat.h either
61# file.h either
62# fs.h either
63# fsvar.h either
64left: ide.c
65# odd: bio.c
66odd: fs.c   # VERY important
67# file.c either
68# exec.c either
69# sysfile.c either
70
71# even: pipe.c  # mild preference
72# string.c either
73left: kbd.h
74even: console.c
75odd: sh.c
76