CSC312: Operating System I 6 credits (40-10-10)

Objectives

To introduce operating systems concepts and show how an operating system may manage computer hardware (processor, memory, I/O devices).

Contents

Introduction; need for and types of OS's; their characteristics and desirable features; brief history of OS; Process management: Notion of a process; the process control block; operations on a process, process hierarchies; Process synchronization primitives; producer-consumer problems; mention of various communication mechanisms; Processor management: high-level scheduler, dispatcher; process scheduling policies; deadlocks, Bankers algorithm; Memory management: need for memory management; virtual memory concept; paged and non-paged allocation (and replacement) policies/strategies; mention of thrashing; Mention of: working set theory; principle of locality; storage hierarchies; need to model process behaviour; Device management: need for device management: interrupts; buffering, spooling, algorithms for I/O requests and handlers; File system management: importance of file system; file structure and organisation; file devices and file descriptors; file protection schemes; Security: motivation for security; mention of protection mechanisms, the notion of capabilities; Dumping and archiving; Other issues: overview of resources and their allocation; mention of subsystems; bootstrapping; Managerial issues: personnel needed; short/long-term load distribution; system security (physical and electronic), reliability and upgrades; Mention of multiprocessor systems, fault-tolerant and real-time systems. LABORATORY: demonstration and implementation of OS concepts on a multi-user, multi-tasking OS (e.g. UNIX); Use of the command interpreter (and Job Control Language); Introduction to networks; need for computer networks; structure of a network; need for protocols and standards making organisations; Transmission of digital/analogue information; transmission media (twisted pair, coaxial cable, fibre optics); The OSI-ISO 7-year model: Mention of packet and circuit-switched networks; broadcast networks and access protocols; Local area networks: topology (star, ring, and bus) and transmission of information through them; Examples of networks.

Prerequisite:

CSC204