Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-07-15 | i386/isr: don't use pushal; push registers manually | dzwdz | |
2022-06-30 | kernel/linker: rename .text.early to .shared | dzwdz | |
It's not really just a text section, as it's writeable too. Makes gcc shut up about invalid section attributes. | |||
2022-05-29 | kernel: fix overlapping interrupt / regular stacks | dzwdz | |
2022-05-21 | kernel/i386: only map what's absolutely necessary in the user | dzwdz | |
2022-04-14 | kernel: port init's `printf` implementation | dzwdz | |
2022-04-11 | kernel: implement `cpu_pause()` in assembly, remove `irq_interrupt_flag()` | dzwdz | |
2022-04-10 | kernel/i386: rewrite the serial driver to wait for IRQ | dzwdz | |
proper multiprocess support! | |||
2022-03-30 | kernel: remove the keyboard driver, add a `/ps2` device | dzwdz | |
2022-03-27 | style: remove the semicolons after cases in ISR | dzwdz | |
2022-03-27 | kernel/tty: poll only on IRQs, don't burn cycles | dzwdz | |
2022-03-26 | kernel: IRQs; PS/2 keyboard support | dzwdz | |
2021-10-15 | slightly clean up all the assembly code | dzwdz | |
2021-10-05 | isr: simplify the exception handler | dzwdz | |
2021-10-05 | kill the process that caused an exception instead of panicking | dzwdz | |
2021-10-02 | rename kernel/arch/log.h to io.h | dzwdz | |
it's not related to logging but to general io, the old name didn't make sense | |||
2021-09-21 | start using sparse's `-Wdecl` | dzwdz | |
2021-09-20 | create a few specialized panic()s | dzwdz | |
thanks to this i can tell which ones are placeholders, and which ones should stay | |||
2021-09-12 | log cr2 on page faults | dzwdz | |
2021-08-24 | replace () with (void) in function definitions | dzwdz | |
`()` means that any amt of arguments will be accepted, which isn't what i want | |||
2021-08-22 | kernel: implement assert | dzwdz | |
2021-08-09 | rename `log_` to `tty_`, `tty_` to `vga_` | dzwdz | |
2021-07-22 | disable paging when handling interrupts | dzwdz | |
The kernel code assumes that paging is always disabled. I've also added a bit of comments to the assembly / ruined the git blame. | |||
2021-07-21 | simplify the IDT generation | dzwdz | |
2021-07-21 | create ISR stubs, which call a single main isr handler | dzwdz | |
quick explaination of how this even works: The `call` in each stub pushes its own address onto the stack before calling stage2. We can substract the address of the 0th ISR to get the offset, which we then divide by the size of each stub to get the index. | |||
2021-07-19 | add a page fault handler | dzwdz | |
2021-07-18 | fix most current compiler warnings | dzwdz | |
stack_top got changed into a char, because `extern void` isn't even valid. others are self-explanatory | |||
2021-07-18 | move all kernel sources to src/kernel/ | dzwdz | |