├── .gitignore ├── .idea ├── Kernel.iml ├── misc.xml ├── modules.xml └── vcs.xml ├── CMakeLists.txt ├── CodingStyle.txt ├── README.md ├── TODO.txt ├── cmake ├── make_floppy.cmake ├── make_iso.cmake └── profile_detection.cmake ├── kern ├── cmos │ ├── cmos.c │ └── cmos.h ├── disk │ ├── PATA.c │ └── PATA.h ├── i386 │ ├── flags.cmake │ └── pc │ │ ├── cpuid.c │ │ ├── cpuid.h │ │ ├── flags.cmake │ │ ├── gdt.S │ │ ├── gdt.c │ │ ├── idt.c │ │ ├── interrupts.S │ │ ├── interrupts.c │ │ ├── irq.c │ │ ├── isr.c │ │ ├── isr.h │ │ ├── layout.ld │ │ ├── main.c │ │ ├── memdetect.c │ │ ├── multiboot.h │ │ ├── paging.S │ │ ├── realmode.S │ │ ├── start.S │ │ ├── syscall.c │ │ ├── syscall.h │ │ ├── timer.c │ │ └── timer.h ├── input │ ├── keyboard.c │ └── keyboard.h ├── lib │ ├── common.c │ ├── common.h │ ├── linux.c │ ├── linux.h │ ├── oarray.c │ ├── oarray.h │ ├── panic.c │ └── panic.h ├── mm │ ├── frame.c │ ├── frame.h │ ├── kheap.c │ ├── kheap.h │ ├── kmemdetect.c │ ├── kmemory.c │ ├── kmemory.h │ ├── paging.c │ └── paging.h ├── task │ ├── task.c │ └── task.h ├── tty │ ├── terminal.c │ └── terminal.h └── version.h ├── libc ├── atoi.c ├── ctype.h ├── itoa.c ├── limits.h ├── malloc.c ├── malloc.h ├── math.c ├── math.h ├── private │ └── platform.h ├── sprintf_internal.c ├── stdarg.h ├── stdbool.h ├── stddef.h ├── stdint.h ├── stdio.c ├── stdio.h ├── stdlib.h ├── strftime.c ├── strftime.h ├── string.c ├── string.h ├── time.c └── time.h ├── run-cc.pl └── tools ├── mkcrosscompiler_clang.sh └── mkcrosscompiler_gcc.sh /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/Kernel.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/.idea/Kernel.iml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /CodingStyle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/CodingStyle.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/README.md -------------------------------------------------------------------------------- /TODO.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/TODO.txt -------------------------------------------------------------------------------- /cmake/make_floppy.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/cmake/make_floppy.cmake -------------------------------------------------------------------------------- /cmake/make_iso.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/cmake/make_iso.cmake -------------------------------------------------------------------------------- /cmake/profile_detection.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/cmake/profile_detection.cmake -------------------------------------------------------------------------------- /kern/cmos/cmos.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/cmos/cmos.c -------------------------------------------------------------------------------- /kern/cmos/cmos.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/cmos/cmos.h -------------------------------------------------------------------------------- /kern/disk/PATA.c: -------------------------------------------------------------------------------- 1 | // 2 | // Created by justasic on 8/8/15. 3 | // 4 | 5 | #include "PATA.h" 6 | -------------------------------------------------------------------------------- /kern/disk/PATA.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/disk/PATA.h -------------------------------------------------------------------------------- /kern/i386/flags.cmake: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /kern/i386/pc/cpuid.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/cpuid.c -------------------------------------------------------------------------------- /kern/i386/pc/cpuid.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/cpuid.h -------------------------------------------------------------------------------- /kern/i386/pc/flags.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/flags.cmake -------------------------------------------------------------------------------- /kern/i386/pc/gdt.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/gdt.S -------------------------------------------------------------------------------- /kern/i386/pc/gdt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/gdt.c -------------------------------------------------------------------------------- /kern/i386/pc/idt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/idt.c -------------------------------------------------------------------------------- /kern/i386/pc/interrupts.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/interrupts.S -------------------------------------------------------------------------------- /kern/i386/pc/interrupts.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/interrupts.c -------------------------------------------------------------------------------- /kern/i386/pc/irq.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/irq.c -------------------------------------------------------------------------------- /kern/i386/pc/isr.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/isr.c -------------------------------------------------------------------------------- /kern/i386/pc/isr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/isr.h -------------------------------------------------------------------------------- /kern/i386/pc/layout.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/layout.ld -------------------------------------------------------------------------------- /kern/i386/pc/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/main.c -------------------------------------------------------------------------------- /kern/i386/pc/memdetect.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/memdetect.c -------------------------------------------------------------------------------- /kern/i386/pc/multiboot.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/multiboot.h -------------------------------------------------------------------------------- /kern/i386/pc/paging.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/paging.S -------------------------------------------------------------------------------- /kern/i386/pc/realmode.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/realmode.S -------------------------------------------------------------------------------- /kern/i386/pc/start.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/start.S -------------------------------------------------------------------------------- /kern/i386/pc/syscall.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/syscall.c -------------------------------------------------------------------------------- /kern/i386/pc/syscall.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/syscall.h -------------------------------------------------------------------------------- /kern/i386/pc/timer.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/timer.c -------------------------------------------------------------------------------- /kern/i386/pc/timer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/i386/pc/timer.h -------------------------------------------------------------------------------- /kern/input/keyboard.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/input/keyboard.c -------------------------------------------------------------------------------- /kern/input/keyboard.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/input/keyboard.h -------------------------------------------------------------------------------- /kern/lib/common.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/common.c -------------------------------------------------------------------------------- /kern/lib/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/common.h -------------------------------------------------------------------------------- /kern/lib/linux.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/linux.c -------------------------------------------------------------------------------- /kern/lib/linux.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/linux.h -------------------------------------------------------------------------------- /kern/lib/oarray.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/oarray.c -------------------------------------------------------------------------------- /kern/lib/oarray.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/oarray.h -------------------------------------------------------------------------------- /kern/lib/panic.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/panic.c -------------------------------------------------------------------------------- /kern/lib/panic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/lib/panic.h -------------------------------------------------------------------------------- /kern/mm/frame.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/frame.c -------------------------------------------------------------------------------- /kern/mm/frame.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/frame.h -------------------------------------------------------------------------------- /kern/mm/kheap.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/kheap.c -------------------------------------------------------------------------------- /kern/mm/kheap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/kheap.h -------------------------------------------------------------------------------- /kern/mm/kmemdetect.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/kmemdetect.c -------------------------------------------------------------------------------- /kern/mm/kmemory.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/kmemory.c -------------------------------------------------------------------------------- /kern/mm/kmemory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/kmemory.h -------------------------------------------------------------------------------- /kern/mm/paging.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/paging.c -------------------------------------------------------------------------------- /kern/mm/paging.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/mm/paging.h -------------------------------------------------------------------------------- /kern/task/task.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/task/task.c -------------------------------------------------------------------------------- /kern/task/task.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/task/task.h -------------------------------------------------------------------------------- /kern/tty/terminal.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/tty/terminal.c -------------------------------------------------------------------------------- /kern/tty/terminal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/tty/terminal.h -------------------------------------------------------------------------------- /kern/version.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/kern/version.h -------------------------------------------------------------------------------- /libc/atoi.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/atoi.c -------------------------------------------------------------------------------- /libc/ctype.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/ctype.h -------------------------------------------------------------------------------- /libc/itoa.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/itoa.c -------------------------------------------------------------------------------- /libc/limits.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/limits.h -------------------------------------------------------------------------------- /libc/malloc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/malloc.c -------------------------------------------------------------------------------- /libc/malloc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/malloc.h -------------------------------------------------------------------------------- /libc/math.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/math.c -------------------------------------------------------------------------------- /libc/math.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/math.h -------------------------------------------------------------------------------- /libc/private/platform.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/private/platform.h -------------------------------------------------------------------------------- /libc/sprintf_internal.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/sprintf_internal.c -------------------------------------------------------------------------------- /libc/stdarg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdarg.h -------------------------------------------------------------------------------- /libc/stdbool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdbool.h -------------------------------------------------------------------------------- /libc/stddef.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stddef.h -------------------------------------------------------------------------------- /libc/stdint.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdint.h -------------------------------------------------------------------------------- /libc/stdio.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdio.c -------------------------------------------------------------------------------- /libc/stdio.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdio.h -------------------------------------------------------------------------------- /libc/stdlib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/stdlib.h -------------------------------------------------------------------------------- /libc/strftime.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/strftime.c -------------------------------------------------------------------------------- /libc/strftime.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/strftime.h -------------------------------------------------------------------------------- /libc/string.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/string.c -------------------------------------------------------------------------------- /libc/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/string.h -------------------------------------------------------------------------------- /libc/time.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/time.c -------------------------------------------------------------------------------- /libc/time.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/libc/time.h -------------------------------------------------------------------------------- /run-cc.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/run-cc.pl -------------------------------------------------------------------------------- /tools/mkcrosscompiler_clang.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/tools/mkcrosscompiler_clang.sh -------------------------------------------------------------------------------- /tools/mkcrosscompiler_gcc.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Justasic/Kernel/HEAD/tools/mkcrosscompiler_gcc.sh --------------------------------------------------------------------------------