GithubHelp home page GithubHelp logo

joyebright / oslab Goto Github PK

View Code? Open in Web Editor NEW
24.0 6.0 27.0 748 KB

Repository for the lectures taught in the course named "Operating Systems Lab" at the University of Guilan, Department of Computer Engineering.

C 70.56% C# 23.46% Python 5.98%
os operating-systems operating-systems-tutorials guilan-university cpu-scheduling disk-scheduling-algorithms makefile fork thread-creation thread pthread posix windows-thread mutual-exclusion synchronization bakery-algorithm dining-philosophers pipe multiple-threads monitoring

oslab's Introduction

Operating System Lab

  • Codes designed for Operating System Lab offered at University of Guilan:
    • [OSLab972] 2nd semester of 2019/1397
    • [OSLab971] 1st semester of 2018/1396
    • [OSLab962] 2nd semester of 2018-2019/1396

Contents

  • Process Creation

    System calls consist of fork(), exect(), wait()

  • The CPU Scheduling Algorithms

    FCFS, SJF, RR and also other Algorithms will be programmed by students in different iterations.

  • The Disk Scheduling Algorithms

    FCFS, LCFS and also other Algorithms will be programmed by students in different iterations.

  • Project Management Using Make GNU

    Makefile, GNUMakefile

  • Threads

    POSIX Pthreads: Thread Creation and Termination - Sum of 0 to N (via 2 threads and multiple threads)
    Windows Thread(C#): Thread Creation and Termination - Sum of 0 to N (via 2 threads and multiple threads)

  • Exchange of Information:

    Pipe, Shared-Memory

  • Synchronization

    Solving the Producer-Consumer Problem Using Semaphores

  • Virtual Memory Management

    Translates logical to physical addresses for a virtual address space by using Translation Lookaside Buffer (TLB)
    * There is no page fault handling

Supported PLs

Major parts of the project have been coded with C.
Also, some experiments have been coded with C-family PLs.

Instructor

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledge

Drop me an E-mail in order to obtain the slides.

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.