Skip to content

Repostiory for C files from Operating Systems class at Uni

Notifications You must be signed in to change notification settings

OrgYEET/os-fundamentals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS Fundamentals 📚

Overview

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.


Table of Contents

  1. Introduction
  2. Algorithms and Programs
  3. Installation
  4. Usage
  5. Contributing
  6. Contact

Introduction

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.


Algorithms and Programs

Process Scheduling

  • FCFS (First-Come, First-Served): FCFS.c
  • SJF (Shortest Job First): SJF.c
  • Priority Scheduling: priority.c
  • Round Robin Scheduling: roundrobin.c

Synchronization

  • Producer-Consumer Problem: producer_consumer.c

Deadlock Handling

  • Banker's Algorithm: bankers_algo.c
  • Deadlock Detection: deadlock_detection.c

File Allocation Methods

  • 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

Disk Scheduling

  • FCFS Disk Scheduling: disc_sche_fcfs.c
  • SCAN Disk Scheduling: disc_sche_scan.c
  • C-SCAN Disk Scheduling: disc_sche_cscan.c

Installation

To run these programs locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/your-github-username/OS-fundamentals.git
    cd OS-fundamentals
  2. Compile the programs: Use a C compiler to compile the desired program. For example, to compile FCFS.c:

    gcc FCFS.c
  3. Run the executable:

    ./a.out

Usage

Each program includes comments and prompts to guide you through its usage. Simply follow the instructions provided in the terminal after running the executable.


Contributing

We welcome contributions to enhance the OS Fundamentals repository. To contribute:

  1. Fork the repository
  2. Create a new branch:
    git checkout -b feature/YourFeature
  3. Commit your changes:
    git commit -m 'Add some feature'
  4. Push to the branch:
    git push origin feature/YourFeature
  5. Open a pull request

Contact

Website LinkedIn Instagram Email

CContact Form

Thank you for visiting! I hope you enjoy exploring my work. 😊

About

Repostiory for C files from Operating Systems class at Uni

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages