This weekend, I have two learning tasks for you:
Systems design. First, you'll do some reading about the design of systems. You'll want to keep these principles in mind as you go about your work in PintOS.
Overview and Threads. You'll also do some overview reading on the subject of Operating Systems. This reading will complement our more in-depth reading of papers throughout the term, as well as lay foundations for our PintOS projects. This reading also focuses on threads, which are a common way for languages and systems to express ideas regarding concurrency and parallelism.
It will be a busy weekend. Expect many more to come.
Read Hints for Computer System Design PDF by Lampson.
You should read this lightly; it serves as a general background to the course and our work, and is not something you need to absorb deeply for assessment. It is full of excellent advice in terms of systems design and development, however, and I believe it is worth reading.
Read from Hailperin's Operating System and Middleware, chapters 1 and 2. (The book is linked from the Resources section of the course website.)
Answer questions 2.2, 2.3, and 2.4 in a Markdown file that you submit to Moodle. If you end up creating diagrams for your work, include and/or scan them (as appropriate) and submit your work as a zip file (Markdown and images together).
First, some resources.
You'll want to do this reading as part of the work for Thursday. I also recommend looking for a copy of The C Programming Language by Brian W. Kernighan, Dennis M. Ritchie. It is an invaluable resource for the C language; there is a copy in the lab (mine) that you may use in the lab; removing it will be considered an evil, awful, horrible thing, and punishments for removing the book from the lab will likewise be evil, awful, and horrible.
As always, written work should be submitted as a Markdown document (.md) or a compressed file containing the LaTeX source of your report (.tar.gz) and a compiled PDF of the output. LaTeX submissions should be sources only, without temporary files (.aux, .log, etc.).
On Linux, you might use UberWriter or ReText for Markdown, and on Windows, MarkdownPad. Any editor works for LaTeX, although some prefer tools that are designed for the purpose.
Assignment: OS Reading Questions 1
Naming Convention: username-os-reading-questions-1
Moodle Link: http://moodle2.berea.edu/course/view.php?id=2243
This website is provided under a CC BY-SA license by the
The Berea CS Department.
Fall 2013 offering of taught by Matt Jadud