Weekly Meeting Progress Reports
Week 1 -
Project selection and basic planing.
Week 2 -
More concrete planning, project requirements defined, individual experimentation and research done.
Week 3 -
Shell -
Basic shell operations and structure
File System -
Read from FAT32 file system
Read bootsector, file sector, and root dir
Kernel -
Memory Allocator written in experiments folder
Week 4 -
Shell -
Piping and Echo command started
Fork, Exec, and File System commands started
File System -
Rewrite for long file names and subdirectories
Kernel -
Booting and Interrupt functions
Memory Allocator integration into kernel started
Demo 1
First project demo
Week 5 -
Shell -
Program rewrite for clarity and to follow call conventions
File System -
Finish File System required functionality
Kernel -
Interrupt and ARMV8 Paging Functions
Memory Allocator integration into kernel finished
Week 6 -
Shell -
CD and File System commands finished
Continued Rewrite
Finishing commands
File System -
File System required functionality finished
Begin environment setup for kernel integration
Kernel -
Assembly Functions for loading context
Memory Allocator debugging and testing
Userspace -
Began research and environment setup
OS Library -
String and Vector classes written
Week 7 -
Shell -
Rewrite Complete
Finishing commands
Command execution with variable path functionality started
File System -
Continue File System and Kernel integration
Kernel -
MMap and MUnmap functions
System calls handler
Process class written
Memory Allocator debugging and testing
Queue based round robin scheduler started
Userspace -
Basic ELF Program to test jumping into userspace
OS Library -
Week 8 -
Shell -
Finishing commands
Command execution with variable path functionality
File System -
Continue File System and Kernel integration
Kernel -
MMap and MUnmap functions
System calls handler
Memory Allocator debugging and testing
Queue based round robin scheduler
Userspace -
Basic ELF Program to test jumping into userspace
OS Library -
Linked List, Hashmap, and Binary Search Tree classes written
Week 9 - Spring Break
Spring break - no meetings/work
Week 10 -
Shell -
Malloc for userspace started
File System -
Continue File System and Kernel integration
Kernel -
Process Class and Scheduler started
Memory Allocator complete, including realloc
Userspace -
Sprintf started
Save/Load _arg on start
OS Library -
String class written
Demo 2
Second project demo
Week 11 -
Shell -
Continue malloc for userspace
File System -
Continue File System and Kernel integration
Kernel -
Pass program args on process start
ramfs()
Continue work on scheduler
Userspace -
Sprintf completed
OS Library -
Math.h written
Week 12 -
Shell -
Inline Documentation
Continue malloc for userspace
File System -
File System and Kernel integration complete
Kernel -
Exec written
SysCall return values implemented
Clone, yield, and terminate signals implemented
File SysCalls work started
Scheduler complete
Userspace -
Test print functions
Type conversion methods started
Misc -
Mount and Unmount scripts for loop-back device and disk image management started
General Documentation
Week 13 -
Shell -
Wc, cp, and search commands written
Malloc for userspace completed
Linker Bug fixed
Kernel -
Exec completed
UART updated to scan for user input
File SysCalls work continued
Scheduler remove method added
Userspace -
Scanner methods implemented
Cross Compiling shell programs started
Type conversion methods completed
Misc -
Mount and Unmount scripts for loop-back device and disk image management continued
General Documentation
Week 14 -
Shell -
Small changes before demo
Piping bugfixes
Kernel -
UART updated to scan for user input completed
File SysCalls work completed
Small bugfixes for demo
Userspace -
Fopen and fclose written
Cross Compiling shell programs completed
Passing file pointers to fgets fixed
Misc -
Mount and Unmount scripts for loop-back device and disk image management completed
General Documentation
Final Presentation
Final project demo