├── .gitignore ├── .others ├── creating_an_helloworld_OS.md ├── creating_an_helloworld_OS │ ├── a.img │ ├── bochsout.txt │ ├── bochsrc │ ├── boot.asm │ └── boot.bin └── gif │ └── os_demo_part_1.gif ├── 80m.img.bak.gz ├── LICENSE ├── Makefile ├── README.md ├── a.img ├── bochsrc ├── boot ├── boot.asm ├── hdboot.asm ├── hdldr.asm ├── include │ ├── fat12hdr.inc │ ├── load.inc │ └── pm.inc └── loader.asm ├── command ├── Makefile ├── echo.c ├── pwd.c └── start.asm ├── fs ├── disklog.c ├── link.c ├── main.c ├── misc.c ├── open.c └── read_write.c ├── grubinst ├── include ├── stdio.h ├── string.h ├── sys │ ├── config.h │ ├── console.h │ ├── const.h │ ├── fs.h │ ├── global.h │ ├── hd.h │ ├── keyboard.h │ ├── keymap.h │ ├── proc.h │ ├── protect.h │ ├── proto.h │ ├── sconst.inc │ └── tty.h └── type.h ├── kernel ├── clock.c ├── console.c ├── global.c ├── hd.c ├── i8259.c ├── kernel.asm ├── keyboard.c ├── klib.c ├── kliba.asm ├── main.c ├── proc.c ├── protect.c ├── start.c ├── systask.c └── tty.c ├── lib ├── close.c ├── exec.c ├── exit.c ├── fork.c ├── getpid.c ├── lseek.c ├── misc.c ├── open.c ├── printf.c ├── read.c ├── stat.c ├── string.asm ├── syscall.asm ├── syslog.c ├── unlink.c ├── vsprintf.c ├── wait.c └── write.c ├── mm ├── exec.c ├── forkexit.c └── main.c └── scripts ├── genlog ├── invalidate.hd └── splitgraphs /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/* 2 | .others/images/ 3 | -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS/a.img: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/creating_an_helloworld_OS/a.img -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS/bochsout.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/creating_an_helloworld_OS/bochsout.txt -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS/bochsrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/creating_an_helloworld_OS/bochsrc -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS/boot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/creating_an_helloworld_OS/boot.asm -------------------------------------------------------------------------------- /.others/creating_an_helloworld_OS/boot.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/creating_an_helloworld_OS/boot.bin -------------------------------------------------------------------------------- /.others/gif/os_demo_part_1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/.others/gif/os_demo_part_1.gif -------------------------------------------------------------------------------- /80m.img.bak.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/80m.img.bak.gz -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/README.md -------------------------------------------------------------------------------- /a.img: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/a.img -------------------------------------------------------------------------------- /bochsrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/bochsrc -------------------------------------------------------------------------------- /boot/boot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/boot.asm -------------------------------------------------------------------------------- /boot/hdboot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/hdboot.asm -------------------------------------------------------------------------------- /boot/hdldr.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/hdldr.asm -------------------------------------------------------------------------------- /boot/include/fat12hdr.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/include/fat12hdr.inc -------------------------------------------------------------------------------- /boot/include/load.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/include/load.inc -------------------------------------------------------------------------------- /boot/include/pm.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/include/pm.inc -------------------------------------------------------------------------------- /boot/loader.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/boot/loader.asm -------------------------------------------------------------------------------- /command/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/command/Makefile -------------------------------------------------------------------------------- /command/echo.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/command/echo.c -------------------------------------------------------------------------------- /command/pwd.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/command/pwd.c -------------------------------------------------------------------------------- /command/start.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/command/start.asm -------------------------------------------------------------------------------- /fs/disklog.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/disklog.c -------------------------------------------------------------------------------- /fs/link.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/link.c -------------------------------------------------------------------------------- /fs/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/main.c -------------------------------------------------------------------------------- /fs/misc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/misc.c -------------------------------------------------------------------------------- /fs/open.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/open.c -------------------------------------------------------------------------------- /fs/read_write.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/fs/read_write.c -------------------------------------------------------------------------------- /grubinst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/grubinst -------------------------------------------------------------------------------- /include/stdio.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/stdio.h -------------------------------------------------------------------------------- /include/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/string.h -------------------------------------------------------------------------------- /include/sys/config.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/config.h -------------------------------------------------------------------------------- /include/sys/console.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/console.h -------------------------------------------------------------------------------- /include/sys/const.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/const.h -------------------------------------------------------------------------------- /include/sys/fs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/fs.h -------------------------------------------------------------------------------- /include/sys/global.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/global.h -------------------------------------------------------------------------------- /include/sys/hd.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/hd.h -------------------------------------------------------------------------------- /include/sys/keyboard.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/keyboard.h -------------------------------------------------------------------------------- /include/sys/keymap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/keymap.h -------------------------------------------------------------------------------- /include/sys/proc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/proc.h -------------------------------------------------------------------------------- /include/sys/protect.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/protect.h -------------------------------------------------------------------------------- /include/sys/proto.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/proto.h -------------------------------------------------------------------------------- /include/sys/sconst.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/sconst.inc -------------------------------------------------------------------------------- /include/sys/tty.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/sys/tty.h -------------------------------------------------------------------------------- /include/type.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/include/type.h -------------------------------------------------------------------------------- /kernel/clock.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/clock.c -------------------------------------------------------------------------------- /kernel/console.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/console.c -------------------------------------------------------------------------------- /kernel/global.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/global.c -------------------------------------------------------------------------------- /kernel/hd.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/hd.c -------------------------------------------------------------------------------- /kernel/i8259.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/i8259.c -------------------------------------------------------------------------------- /kernel/kernel.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/kernel.asm -------------------------------------------------------------------------------- /kernel/keyboard.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/keyboard.c -------------------------------------------------------------------------------- /kernel/klib.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/klib.c -------------------------------------------------------------------------------- /kernel/kliba.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/kliba.asm -------------------------------------------------------------------------------- /kernel/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/main.c -------------------------------------------------------------------------------- /kernel/proc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/proc.c -------------------------------------------------------------------------------- /kernel/protect.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/protect.c -------------------------------------------------------------------------------- /kernel/start.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/start.c -------------------------------------------------------------------------------- /kernel/systask.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/systask.c -------------------------------------------------------------------------------- /kernel/tty.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/kernel/tty.c -------------------------------------------------------------------------------- /lib/close.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/close.c -------------------------------------------------------------------------------- /lib/exec.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/exec.c -------------------------------------------------------------------------------- /lib/exit.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/exit.c -------------------------------------------------------------------------------- /lib/fork.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/fork.c -------------------------------------------------------------------------------- /lib/getpid.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/getpid.c -------------------------------------------------------------------------------- /lib/lseek.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/lseek.c -------------------------------------------------------------------------------- /lib/misc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/misc.c -------------------------------------------------------------------------------- /lib/open.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/open.c -------------------------------------------------------------------------------- /lib/printf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/printf.c -------------------------------------------------------------------------------- /lib/read.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/read.c -------------------------------------------------------------------------------- /lib/stat.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/stat.c -------------------------------------------------------------------------------- /lib/string.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/string.asm -------------------------------------------------------------------------------- /lib/syscall.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/syscall.asm -------------------------------------------------------------------------------- /lib/syslog.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/syslog.c -------------------------------------------------------------------------------- /lib/unlink.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/unlink.c -------------------------------------------------------------------------------- /lib/vsprintf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/vsprintf.c -------------------------------------------------------------------------------- /lib/wait.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/wait.c -------------------------------------------------------------------------------- /lib/write.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/lib/write.c -------------------------------------------------------------------------------- /mm/exec.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/mm/exec.c -------------------------------------------------------------------------------- /mm/forkexit.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/mm/forkexit.c -------------------------------------------------------------------------------- /mm/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/mm/main.c -------------------------------------------------------------------------------- /scripts/genlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/scripts/genlog -------------------------------------------------------------------------------- /scripts/invalidate.hd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/scripts/invalidate.hd -------------------------------------------------------------------------------- /scripts/splitgraphs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneCodeMonkey/OperatingSystem-Starting-from-scratch/HEAD/scripts/splitgraphs --------------------------------------------------------------------------------