This is an old revision of the document!
Include a brief summary of the course topics and requirements, the general format of the course, and the methods of evaluation.
Skills and knowledge students should have prior to beginning the course:
Class designed for students majoring in Computer Science or in areas having a strong emphasis in Computer Science. Sound knowledge of data structures and C pogramming.
- Unordered List Item
Course Topics:
Structure of a process: address space, registers, program counter and the stack. Asynchronous activity: hardware and software interrupts, service routines. Multiprogramming: programming for concurrency, process and thread, shared data, race conditions, critical sections and tools/techniques for multiprogramming such as mutual exclusion, semaphores and strict message passing. Memory management: memory allocation, stack, heap, virtual memory. File systems: file organization and interfacing with secondary storage. The operating system kernel: internals and interfacing via system calls. Distributed computing: communication, client/server model, remote procedure calls.
Course Format:
- Lecture format: in class lecture
- Online materials location and format: moodle
- Lab or tutorial format and expectations: in class labs
Method of evaluation:
- Number of Assignments: 3
- Number of Graded Labs: 0
- Number of Quizzes: 0
- Formal Midterm? yes
- Course project? no
- Final Exam? yes
- Group work? no
- mostly programming assignments? yes
- Written documents? readme files in assignment submission