CS241 Operating Systems and Computer Networks
CS241 15 CATS (7.5 ECTS) Term 1
Availability
Core - CS, CSE and CMS. Option - DM
Prerequisites
CS118, CS132 and CS133
Academic Aims
To introduce the fundamental concepts of modern day operating systems and computer networks.
Learning Outcomes
On completion of the module the student will:
- Understand the generic requirements, structure, operation, and administration of a modern operating system.
- Be able to analyse, design and write programs at the operating systems level
- Understand the requirements and design of modern network protocols and systems, their operation and use by applications.
Content
- 50% of the module is on operating systems, and 50% is on computer networks.
- Topics on operating systems include functions of operating systems and computer networks, system interfaces, process management, concurrency, low level IPC, high level IPC, deadlock detection and recovery, security threats and provision, and distributed operating systems.
- Topics on networks include models of communication (ISO reference model), LANs (topologies, polling, CSMA systems, Ethernet, bridging, switching), WANs (topologies, packet / circuit switching, routing algorithms, ATM, DSL), Wireless networks (WiFi, Bluetooth), client-server systems, socket programming, and network management issues (performance, security, monitoring).
Books
- Operating System Concepts by Abraham Silberschatz; Peter B. Galvin; Greg Gagne preferably the 9th edition.
- Computer Networking: A Top-Down Approach by J. F. Kurose and K.W. Ross preferably the 6th edition.
Supplementary reading:
- Computer Networking: Principles, Protocols, and Practice" by O. Bonaventure
Assessment
Three-hour examination (80%), programming assignment (20%)
Teaching
30 one-hour lectures