91.308 home
FINAL STUDY GUIDE txt
MON MAY 9
• lecture 38: course review
whiteboard pic 1 jpg
whiteboard pic 2 jpg
whiteboard pic 3 jpg
whiteboard pic 4 jpg
WED MAY 4
• lecture 36: librarian app
txt
• assignment 10 palm os
database programming html
MON MAY 2
• lecture 35: palm mem mgr & DBMS
txt
WED APR 27
• lecture 34: palm dev intro
txt
• assignment 9 intro to palm
programming html
MON APR 25
• lecture 33: palm programming intro
txt
FRI APR 22
• lecture 32: tablet computing intro
txt
WED APR 20
• lecture 31: how to locate an i-node
FRI APR 15
• lecture 30: directories & i-nodes
WED APR 13
• lecture 29: file systems
MON APR 11
• lecture 28:
ASN 8 DUE WED APR 20 pdf
FRI APR 8
• lecture 27: working set, belady's anomoly, and stack algs
WED APR 6
• lecture 26: simulating buddy sys and VM paging; LRU page
replacement
ASN 7 DUE FRI APR 15 pdf
MON APR 4
• lecture 25: page tables & page replacement
txt
MEM-MGR ASN CUTOFF IS FRI APR 8
FRI APR 1
• lecture 24: buddy memory allocation pt 2
txt
WED MAR 30
• lecture 23: buddy memory allocation
txt
SQUEAK ASN CUTOFF IS MON APR 4
MON MAR 28
• lecture 22: VM and page tables
txt
FRI MAR 25
• lecture 21: memory manager starter code
txt
WED MAR 23
• lecture 20: memory manager data structs
txt
MON MAR 21
• lecture 19: intro to memory management
txt
• read pages 189202 of Tanenbaun
• assignment 6: memory allocation pdf
proj6_data txt
memmgr.c c
• buddy system html
due Fri Apr 1
• assignment 4 cutoff is Fri Mar 25.
FRI MAR 11
• lecture 18: squeak's etoys
txt
• assignment 5: squeak html
due Fri Mar 25
• missing pages 164165 from handout
pdf
WED MAR 9
MIDTERM
MON MAR 7
• lecture 16: exam review
txt
FRI MAR 4
• lecture 15: squeak
txt
WED MAR 2
• lecture 14: revised grade policy, semaphores in assn 4
sample code, future projects
txt
MON FEB 28
• lecture 13: deadlock
txt
FRI FEB 25
• lecture 12: more semaphores, producer-consumer w/3
semaphores
txt
WED FEB 23
• lecture 11: unix semaphores
txt
TUE FEB 22
• lecture 10: unix shared memory
txt
FRI FEB 18
• assignment 4: producer-consumer problem pdf
• sys calls help txt
pdf
• lecture 9: on asn4
txt
due Fri Mar 4
WED FEB 16
• lecture 8: interprocess comms ii
txt
MON FEB 14
• lecture 7: interprocess comms i
txt
FRI FEB 11
• lecture 6: more osp scheduling, threads
txt
WED FEB 9
• lecture 5: osp's PCB, cpu.c, queues, scheduling
txt
MON FEB 7
• assignment 3: implementing a cpu scheduler pdf
due Wed Feb 16
WED FEB 2
• lecture 3: pipes, signals txt
MON JAN 31
• lecture 2 notes txt
• assignment 2: processes, pipes, signal handers pdf
due Wed Feb 9
FRI JAN 28
• assignment 1: OS mini-research project html
due Wed Feb 9
|
91.308 Introduction to Operating Systems
Spring 2005
Contact
Prof. Fred G. Martin
http://www.cs.uml.edu/~fredm/
fred_martin@uml.edu
Olsen 208 (office) x1964
Olsen 306 (lab) x2705
TA
T.B.D.
Schedule
MWF, 10:30 11:20 am, OS 412
Office Hours
Monday 3 4 pm, OS 306 (Martin)
Wednesday 11:30 12:30 pm, OS 208 (Martin)
Thursday 3 4 pm, OS 208 (Martin)
Web Site
http://www.cs.uml.edu/~fredm/courses/91.308/
Discussion Board
The class will use the ikonboard system for web-based
threaded discussions of lectures, assignments, and other
course-related material. All students are expected to create an
account for themselves on the discussion board, and use it when
appropriate. Before sending me an email, please consider
posting your question to the discussion board. Private/personal
matters (e.g., academic standing in the class) should be addressed to me.
Look for the link to the course board at the top of any course web
page, in the pink resources menu.
Text
Course Description
From the UML CS brochure:
An introduction to major operating systems and their
components. Topics include processes, concurrency and synchronization,
deadlock, processor allocation, memory management, I/O devices and
file management, and distributed processing. Techniques in operating
system design, implementation, and evaluation.
Course Approach
There are a number of different ways an O.S. course can be organized.
Students can:
- Study topics in OS design in a theoretical way.
- Write code to illustrate/demonstrate these topics.
- Implement an operating system.
- Write code that exercises the OS of a known/working operating
system (in other words, learn standard OS APIs)
We will do all of the above. Ideally, I would like for to write
code and build a real operating system, but this is a lot of work and
it's hard to debug an OS while you're building it.
So instead, we will work with an OS simulator called OSP
An Environment for Operating System Projects. This is a
body of code written in ANSI-C that simulates an operating system,
with modules for tasks like CPU scheduling, memory allocation, file
management, stream and socket communication, and device I/O. In a
typical OSP project, you get the job of implementing one of these
modules, given a specified external API for the module.
The OSP system is inspired by the Unix OS design, but is a
simplified version of it. It's also valuable to learn some practical
system programming, so we will have assignments that involve writing
code using Unix system APIs.
Finally, while Unix (and Windows NT/XP, which isn't all that
different) is an industry-standard OS, it's not the only way one can
imagine building an operating system. So we'll explore some alternate
operating systems, which while having limited commercial success, are
still quite interesting.
Grading
Grades will be assigned based on the following proportions:
programming assignments, 30%
homework can only help you. you still have to do the homeworks (2
may be forgiven, after that, each one drops you a half-letter grade.)
basically, homeworks can be worth a whole letter grade increase in
your grade.
* so if you have a "B" avg on the exams, but high quality (A level)
homework, then you would receive an A as your final grade.
* example: "B" on HW plus "C" on exams --> BC grade.
* example "A" on HW plus "C" on exams --> B.
* example "C" on HW (but you did them) plus "B" on exams --> B.
will apply the percentage system if it will help you.
you can't bring your grade down (except if you miss 3 or more
homeworks).
mid-term exam, 30%
final exam, 30%
in-class participation, 10%
Late Policy
For each class day an assignment or project is late, 10% of
the total points will be deducted from the points received. This will
continue for five class days, after which the assignment or project
may be submitted at any time up to and including the last day of
scheduled class and will receive a maximum of half the total credit.
Homework will be accepted late up until the last day scheduled class
meeting day.
Copying
Short form: I encourage you to study groups and work with each other,
but all prepared work you turn in must be your own. Do NOT copy
code, solutions, or other text from your study partners or anyone
else.
Long form: In professional as well as academic life outside the
classroom, people seldom work completely on their own. They typically
work in teams and help each other extensively. I have no objection to
you getting help from me or your fellow students. I encourage you to
do so. However,
prepared work in this course is to be each students own.
Students should therefore be familiar with the Universitys
definitions and policies on academic dishonesty, found in the
University course catalog. [above adapted from Prof. Jesse
Heines copying policy]
The contributions of others to your thinking must be acknowledged
in all work you turn in. As UML Prof. Sarah Kuhn says, Using
works of others, or drawing extensively on their ideas, without
clearly stating that they are not your work (by using quotation marks,
and references to the cited work) is plagiarism, a very serious
academic offense. [Prof. Sarah Kuhn, syllabus for 65.790,
from Prof. Marian Williams 91.531 course syllabus.]
Also: With each
assignment, you must mention people whom you worked with, who you have
helped, or who have helped you.
Honors Program
Students enrolled in the honors program will be expected to do an
exemplary job with all coursework. Additionally, a term paper or term
project will be required. Please schedule a meeting with Prof. Martin
to plan the project by March 15.
Credit for this Course
Most of this course was developed by UMass Lowell professor William
Moloney, including the programming assignments. I added the units on
the OSP scheduler, Squeak OS, and Palm programming.
Last modified:
Tuesday, 12-Mar-2013 21:53:16 EDT
by
fred_martin@uml.edu
|