Welcome to the OS Fundamentals repository! This repository contains various programs and algorithms related to operating system fundamentals. Each program is carefully implemented to help you understand the core concepts and workings of operating systems.
This repository covers essential topics and algorithms in operating systems, including process scheduling, deadlock handling, file allocation methods, and disk scheduling algorithms. Each section contains code implementations and explanations to facilitate learning and understanding.
- FCFS (First-Come, First-Served):
FCFS.c
- SJF (Shortest Job First):
SJF.c
- Priority Scheduling:
priority.c
- Round Robin Scheduling:
roundrobin.c
- Producer-Consumer Problem:
producer_consumer.c
- Banker's Algorithm:
bankers_algo.c
- Deadlock Detection:
deadlock_detection.c
- Sequential Allocation:
file_allo_sequential.c
- Indexed Allocation:
file_allo_indexed.c
- FCFS Allocation:
file_allo_fcfs.c
- Linked List Allocation:
file_allo_linked_list.c
- FCFS Disk Scheduling:
disc_sche_fcfs.c
- SCAN Disk Scheduling:
disc_sche_scan.c
- C-SCAN Disk Scheduling:
disc_sche_cscan.c
To run these programs locally, follow these steps:
-
Clone the repository:
git clone https://github.com/your-github-username/OS-fundamentals.git cd OS-fundamentals
-
Compile the programs: Use a C compiler to compile the desired program. For example, to compile
FCFS.c
:gcc FCFS.c
-
Run the executable:
./a.out
Each program includes comments and prompts to guide you through its usage. Simply follow the instructions provided in the terminal after running the executable.
We welcome contributions to enhance the OS Fundamentals repository. To contribute:
- Fork the repository
- Create a new branch:
git checkout -b feature/YourFeature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/YourFeature
- Open a pull request
Thank you for visiting! I hope you enjoy exploring my work. 😊