CS 321 Spring 2013: Operating Systems

CS 321 Spring 2013
Operating Systems

Department: Computer Science, UAF
Instructor: Glenn G. Chappell
Office: 201B Chapman
Office Hours: 11:45–1:45 MWF, 9:30-11:30 T, 2:00-3:00 T on spring 2013 class days, or by appointment
Office phone: (474-)5736
E-mail: ggchappell@alaska.edu
Paper mailbox: Inside the CS Department office, 202 Chapman

Announcements

Course Materials

Materials are listed with the most recent at the top.

Week Class Meetings Readings & Homework Handouts, Sample Code, Etc.
Week 15 
& Finals 
5/6–5/10 
  • 5/8: Final Exam 10:15 a.m.–12:15 p.m.
  • 5/6: Student presentations (see schedule); general review
   
Week 14 
4/29–5/3 
  • 5/3: Student presentations (see schedule)
  • 5/1: Student presentations (see schedule)
  • 4/29: Student presentations (see schedule)
   
Week 13 
4/22–4/25 
  • 4/26: No class (UAF SpringFest)
  • 4/24: Student presentations (see schedule)
  • 4/22: Student presentations (see schedule)
   
Week 12 
4/15–4/19 
  • 4/19: Sockets (cont’d); sample presentation
    See 4/12 lecture notes & socket code
  • 4/17: Sockets (cont’d)
    See 4/12 lecture notes & socket code
  • 4/15: Sockets (cont’d)
    See 4/12 lecture notes & socket code
  • tcp_server2.cpp [C++ source]
    Threaded HTTP server
    Requires socket.h/.cpp
    Written Wed 4/17
    Revised Fri 4/19
  • tcp_server1.cpp [C++ source]
    Simple HTTP server
    Requires socket.h/.cpp
    Written Mon 4/15
    Revised Wed 4/17
Week 11 
4/8–4/12 
 
  • tcp_client1.cpp [C++ source]
    HTTP client with error checking
    Requires socket.h/.cpp
    Written Fri 4/12
    Distributed in class Mon 4/15
  • socket.cpp [C++ source]
    Source for Lawlor’s socket library
    Place in subdirectory osl
    Posted Fri 4/12
  • socket.h [C++ header]
    Header for Lawlor’s socket library
    Place in subdirectory osl
    Posted Fri 4/12
Week 10 
4/1–4/5 
  • 4/5: Presentation sign-up; dealing with deadlock (cont’d)
    See 4/3 lecture notes
  • 4/3: Dealing with deadlock
    Lecture notes
  • 4/1: Introduction to resource contention
    Lecture notes
 
Week 9 
3/25–3/29 
  • 3/29: File system implementation
    Lecture notes
  • 3/27: File operations (cont’d)
    See 3/25 lecture notes
  • 3/25: File operations
    Lecture notes
 
Week 8 
3/18–3/22 
  • 3/22: Introduction to Files
    Lecture notes
  • 3/20: Page-replacement algorithms (cont’d)
    See 3/18 lecture notes
  • 3/18: Page-replacement algorithms
    Lecture notes
   
Spring Break   
Week 7 
3/4–3/8 
  • 3/8: Midterm Exam
  • 3/6: Guest speaker
  • 3/4: Virtual memory (cont’d)
    See 3/1 lecture notes
 
Week 6 
2/25–3/1 
 
Week 5 
2/18–2/22 
  • 2/22: Read Ch 3 intro–3.2 (pp 175–187).
  • Assignment 3
    Due Tue 2/26
    Posted Tue 2/19
 
Week 4 
2/11–2/15 
  • 2.15: Read 2.4 intro, 2.4.1 (pp 145–152).
Week 3 
2/4–2/8 
  • Assignment 2
    Due Thu 2/14
    Posted Sat 2/9
    Revised Mon 2/11
  • 2/6: Read 2.3.
Week 2 
1/28–2/1 
  • 2/1: Read 2.2.
  • Assignment 1
    Due Thu 2/7
    Posted Fri 2/1
  • 1/28: Read 2.1.
  • generate.py [Python source]
    NetRun link
    Example of coroutines in Python
    Requires Python 3.0 or later
    Written Fri 2/1
  • zombiecheck.cpp [C++ source]
    Demo effect of waitpid on zombie child
    Written Sun 1/27
Week 1 
1/22–1/25 
  • 1/25: System calls (cont’d) [1.6]
    Lecture notes
  • 1/23: Operating system concepts [1.5]; system calls [1.6]
    Lecture notes
  • 1/21: No class (AK Civil Rights Day)
  • 1/23: Read 1.7.
Week 0 
1/17–1/18 
  • 1/18: Course overview; introduction to operating systems [1.1]
    Lecture notes
  • 1/18: Read 1.2, 1.5, 1.6.
    Note: The above date is when the reading is assigned. It should be done by the next class meeting (Wednesday 1/23 in this case).

External links last checked January 17, 2013.
Linux/i386 System Calls
A nice list of Linux system calls, with selector codes, by Konstantin Boldyshev.
NetRun
Dr. Lawlor’s NetRun service. An account is required; this can be obtained using the NetRun Password Set/Reset page.
Cygwin
Cygwin is a Unix-ish environment that runs under Windows. Students running Windows are encouraged to install this.


CS 321 Spring 2013 / Updated: 6 May 2013 / Glenn G. Chappell / ggchappell@alaska.edu