|
24308 CSC 080A - 0 - Operating Systems
Spring 2003
Monday, 5:30 pm - 8:10 pm , Kramer Science Center 102A
Herbert J. Bernstein (yaya@dowling.edu)
Assignments
|
|
This web page is http://www.bernstein-plus-sons.com/.dowling/CSC080/CSC080_Assignments.html
Copyright © 2002, 2003 Herbert J. Bernstein and other parties. All rights reserved.
For all assignments, please print your name and email clearly on
each page you submit. No assignment will be accepted late. No makeups will be
provided for missed assignments. In general assignments are due
at the beginning of the class one week after they are assigned,
and, in most cases, grades will be provided one week after the
assigment is turned in.
- Assignment #1, due 10 February 2003. Read Tanenbaum Chapter
1. Do all exercises on pages 67-70, except for problem
28. Do not do problem 28. Some of these problems
require research to find terms and resources not in the book.
Problem 27 requires writing code. Do the best you
can on all of these problems. Organize the 28 problems into
the following sets (note that problem 27 is part of each set):
- Set A: 27, 1, 4, 7, 10, 13, 16, 19, 22, 25.
- Set B: 27, 2, 5, 8, 11, 14, 17, 20, 23, 26.
- Set C: 27, 3, 6, 9, 12, 15, 18, 21, 24, 29.
Organize your homework so that you can turn in any or all of the lettered groups
of problems separately.
- Assignment #2, due 19 February 2003. (Note the change from
a Monday to a Wednesday for this week). Read Tanenbaum Chapter
2. Do all exercises on pages 153-158. Some of these problems
require research to find terms and resources not in the book.
Do the best you
can on all of these problems. Organize the 53 problems into
the following sets:
- Set A: 1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53.
- Set B: 2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50.
- Set C: 3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47, 51.
- Set D: 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52.
Organize your homework so that you can turn in any or all of the lettered
groups
of problems separately. Some of you will not be able to finish all these
problems in the time available. Be certain to do at least some of the
problems in each set, so that you will have something to turn in.
- Asignment #3, due 24 February 2003. Turn in your best course
project proposal.
- IMPORTANT NOTE. Effective 24 February 2003, you may turn in the
programming portions of assignments up to 2 days late (but no later),
and all students are encouraged to work in groups on the programming
portions of the asignments. All persons who contributed to any assignment
must be identified. A group may turn in a single copy with all names.
No programming assignments should be submitted on disk or as email.
Anything that might otherwise be submitted on a disk or by email
should be posted as a web page instead.
No extensions will be granted past the last day of classes.
Clarification: On the day that an
assigment is due, you must be prepared to turn in either a piece
of paper with the requested problem set, or to turn in a piece of paper
giving the URL of the requested problem set. It is not acceptable to
send the problem set on paper or as a URL the next day. It is
acceptable to fill in some of the programming parts of the assignment up
to 2 days later, but making a routine practice of this is not
recommended, since it will tend to leave you behind in understanding the
material.
- Assignment #4, due 3 March 2003. Read Tanenbaum Chapter
3. Do all exercises on pages 186-188. Some of these problems
require research to find terms and resources not in the book.
Do the best you
can on all of these problems. Organize the 30 problems into
the following sets (note that problem 30 is part of each set):
- Set A: 1, 4, 7, 10, 13, 16, 19, 22, 25, 28, 30.
- Set B: 2, 5, 8, 11, 14, 17, 20, 23, 26, 29, 30.
- Set C: 3, 6, 9, 12, 15, 18, 21, 24, 27, 30.
Organize your homework so that you can turn in any or all of the lettered
groups
of problems separately. Some of you will not be able to finish all these
problems in the time available. Be certain to do at least some of the
problems in each set, so that you will have something to turn in.
- Assignment #5, due 10 March 2003. Read Tanenbaum Chapter
4. Do all non-programming exercises on pages 263-268.
Do the programming problem in exercise 41. Some
of these problems
require research to find terms and resources not in the book.
Do the best you
can on all of these problems. Organize the 40 problems into
the following sets (note that problem 41 is part of each set):
- Set A: 1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41.
- Set B: 2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 41.
- Set C: 3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 41.
- Set D: 4, 8, 12, 16, 20, 24, 28, 32, 36, 41.
Organize your homework so that you can turn in any or all of the lettered
groups
of problems separately. Some of you will not be able to finish all these
problems in the time available. Be certain to do at least some of the
problems in each set, so that you will have something to turn in.
- Midterm. There will be an in-class, open book, open-notes
midterm on Monday, 24 March 2003. This will take half the class period.
The other half will be lecture and discussion
- Assignment #6, due 31 March 2003. Read Anderson, Chapters 1-5. Read
Tanenbaum Chapters
5 and 6. Do all non-programming exercises on pages 373-378
and 449-452 of Tanenbaum.
Do the programming problem in exercise 6-39, page 452. Some
of these problems
require research to find terms and resources not in the book.
Do the best you
can on all of these problems. Organize the problems into
the following sets (note that problem 6-39 is part of each set):
- Set A: 5-1, 5-7, 5-13, 5-19, 5-25, 5-31, 5-37, 5-43, 6-3, 6-9, 6-15,
6-21, 6-27, 6-33, 6-39
- Set B: 5-2, 5-8, 5-14, 5-20, 5-26, 5-32, 5-38, 5-44, 6-4, 6-10, 6-16,
6-22, 6-28, 6-34, 6-39
- Set C: 5-3, 5-9, 5-15, 5-21, 5-27, 5-33, 5-39, 5-45, 6-5, 6-11, 6-17,
6-23, 6-29, 6-35, 6-39
- Set D: 5-4, 5-10, 5-16, 5-22, 5-28, 5-34, 5-40, 5-46, 6-6, 6-12,
6-18, 6-24, 6-30, 6-36, 6-39
- Set E: 5-5, 5-11, 5-17, 5-23, 5-29, 5-35, 5-41, 6-1, 6-7, 6-13, 6-19,
6-25, 6-31, 6-37, 6-39
- Set F: 5-6, 5-12, 5-18, 5-24, 5-30, 5-36, 5-42, 6-2, 6-8, 6-14, 6-20,
6-26, 6-32, 6-38, 6-39
Organize your homework so that you can turn in any or all of the lettered
groups
of problems separately. Some of you will not be able to finish all these
problems in the time available. Be certain to do at least some of the
problems in each set, so that you will have something to turn in.
- Note: The previous exercise was
the last of the "killer" problem sets for this semester.
The assignments will now focus on reading, related essays and programming
issues. For some of you this will make it more difficult for you to stay
current on the assigned readings. Please do not slack off. For the
final you are
responsible for all the material in both text books whether or not
discussed in class as well for all the subjects that are discussed in
class.
IMPORTANT NOTE: Because the programming component will be the
major
aspect of the remaining exercises, no part of the remaining exercises
will be accepted late.
- Assignment #7, due 7 April 2003.
Read Anderson, Chapters 6-10. Consider a shell that is going to be used
to gain access to the resources of an operating system. Write an essay
outlining the major security considerations in the design of such a shell.
List at least three major areas of vulnerability which should be
considered and the approaches that could be used to deal with those
volnerabilities. As an attachment to this essay write a preliminary
design document for password control of access to this shell and to
various ressources. Give some thought to the design. In the next
exercise, you will be required to implement a small password control
system. You are encouraged to work in groups on the essay and on
the design, but each of you must be prepared to discuss the issues
involved in class.
- Assignment #8, due 14 April 2003.
Read Anderson, Chapters 13-19. Now implement a program with
password-controlled access. You may use any language with which you are
confortable, but you must do the work under Linux (you will be
required to redo the same effort under Windows in a later exercise). Give
careful consideration to how you will make the password protection meaningful,
first in terms of protection from ordinary users running on the same
computer, second in terms of protection from users on the same network,
and then in terms of protection from a rogue system manager. You are
to make documentation, source code, data files, test suite and executable
available for evaluation on arcib.dowling.edu, submitting a paper copy
listing the location of these materials, and giving "bootstrap"
instructions for the instructor to try your work. You are encouraged
to work in groups, but each group will be required to present an
explanation of the work as a group to the entire class.
- Assignment #9, due 28 April 2003.
- Read Anderson, Chapters 20-21.
- Work in groups on the remaining portions of this homework. Submit
all
the work in this assignment on paper. No portions of this assignment will
be accepted after the start of class on 28 April 2003.
- Do some serious research about Napster on the internet.
- Write an essay from the point of view of a consumer of MP3-based
music on the internet, explaining what protections and security mechanisms
you would think appropriate for MP3-based music on the internet. Justify
your comments.
- Write an essay from the point of view of an artist who creates
MP3-based music and places it on the internet, explaining what protections
and security mechanisms you would think appropriate for MP3-based music on
the internet. Justify your comments.
- Write an essay from the point of view of a legislator in the U.S. or
Western Europe trying to create sensible legislation on protections and
security mechanisms for MP3-based music on the internet. Justify your
comments. Show awareness of the positions expressed in the prior two
essays.
- Design an application which will be installed by system managers
which will allow users on one machine to store and retrieve MP3-based
music in both private and shared databases. Include security mechanisms
which would allow "appropriate" controls and protections
for the music managed by this application. You may find
http://arcib.dowling.edu/cgi-bin/info2html?(mysql.info.gz)Top
helpful.
Just do the design at this
time. You will implement in the next assignment. Submit the design
as an essay on paper.
- Assignment #10, due 5 May 2003.
**** Note: This assignment has been changed slightly ****
- Except for the term project, this is the last programming assigment
for the semester. Do a good job. Note that you will present the
results of this effort as well as the term project in the same class meeting.
- Take the work you did in the previous two assigments, and attempt to
implement a password-controlled database access system in Linux or
in Windows which would
be suitable for storing a shared pool of music clips for which intellectual
property rights must be respected. You may use any combination of
languages and software packages that you believe will do the job.
You are to make documentation, source code, data files, test suite and executable
available for evaluation on arcib.dowling.edu, submitting a paper copy
listing the location of these materials, and giving "bootstrap"
instructions for the instructor to try your work. You are encouraged
to work in groups, but each group will be required to present an
explanation of the work as a group to the entire class.
- Presentations of this assignment and the term project
will be done in class on 5 May 2003. Be prepared to
explain problems and your solutions. This effort will be graded.
- Term Project presentations, due 5 May 2003.
- Each and every member of each project group will make a brief presentation
their work on the term project. To quote from the syllabus, "each member of each group will be required to
explain to the class some major aspect of the group project, and to respond to questions from the class and
from the instructor on the project." While the group may continue to touch up and refine
the implementation of the project through 7 May 2003, the design
and documentation must be complete by the start of class on 5 May 2003 and submitted
on paper at that time. The code should be placed on arcib.dowling.edu no later than
5:30 pm on 7 May 2003 and the location submitted on paper or by email.
- Final. There will be an open book, open-notes
final on Monday, 12 May 2003, from 5:30 - 8:10 pm in KSC 102A.
Updated 14 April 2003.
yaya@dowling.edu