CMSC 312: Introduction to Operating
Systems
Fall 2007
Instructor: Dr. Ju Wang (
jwang3@vcu.edu )
Office: 406 Eng Bldg.
Phone: 827-4002
Class meetings: Tuesday
and Thursday, 2:00-3:15,
Class Room: ENG
Building-401.
Office Hours: MW
2:00PM-3:00PM
Contents
Course Syllabus |
Course
Description | Exam
| Assignments
Lecture
Notes | Useful Links | Announcement
| Frequently
Used Unix Command
Homeworks
Submission format:
email your source code to TA unless noticed otherwise.
TA: Wenan Chen, chenw6@vcu.edu
Office: B4 of School of Engineering
HW#1:
1.
write a Java
program to create 4 concurrent threads. Each threads will repeatedly print out
“this is thread xx”, where xx is a number from 1 to 4 based on the order the
thread is created.
2.
Create a
subdirectory firstname_lastname under
/home/cmsc312 at the Linux server. Upload the .class files for the program you
created.
Due:
Sep 11.
HW#2:
1.
write a C
program to create N (N>5) concurrent processes. The first child process
execute an “ls” command. The other child processes will repeatedly print out
“this is process xx” 100 times, where xx is PID. The integer number N is read
from screen. Find out the largest N value before the system become unstable.
2.
Use pthread to
redo HW#1.1
Due:
EXTENDED Oct 2.
HW#3:
2.
Do questions
7.3, 7.4, 7.8. scanned , more
pages from chap7 that is not in the new edition.
Due
Oct 24.
HW#4: Term project: simple shell emulation.
Project Due: Dec 6
HW#5:
Do questions 8.5, 8.13 and 8.14 at the end of chapter 8 (Deadlocks). Scanned version.
HW#6:
write a program to test the largest file you can create. And report how long it
take to create such a file. Due Dec 6.
Useful
Links
Tools and Programming
·
·
Final Examine date: Tue, Dec 11, 1:00-3:00pm
·
Nov 26, I will be out
of town this Tuesday, the class will be used as project day. Mr. Ashwin will be
in the class and answer some of the questions you might have.
·
Nov 8, Network programming with Socket interface
o Simple
java server
program
o Simple
java client
program
o Bring
your laptop computer next Tuesday.
·
Oct 30, read chapter 8: deadlocks
o Banker’s
algorithm
·
Oct 16, midterm is on Oct 23.
·
Oct 2, reading task: old book at chapter 7
o Synchronization
hardware
o Semaphores
o Critical
region
o Monitor
·
Sep 18, a simplified thread_test2.cpp is now
available at the cmsc312 directory.
o Due
to the unavailability of computer room, Tuesday’s class will still be hold at
room 401. We will walk through the tutorial. Bring your own laptop computer
will be a good idea.
·
Sep 14,
o Due
to certain issue of using the c compiler, the HW2 will be extended to Oct 2.
o We
will have 2 lab lecture next week about C programming, detail will be announced
when the lab room is decided.
o The
lab tutorials will also introducing the using of LINUX machine and nano editor.
o The
tutorial will be uploaded soon before the class.
o The
C program will need to be created and tested on the LINUX server. It will most
likely not working on the window machines.
·
Sep 13,
o
Some self-test questions on the web: http://www.techinterviews.com/?p=170
·
Sep 6,
o
Linux
system call reference
o
Read: Chapter 5, Threads
o
TA office hours: 10:00 to 12:00 am on Tuesday.
The location is in the basement, B4 of School of Engineering.
·
Sep 4,
o
Here is the group
information
·
Aug 28,
o Reading
assignment: Chapter 1, 2, 3, 4.
o
Linux access information is HERE
o
SSHClient
Software Download