Computer Science
Lectures: COMPSCI 340 & SOFTENG 370 Semester 2, City Campus. N.B. THIS IS 2015 INFO, SEE CANVAS FOR 2016.
Lectures are held at the following times and places:
- Wednesday 1pm 260-073 (Owen G Glenn, Room 073)
- Thursday 9am 260-092 (Owen G Glenn, Room 092)
- Friday 11am 260-073 (Owen G Glenn, Room 073)
Occasionally throughout the semester the Friday lecture time may be used as a tutorial time.
Due to University policy the recordings of lectures are only available from Cecil. You can find them in the "Knowledge Map" area of both CompSci 340 and SoftEng 370.
Introduction to the course - OS
structure
History of OSs - up to batch
systems
History of OSs - time-sharing
systems, PCs, the Web and smaller OSs
Virtualization, C Programming and Operating Systems
Processes and threads -
implementation
PCBs, Process states, Process
creation. forkdemo.py
Running, waiting and stopping. infinite.c and infinite.py stop with ctrl-Z to suspend the process.
Scheduling
Real-time scheduling
The problem of concurrency - locks and semaphores
Readers/writers, monitors
Dining Philosophers. Equivalence of concurrency constructs.
IPC - Interprocess communication,
badDiningPhilosophers.c,
betterDiningPhilosophers.c
IPC, Distributed concurrency control. Shared memory Python example
Deadlock
File Systems
Representing files on disk
File allocation techniques
Unix file operations and fork - twice.py
Versioning and Distributed File Systems
NFS & AFS
Distributed services
Memory management, Pages, Segments
Virtual memory, page faults
Page allocation algorithms
Protection and the access matrix
Capabilities and Access Control Lists
Cryptography and Authentication
Kerberos and Intro to Mobile Security
Device drivers
Linux modules and general device services
Disks as special devices, disk scheduling
-
Related Programmes