CS241-15 Operating Systems and Computer Networks
Introductory description
To introduce the fundamental concepts of modern day operating systems and computer networks.
Module aims
To introduce the fundamental concepts of modern day operating systems and computer networks.
Outline syllabus
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
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, and memory management.
Topics on networks include models of communication (TCP IP protocol stack), LANs (topologies, polling, CSMA systems, Ethernet, bridging, switching), WANs (topologies, packet / circuit switching, routing algorithms, ), client-server systems, socket programming, network management issues (performance, security, monitoring), UDP, TCP reliable data transfer, flow control, congestion control, IP addressing, Internet routing algorithms
Learning outcomes
By the end of the module, students should be able to:
- - Understand the generic requirements, structure, operation, and administration of a modern operating system.
- - Analyse, design, and write programs at the operating systems level.
- - Understand the requirements and design of modem network protocols and systems, their operation and use by applications.
Indicative reading list
Please see Talis aspire link for most up to date list.
View reading list on Talis Aspire
Subject specific skills
- Design low level system software
- Implement networking protocols
- Design simple operating systems
Transferable skills
- Problem solving
- System design and organisation
Study time
Type | Required |
---|---|
Lectures | 30 sessions of 1 hour (20%) |
Practical classes | 6 sessions of 1 hour (4%) |
Private study | 114 hours (76%) |
Total | 150 hours |
Private study description
Reading the course material
Solving problems
Programming
Revision
Costs
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Students can register for this module without taking any assessment.
Assessment group D3
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
Programming Assignment | 20% | Yes (extension) | |
The programming assignment will test your knowledge of C programming, various OS concepts (such as multithreading, synchronisation, memory management), and various CN concepts (such as layering of the IP protocol stack, packet structures) . This assessment is eligible for self-certification (extension). |
|||
In-person Examination | 80% | No | |
A paper which examines the course content and ensures learning outcomes are achieved.
|
Assessment group R2
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
In-person Examination - Resit | 100% | No | |
Resit Exam
|
Feedback on assessment
Feedback on coursework via Tabula
Courses
This module is Core for:
- Year 2 of UCSA-G500 Undergraduate Computer Science
-
UCSA-G503 Undergraduate Computer Science MEng
- Year 2 of G500 Computer Science
- Year 2 of G503 Computer Science MEng
- Year 2 of UCSA-I1N1 Undergraduate Computer Science with Business Studies
- Year 2 of UCSA-G406 Undergraduate Computer Systems Engineering
- Year 2 of UCSA-G408 Undergraduate Computer Systems Engineering
This module is Option list B for:
- Year 2 of UCSA-G4G1 Undergraduate Discrete Mathematics
- Year 2 of UCSA-G4G3 Undergraduate Discrete Mathematics