Skip to content

CS330 · Course Project

Welcome to the official documentation site for our
CS330: Introduction to Operating Systems course project.

This site organizes all project work across two phases: Linux process-based benchmarking (Phase I) and Java multithreaded optimization (Phase II).


Project Focus

  • Process Management


    Understanding Linux process creation, lifecycle management, and parent–child synchronization.

  • Parallel Execution


    Implementing and evaluating process-based parallelism using fork() and wait().

  • Performance Evaluation


    Conducting controlled experiments to analyze runtime behavior across configurations.

  • Structured Documentation


    Presenting setup, methodology, results, and analysis in a clear academic format.


Project Phases

  • Phase I — Setup & Experimentation


    Virtual machine configuration, Linux environment setup, program compilation, and controlled performance experiments.

    Explore Phase I

  • Phase II — Extension & Analysis


    Multithreaded performance optimization based on the official Phase 2 requirements (1, 2, 4, 6, 8 threads).

    Explore Phase II


Deliverables

  • Phase I Report


    Full setup, experiment design, timing results, and analysis from the process-based implementation.

    Open Phase I Report

  • Phase II Work Package


    Requirements, implementation plan, measurement template, and analysis framework for multithreading.

    Open Phase II Overview

  • Project Repository


    Source code, documentation, and reproducible project structure.

    View Repository Structure


Team

  • Project Team


    Shoug Alomran
    Layan Bin Bindayal
    Aryam Yahya Almansour
    Dana Altuwaijri
    Rana Alfaris

    View Team Details


Quick Navigation