KV5051 - Operating Systems Assessment
KV5051 - Operating Systems Assessment
ASSESSMENT BRIEF
Module Title: Operating Systems
Module Code: KV5051
Academic Year / Semester: 2024-25 / Semester 1
Module Tutor / Email (all queries): Fatih Tuysuz [email protected]
% Weighting (to overall module): 100%
OS Fundamentals and Network Infrastructure
Assessment Title:
Implementation for a Company
Date of Handout to Students: 28th October 2024
1.3. Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA)
LO4 Effectively formulate responses to well defined problems in both written and oral
form.
This assessment addresses learning outcomes LO1, LO2, LO3 and LO4.
2.3. Personal Values Attributes (Global / Cultural Awareness, Ethics, Curiosity) (PVA)
PVA1 Demonstrate creativity in problem solving and decision making in complex and
unpredictable solutions for the benefit of society and environment
PVA3 Demonstrate initiative, personal responsibility, personal enterprise, ethical and
security awareness, self-reliance and self-direction, acting autonomously in planning,
designing and implementing tasks at a professional level
3. INSTRUCTION OF ASSESSMENTS
3.1. Introduction
Operating Systems (OS) and Network Infrastructure are foundational components of
modern computing environments, enabling efficient process management, resource
allocation, and communication across networks.
Part 2: You are expected to propose a secured and load balanced network infrastructure
that will support existing processes and improve operational efficiency of a fictional
company.
In this regard, you must design and implement the following components:
4. ASSESSMENT REGULATIONS
You are advised to read the guidance for students regarding assessment policies. They
are available online here.
For coursework submitted up to 1 working day (24 hours) after the published hand-in
deadline without approval, 10% of the total marks available for the assessment (i.e.
100%) shall be deducted from the assessment mark.
Coursework submitted more than 1 day (24 hours) after the published hand-in deadline
without approval will be marked as zero but will be eligible for referral.
There are many different forms of academic misconduct or ‘cheating’. Plagiarism is the
most common and both the University library and your academic tutors are able to
provide further guidance on proper citation and referencing in your assessed work.
The full Academic Misconduct Policy is available here. Useful guidance for avoiding
academic misconduct can be found here.
The following use of AI tools or software engineering automation (SEA) tools will lead to
academic misconduct investigation:
5.2. What do you need to submit? - A C program and A Technical Consultancy Report
5.2.1. C Program
You are expected to develop a C program that demonstrates process creation, thread
management, synchronization using mutex and semaphore, and scheduling. For this
task, skeleton codes are provided in Black Board (BB) module page under the
Assessment folder. Skeleton codes are fully functional with all important elements, but
the implementation of some parts is missing. You are expected to complete these
missing elements (TODO tasks in the codes) for this program to be fully working. Details
of TODO tasks are also given in the skeleton codes as comments.
TODO:
• Write code to iterate over a loop in the child process, and within the loop, print
a message that differs for the last iteration.
• Modify the behaviour of the child process, adding some delays using sleep() or
other system calls.
TODO:
• Write code that adds delays to simulate work done by the threads.
• Implement the thread functions with different behaviours for each thread, using
conditions and loops.
TODO:
• Implement the producer logic, including writing to a file with a condition (even vs.
odd iterations).
• Use a loop to introduce some delays and simulate real-world producer behaviour.
• Protect the file operations using the mutex (pthread_mutex_lock() and
pthread_mutex_unlock()).
Task 4: Semaphore Synchronization and File Operations
• Objective: This task requires students to use semaphores to synchronize the start
of the consumer task with the completion of the producer task. They will also
work with basic file operations like reading and writing.
TODO:
• Use a loop to read all lines from the file and print even and odd lines with different
messages.
• Implement the consumer logic, including waiting for the semaphore signal and
then reading from the shared file.
Once you complete these missing elements, you are expected to submit your codes to
the Submission Point (Program Submission) opened for the Programming part under
the Assessment folder.
For this task, you are expected to take on the role of a consultancy firm who has been
commissioned to produce a report (in the format of PDF or Microsoft Word) that will
first answer OS specific questions and then allow a company to build a functional
network services-based infrastructure solution based upon their requirements
(outlined below).
Tech Solutions Inc., a rapidly growing IT services provider for small businesses,
requires a scalable and reliable IT infrastructure. Your task is to prepare a
consultancy report for the company's management and IT team that outlines the
setup of DNS servers and Apache web servers, ensuring secure, load-balanced
services.
• Cover Page
• Table of Contents
• List of Figures
• WP1: Response to OS-related Questions
• WP2: Executive Summary for Manager
• WP3: DNS Infrastructure Setup
• WP4: Web Server Infrastructure Setup
• Glossary of Acronyms
• References
• Appendix
Note that this is an individual assignment and must be your own unaided work.
Component Weighting
OS-based C code 30%
Report – WP1. Answering OS related questions 20%
Report – WP2. Executive Summary 15%
Report – WP3. DNS setup and configuration 15%
Report – WP4. Web server setup and load balancing 15%
Presentation of the report 5%
Note that Evaluation of the report presentation will be based on the report's structure,
proper use of headings, captions for visuals, correct referencing, and in-text citations.
Clarity and logical flow are key.
END