Skip to content
This repository was archived by the owner on Oct 27, 2025. It is now read-only.
/ FOS-Lab Public archive

FOS-OS is an educational operating system built for the Operating Systems course at Ain Shams University. It’s a refactored and extended version of MIT’s JOS (6.828) lab, designed to help students understand core OS concepts like memory management, CPU scheduling, and system calls through hands-on implementation.

Notifications You must be signed in to change notification settings

sharqawycs/FOS-Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FOS – Ain Shams University OS!

FOS is an educational operating system developed for the Operating Systems course at Ain Shams University. It is a refactored version of MIT's JOS (6.828) lab, tailored to enhance students' understanding of OS concepts through hands-on experience.

Key Features

  • Memory Management: Implements dynamic memory allocation using strategies like First Fit, Best Fit, and Next Fit.

  • Paging and Virtual Memory: Supports kernel heap allocation, page fault handling, and page replacement algorithms such as the Clock algorithm.

  • Concurrency: Provides semaphores with operations like CreateSemaphore, SIGNAL, and WAIT, enabling synchronization in multi-threaded environments.

  • User-Level Memory Management: Includes user heap functions such as malloc, free, and shared memory operations.

  • System Calls and Debugging: Offers a set of system calls for process management and debugging, facilitating the development and testing of OS components.

Development Tools

  • FOSv1: Utilizes Bochs as the emulator and Eclipse for development, providing a traditional setup for OS development.

  • FOSv2: Enhances the development environment by integrating QEMU for faster emulation and Visual Studio Code for a more efficient coding experience.

Educational Resources

The course provides comprehensive materials, including lab assignments and project guidelines, to support students in their learning journey. These resources are accessible through the university's official channels.

If you need assistance with setting up the development environment or have specific questions about the OS components, feel free to ask.

About

FOS-OS is an educational operating system built for the Operating Systems course at Ain Shams University. It’s a refactored and extended version of MIT’s JOS (6.828) lab, designed to help students understand core OS concepts like memory management, CPU scheduling, and system calls through hands-on implementation.

Topics

Resources

Stars

Watchers

Forks