This repository contains 3 assignments completed during the ECSE 427 course:
- Shell: A shell program that contains basic shell commands, such as
ls,cd,echo,pwd,fg,jobs,exit. It also handles output redirection and command piping. - Thread-Scheduler: A first-come first-served thread scheduler with two executors, one for compute tasks and one for IO tasks. These are both kernel-level threads, and they run the tasks on user-level threads.
- File-System: A simple file system that includes several file actions, such as creating, opening, reading from, writing to, seeking, and deleting a file. The file system is implemented using a super block, i-node table, data blocks, and free bitmap on disk, as well as directory table and i-node cache in memory.