CSE 451: Introduction to
Operating Systems
sections: Jochen
Jäger
Lectures: MWF 11:30-12:20
GWN 201
Section AA: Thurs
12:30-01:20 EE1 042
Section AB: Thurs
01:30-02:20 EE1 026
Office
hours:
Jochen Jaeger,
jj@cs.washington.edu Tue 1:00-2:00 Sieg 226b
Adam Prewett,
prewett@cs.washington.edu Wed 3:00-4:00 TBA
Grading:
projects (40%), 2 midterms
(20%), final (20%), homeworks (20%)
Homework: Reading and textbook-style
questions
Projects: due two weeks after, before
sections
Mailing list:
mail to:
majordomo@cs.washington.edu
Lab
Infrastructure: SIEG 329, 232, access via
Husky card
Main
computers:
coredump (section AB), spinlock (section AA)
Each project will involve
the following phases:
1.Read through the Linux source code
2.Edit the Linux source code, and compile a new
kernel
3.Test/benchmark your new kernel:
read
5-30min
Understood?
No
à read again
10-30min
Understood?
No
à try sth at a compi
5-30min
Understood?
No
à ask a fellow
5-30min
Understood?
No
à write mail to cse451
5min
Yes
Try
a solution in theory
10min – 15h
Try
to implement
30min – 2h
Did
it work?
No
à search for help online,
fellows, mailing list 5m –
2h
Yes
Test it
10min – 2h
Did
it work?
No
à start at
top
Yes
Write it up and you are done
J
10 min – 2h
Basic Unix commands:
pwd, cd, ls, find, grep,
more, cat, cp, man, vi, emacs
Tasks:
-
find a file called sched.h
-
find a textstring in
sched.h
-
find a textstring in all .h
and .c files in the current directory
-
find a textstring in all .h
and .c files in all subsequent dirs
-
find all files recently
modified
-
find last 5 most recently
files
-
find all files modified
within the last 24 hours
Source in:
/cse451kernels/linux-2.4.2.tgz
Unpack to:
/cse451kernels/username (Unpacktools: tar, gzip)
Compiling: gcc, make, make
dep, make clean, make bzImage