PennOS is a small Unix-like operating system built for the University of Pennsylvania CIS 5480 operating systems course. It includes a cooperative threading-based kernel, process scheduling, job control, a shell, and a custom FAT-style file system called PennFAT.
This public repository contains executable builds only. The source code is intentionally omitted to comply with course academic integrity policies.
- Darren Wang
- Ronnie Wang
- Interactive PennOS shell with foreground and background jobs
- Process lifecycle support, including spawning, waiting, exiting, stopping, continuing, and signaling
- Priority-based scheduler with scheduler event logging
- PennFAT file system with file creation, deletion, permissions, copying, moving, and listing
- Standalone PennFAT shell for creating and managing disk images
bin/
pennfat Standalone PennFAT file system shell
pennos PennOS shell and scheduler executable
From the repository root:
./bin/pennfat
./bin/pennos <fatfs> [log_file]pennos expects a formatted PennFAT disk image as its first argument. The optional second argument sets the log output path.
./bin/pennfat
pennfat# mkfs disk.fs 1024 1
pennfat# exit
./bin/pennos disk.fs log/log- These binaries were built for the CIS 5480 project environment.
- If the executables do not run, make sure they have execute permissions:
chmod +x bin/pennfat bin/pennos