Operating Systems, Spring 2018
Part of
the CS:3620 Operating Systems Collection
by
Douglas W. Jones
T
HE
U
NIVERSITY
OF
I
OWA
Department of Computer Science
11:30 Monday, Wednesday and Friday, 118 MLH
Wed Jan
17
Overview
Fri Jan
19
C for experienced programmers (skim a
Manual of C Style
)
Mon Jan
22
A brief history [last add, last free drop]
Wed Jan
24
The Unix shell
A C-Shell Tutorial
Fri Jan
26
An example shell:
mush, a minimally usable shell
Mon Jan
29
A bare-bones system [last undergrad add, last refund for drop]
Wed Jan
31
Object code, loaders and linkers
Fri Feb
2 Unix loading and linking (read about makefiles in the
Manual of C Style
)
Mon Feb
5
Files, open files, and devices
Wed Feb
7
Interrupts and FIFO queues
Fri Feb
9 Interrupts and critical sections
Mon Feb
12 Interrupts and critical sections
[Clean Monday (Orthodox Christian)]
Wed Feb
14 A complete device driver
[Ash Wednesday (Western Christian)]
Fri Feb
16
Disk drivers and scheduling
[Chinese New Year]
Mon Feb
19 Disk scheduling policies
Wed Feb
21
Virtual disks vs disk files
Fri Feb
23 File systems and directories [degree applications due]
Mon Feb
26
the CAP ... garbage collector
/
The CAP filing system
Wed Feb
28 Review
Fri Mar
2 Midterm Exam [midterm day]
Mon Mar
5
Virtual memory [summer preregistration]
Wed Mar
7 Page fault service
Fri Mar
9 More paging [spring break starts]
Mon Mar
19 Paged-segmented memory
Wed Mar
21
The Unix memory model
[Vernal Equinox]
Fri Mar
23
Dynamic storage allocation
Mon Mar
26 The buddy system
Wed Mar
28 Fragmentation, boundary tags
Fri Mar
30
Garbage Collection
[Good Friday (Western Christian)]
Mon Apr
2
Processes and threads [last undergrad drop]
[Passover III (Jewish)]
Wed Apr
4
Thread and Process States
[Passover V (Jewish)]
Fri Apr
6
Implementing scheduling
[Passover VII, Good Friday (Orthodox Christian)]
Mon Apr
9 More Implementation [fall preregistration]
Wed Apr
11
Heavyweight processes, Lightweight threads
Fri Apr
13
Concurrent programming
[bad luck (Christian?)]
Mon Apr
16
Dekker's Algorithm
Wed Apr
18
Monitors
,
the Ada Rendezvous
, and
client-server systems
Fri Apr
20
Clients and servers:
Task Communication in Demos
Mon Apr
23
Amoeba
Wed Apr
25 Amoeba Message Delivery
Fri Apr
27 Networks
The ISO OSI model
Mon Apr
30
Unix Setuid
and Rights amplification
Wed May
2 Minimum boot ROM on a modern system
Fri May
4 Review [last day of class]
Wed May
9 FINAL EXAM, 7:30-9:30 AM, 110 MLH
WEB ACCESSIBILITY NOTICE
To ensure accesibility, the University of Iowa will probably freeze this web site on April 22, 2027, and will probably delete it in 2028.