Giter Club home page Giter Club logo

oslab's Introduction

oslab

Operating System-based projects explored and implemented chapter-wise. The programs are inspired from end-of-chapter projects in Silberchatz's Operating System Concepts.

List of projects fully implemented

Projects concurrent with chapters from Silberchatz's Operating System Concepts, 9th edition.

Projects indepentdent of chapters from any book

  • Producer-Consumer problem
  • PING-PONG problem

Installation

Prerequisites

  1. These programs are mostly tested on Linux Ubuntu. They might not run on Windows; you will need a Linux OS to run them.
  2. You will need a Terminal to execute commands.
  3. You will require a C-compiler, preferably gcc.

Procedure

Before running any project, you need to clone this repository.

  1. Open a Terminal, and enter the following command.

    git clone https://github.com/rafi007akhtar/oslab.git
    
  2. Once cloned, enter the root directory of the project.

    cd oslab
    
  3. Pick any implemented project you want, and run them.

You will find most projects with their own READMEs, having detailed instructions on how to link, compile and execute them. Most of them even contain demo pictures and animations to demonstrate an example execution.

Testing environment

All programs were created and executed on a Linux Debian virtual OS running atop my Windows 8.1 native OS via VMware Workstation.

The Debian virtual OS I used was the official virtual OS provided as a student resource here: http://www.os-book.com/

Disclaimer

  • Starter codes for some projects were readily available in the virtual OS. I only had to add upon them as per the instructions given in the book.
  • I have not copied the code from elsewhere, nor do I claim the code to be error free or the official solutions. Please do not copy-paste my code as homework solutions.
  • In case of any error, feel free to create an Issue, or email me: [email protected]

oslab's People

Contributors

rafi007akhtar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

oslab's Issues

Add more in-chapter projects from the book.

Currently, this repository houses projects from 3 of the books Chapters, that is, Chapters 2 through 4. Due to lack of time, I have not been able to solve more projects from the book.

I would like projects from subsequent Chapters be added to this repository.

A few things to keep in mind:

  • Each project should have its own folder in title case separated through hyphens, like Sudoku-Solution-Validator.
  • Each project should come with its own README.md file in addition to the program files that solve the project (eg., this). The README should contain the following sections
    • an introduction to the project with its description and the roles each program file plays in the project folder
    • instructions on how to link and execute the project on terminal
    • a sample output in form of an image (see below)
    • a disclaimer, if any
  • Each project should have an image or an animation GIF in its README that demonstrates the working of the said project (refer to the above link for an example).
  • After making the project, its name should be added to the root README file under the Projects concurrent with chapters from Silberchatz's Operating System Concepts, 9th edition. list.

Do NOT:

  • plagiarise your code from other sources; write your own code, and if you're using a snippet from an external source, mention it
  • add any project not in the Silberchatz's book of OS.

Make sure the projects are working as expected and not crashing the OS. Wherever mentioned in the book, use the virtual OS provided by them. Links to those are in the root README.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.