- Group Number: 35 (CS39002-Spring-2022)
- Members:
- Pritkumar Godhani (19CS10048)
- Debanjan Saha (19CS30014)
This repository contains all the implementations of the systems programming concepts learnt in the Operating Systems course.
The directories present in this repository are as follows:
-
a1-shell-scripting
: Implementatation and familiarization with shell scripting and popular/frequently used shell commands. -
a2-custom-shell
: Implementation of a command-line interpreter like Linux shell in C++ with support for foreground/background command execution, I/O redirection, process termination, multi-process status monitoring,command auto-completion searchable history etc using POSIX system calls like fork, exec, signal, pipe etc. -
a3-parallel-matrix-multiplication
: Implementation of parallel matrix multiplication as a deadlock-free producer consumer problem using shared memory and semaphores. -
a4-threads-and-locks
: Implementation of a producer consumer problem in the form of a job dependency tree with the use of threads,locks and shared memory. -
a5-memory-management-unit
: Implementation of a basic memory management library in C++ to ensure efficient usage of resources with functionalities like word alignment, 4 custom data types, garbage collection using threads and mutex locks to prevent data corruption.