Welcome to my Operating Systems (COP 4600) repository! This repository contains assignments that explore core concepts of operating systems, including process scheduling, concurrency, and multithreaded programming. Each assignment demonstrates practical applications of theoretical knowledge using Python and C.
- Process Management and Scheduling
- Memory Management (Paging, Segmentation)
- Concurrency:
- Locks and Semaphores
- Reader-Writer Locks
- Condition Variables
- File Systems and Data Structures
- Advanced Topics:
- Virtual Machines
- Containers
- Cloud Computing
- Implementing and analyzing process scheduling algorithms.
- Developing multithreaded programs using synchronization primitives.
- Managing shared resources with reader-writer locks and condition variables.
- Parsing and processing input/output files programmatically.
- Designing thread-safe data structures.
| Folder Name | Description |
|---|---|
asn1/ |
Implements process scheduling algorithms: FIFO, Pre-emptive SJF, and Round Robin. |
asn2/ |
Implements a thread-safe concurrent hash table with reader-writer locks and condition variables. |