Skip to content

This repository hosts a C++ implementation of a multiprogramming operating system simulation. The OS efficiently handles various jobs, manages errors like time limit exceeded and line limit exceeded, and incorporates virtual memory with segmentation. This project serves as a comprehensive simulation of an operating system environment.

License

Kartik-Katkar/Multiprogramming-Operating-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multiprogramming Operating System Simulation

Overview

This repository contains a simulation of a multiprogramming operating system implemented in C++. The OS handles various jobs, manages errors like time limit exceeded, line limit exceeded, and stores data in virtual memory using segmentation. This project serves as a simulation of an operating system environment.

Features

  • Multiprogramming: The OS supports the execution of multiple programs concurrently.
  • Job Management: Handles various jobs and processes.
  • Error Handling: Manages errors such as time limit exceeded, line limit exceeded, etc.
  • Virtual Memory: Stores data in virtual memory using segmentation.

Usage

  1. Ensure you have GCC (GNU Compiler Collection) installed.

  2. Clone the repository:

    git clone https://github.com/Kartik-Katkar/Multiprogramming-Operating-System.git
    cd Multiprogramming-Operating-System

Diagrams

Generalized OS Architecture

Generalized OS Architecture

This diagram provides a high-level overview of the operating system, showcasing components like registers, card reader, printer, and main storage.

Detailed System Components

Detailed System Components

This diagram delves deeper into the system, illustrating main memory, auxiliary storage, CPU registers, and multiple card readers.

Contribution Guidelines

I encourage contributions from the community to enhance the Multiprogramming Operating System simulation. To ensure a smooth collaboration, please consider the following guidelines:

  1. Fork the Repository:

    • Fork the repository to your GitHub account.
  2. Clone the Repository:

    • Clone the forked repository to your local machine:

      git clone https://github.com/your-username/Multiprogramming-Operating-System.git
      cd Multiprogramming-Operating-System
  3. Create a Branch:

    • Create a new branch for your contribution:

      git checkout -b feature/your-feature
  4. Make Changes:

    • Implement your changes and ensure they adhere to the project's coding standards.
  5. Commit Changes:

    • Commit your changes with a descriptive commit message:

      git commit -m "Add your descriptive message here"
  6. Push Changes:

    • Push your changes to your forked repository:

      git push origin feature/your-feature
  7. Submit a Pull Request:

    • Open a pull request on the main repository's main branch. Provide a clear and concise explanation of your changes.
  8. Code Review:

    • Participate in the code review process by addressing feedback and making necessary changes.
  9. Merge:

    • After approval, your changes will be merged into the main repository.

Thank you for contributing to the Multiprogramming Operating System simulation! Your efforts help improve the project for everyone. If you have any questions or need assistance, feel free to open an issue or join the discussion in the project's GitHub repository.

About

This repository hosts a C++ implementation of a multiprogramming operating system simulation. The OS efficiently handles various jobs, manages errors like time limit exceeded and line limit exceeded, and incorporates virtual memory with segmentation. This project serves as a comprehensive simulation of an operating system environment.

Topics

Resources

License

Stars

Watchers

Forks

Languages