..
Boot
Enable A20 line at boot.
2018-10-27 14:09:33 +02:00
.bochsrc
Add gettimeofday() syscall and LibC wrappers gettimeofday() and time().
2018-10-25 17:36:18 +02:00
.gitignore
Stop committing changes to _fs_contents and generate it in the sync script.
2018-10-28 01:21:15 +02:00
_fs_contents.stock
Stop committing changes to _fs_contents and generate it in the sync script.
2018-10-28 01:21:15 +02:00
_hello.cpp
ELFLoader works inside the kernel!
2018-10-18 15:46:08 +02:00
_start.cpp
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
_test.cpp
Tweak _test.o to use the putch() syscall.
2018-10-22 11:53:59 +02:00
Assertions.h
Add a simple IDEDiskDevice class that implements DiskDevice from VFS.
2018-10-16 14:17:43 +02:00
CMOS.cpp
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
CMOS.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
Console.cpp
Fix bug where Console::the() was initialized too late.
2018-10-30 23:02:06 +01:00
Console.h
Add a kmalloc_eternal() for things that will never be destroyed.
2018-10-31 23:19:15 +01:00
Disk.cpp
Process now maps regions immediately when they are allocated.
2018-11-01 13:15:46 +01:00
Disk.h
Remove old DatBuffer class.
2018-10-25 10:50:30 +02:00
errno.h
Add basic symlink support.
2018-10-28 14:11:51 +01:00
ext2fs.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
i386.cpp
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
i386.h
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
i8253.cpp
Process now maps regions immediately when they are allocated.
2018-11-01 13:15:46 +01:00
i8253.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
IDEDiskDevice.cpp
Snazz up the kprintf() output a bit by giving it its own color.
2018-10-31 20:14:23 +01:00
IDEDiskDevice.h
Add a simple IDEDiskDevice class that implements DiskDevice from VFS.
2018-10-16 14:17:43 +02:00
init.cpp
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
InlineLinkedList.h
Generate a basic /proc/summary file with some info about all tasks.
2018-10-23 12:44:46 +02:00
IO.h
Make IO helpers inline and use immediate-encoded ports when possible.
2018-11-02 10:14:26 +01:00
IRQHandler.cpp
Add IRQHandler class that can be subclasses to handle an IRQ.
2018-10-22 12:58:29 +02:00
IRQHandler.h
Add IRQHandler class that can be subclasses to handle an IRQ.
2018-10-22 12:58:29 +02:00
kassert.h
Move assertion failures out-of-line to reduce binary bloat.
2018-11-04 13:12:58 +01:00
Keyboard.cpp
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00
Keyboard.h
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00
kmalloc.cpp
Fix dumb-but-hard-to-find bug in paging.
2018-11-03 00:35:57 +01:00
kmalloc.h
Give each task its own page directory.
2018-11-01 09:01:51 +01:00
kprintf.cpp
Fix broken SpinLock.
2018-10-29 22:04:26 +01:00
kprintf.h
Fix broken SpinLock.
2018-10-29 22:04:26 +01:00
kstdio.h
Move kprintf to its own file. It has nothing to do with VGA anymore.
2018-10-22 13:20:35 +02:00
ktime.h
Fix some minor build warnings.
2018-10-17 16:48:43 +02:00
linker.ld
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
Makefile
Merge ExecSpace into ELFLoader.
2018-11-04 13:52:53 +01:00
MemoryManager.cpp
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
MemoryManager.h
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
mkmap.sh
Add a very hackish /proc/PID/stack.
2018-10-26 22:33:15 +02:00
PIC.cpp
A lot of hacking:
2018-10-22 11:15:16 +02:00
PIC.h
Add a PIC::getISR() helper.
2018-10-17 16:54:49 +02:00
Process.cpp
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
Process.h
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
ProcFileSystem.cpp
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
ProcFileSystem.h
Process now maps regions immediately when they are allocated.
2018-11-01 13:15:46 +01:00
Queue.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
RefCounted.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
RefPtr.h
Import the "gerbert" kernel I worked on earlier this year.
2018-10-16 11:02:00 +02:00
RTC.cpp
Add assertion that RTC year is >= 2018.
2018-10-31 00:27:28 +01:00
RTC.h
Add gettimeofday() syscall and LibC wrappers gettimeofday() and time().
2018-10-25 17:36:18 +02:00
run
Allow running in QEMU with "./run q"
2018-10-17 16:58:35 +02:00
StdLib.cpp
Fix busted display of tty names in /proc/summary.
2018-10-31 22:43:49 +01:00
StdLib.h
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
sync-local.sh
Enough compatibility work to make figlet build and run!
2018-10-31 17:52:59 +01:00
sync.sh
Replace zones with individually tracked physical pages.
2018-11-05 10:23:00 +01:00
Syscall.cpp
Share code between spawn() and exec() implementations.
2018-11-03 10:55:02 +01:00
Syscall.h
Implemented sys$execve().
2018-11-03 01:51:42 +01:00
system.h
Add a kmalloc_eternal() for things that will never be destroyed.
2018-10-31 23:19:15 +01:00
TSS.h
Share code between spawn() and exec() implementations.
2018-11-03 10:55:02 +01:00
TTY.cpp
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00
TTY.h
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00
types.h
Implement COW pages! :^)
2018-11-05 13:48:07 +01:00
VGA.cpp
Process now maps regions immediately when they are allocated.
2018-11-01 13:15:46 +01:00
VGA.h
Virtual consoles kinda work!
2018-10-30 15:33:37 +01:00
VirtualConsole.cpp
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00
VirtualConsole.h
Basic ^C interrupt implementation.
2018-11-02 14:06:48 +01:00