Premier University, Department of CSE
Fall 2025, 5th Semester, Assignment, April, 2025
Course Title: Operating Systems, Course Code: CSE 3337
Course Outcome: CO3, Total Marks: 10
Description: Suppose your company operates a distributed file system that consists of multiple
servers and clients. This file system allows multiple concurrent access and modification of files by
multiple clients. However, deadlocks can occur when conflicting resource requests from clients
create circular dependencies. Now, design a deadlock detection and recovery system for your
company to manage the file system.
Objectives:
1. Deadlock Detection: Design a system that can detect deadlocks in your distributed file
system. It should periodically analyze the resource allocation graph, which represents the
dependencies between clients and resources (files), to identify potential deadlocks.
2. Deadlock Resolution: Once a deadlock is detected, your system should employ a deadlock
resolution strategy to break the deadlock and allow the affected clients to proceed with
their operations. This strategy should ensure fairness and minimize the impact on other
clients.
3. Fault Tolerance: The deadlock detection and recovery system should be fault-tolerant and
resilient to failures. It should be able to recover from failures such as server crashes or
network partitions without losing the ability to detect and resolve deadlocks.
4. Scalability: The system should be scalable to support a large number of clients and files. It
should be able to handle concurrent requests efficiently and distribute the deadlock
detection and recovery processes across the servers to avoid performance bottlenecks.
Investigation:
You should identify the specific scenarios or conditions in which deadlocks are occurring.
Moreover, analyzing resource dependencies & reviewing system architecture is required.
Evaluation:
Students need to justify their deadlock detection design, resolution, fault tolerance, scalability, and
performance optimization.
Design:
Students’ solution design must achieve the given objectives.
Deliverables:
A printed assignment reporting the following tasks:
(i) A properly reasoned deadlock detection and recovery system.
(ii) Briefly address the complex problem-solving questions:
a. Does the solution need in-depth engineering knowledge?
b. Does the solution involve wide-ranging or conflicting technical, engineering, and other
issues?
c. Is the solution well-known, or does it require abstract thinking and analysis to formulate?
d. Does the solution involve infrequently encountered issues?
e. Does the solution need adherence to standards and codes of practice?
f. Does the solution involve stakeholders with conflicting technical requirements?
g. Does the solution involve interdependence between sub-problems or parts?
Rubrics for Assignment marking:
Task Criteria Good (4-5) Moderate (2-3) Poor (1)
i. Problem Properly or near Appropriate solution Inappropriate or no
solution appropriately reasoned for some cases solution
solution
ii. Problem In-depth analysis Shallow analysis Incomplete analysis
analysis