Skip to content

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

Notifications You must be signed in to change notification settings

JoyeBright/OSLab

Repository files navigation

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.