I. File structure ----------------- A. Root directory ----------------- File structure -------------- iso - GRUB directory that is used for emulation kmain.c - kernel source code loader.s - entry point in the OS that passes execution to kernel modules/ - list of modules, each module is kept in a different directory config/ - folder for config files scripts/ - useful scripts and templates Documentation.txt - file that describes important aspects about the structure, implementation, functionality, etc README.md - brief explanation of the project Makefile - makefile to build the whole project Makefile rules -------------- all - recursively build all modules and combine them to get the kernel run - run the OS in bochs emulator clean - clean unimportant files (objects, executables, etc) B. Module directories --------------------- File structure -------------- include/ - interfaces for modules module_dir/ - implementation of module. Each module must have a short description of what it does and a Makefile that will describe what libraries it uses and other important configuration