Skip to content

Latest commit

 

History

History
78 lines (51 loc) · 2.61 KB

File metadata and controls

78 lines (51 loc) · 2.61 KB

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 to run the C++ code.

  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.