Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Notes, assignments, and projects for the Operating Systems course (CS306). Topics include process management, memory allocation, concurrency, and system calls.

Notifications You must be signed in to change notification settings

abanoub-refaat/CS306-Operating-Systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

51 Commits

Repository files navigation

CS306: Operating Systems – Labs, Exercises, and Projects

Welcome to the repository for CS306: Operating Systems Lab. This repo includes notes, exercises, and project files related to process management, memory allocation, concurrency, and system calls.

πŸ“š Table of Contents

πŸ“˜ Overview

This repository is organized into separate folders and markdown files covering key topics in operating systems. You'll find:

  • Notes and tutorials on Assembly programming
  • Hands-on examples for Multithreading in C
  • Practical guidance on mutexes, semaphores, and more

🧠 Topics Covered

  • 🏁 Introduction to Assembly language
  • πŸ› οΈ Assembly exercises and tutorials
  • πŸ”€ Multithreading in C
  • πŸ” Concurrency and synchronization (mutexes, semaphores)

πŸ› οΈ How to Use

  1. Clone the repository

    git clone https://github.com/abanoub-refaat/CS306-Operating-Systems.git
  2. Navigate to the relevant directory

    cd CS306-Operating-Systems/labs
  3. Compile and run a C file

    gcc example.c -o example -l pthread
    ./example

🦾 Assembly Programming Resources

Explore these markdown guides to get started with assembly:

Topics you’ll learn:

  • βœ… Installing emu8086
  • βœ… Register operations
  • βœ… Arithmetic instructions (ADD, SUB, MUL, DIV)
  • βœ… Defining variables and arrays
  • βœ… Conditional logic
  • βœ… Using external libraries

πŸ–οΈ Multithreading in C

Helpful guides and examples for working with threads in C:

About

Notes, assignments, and projects for the Operating Systems course (CS306). Topics include process management, memory allocation, concurrency, and system calls.

Topics

Resources

Stars

Watchers

Forks

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /