Welcome to the Operating Systems Course Projects repository. This collection of projects is designed to illustrate and provide practical experience with the fundamental components of operating systems. Through these projects, students can explore and learn about process and thread management, processor scheduling and concurrency, interprocess communication, memory management, input/output operations, file systems, and the basics of networking.
This repository is organized into several directories, each dedicated to a specific area of operating systems:
- Client-Server: Contains a client and server application demonstrating socket programming and basic network communication.
- Password Cracker: Implements a simple brute-force password cracker to illustrate process scheduling and thread management.
- FUSE File System: Uses the FUSE library to create a user-space file system, showcasing file system management and operations.