Skip to content

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.