summaryrefslogtreecommitdiff
path: root/arch/i386/kernel
AgeCommit message (Collapse)Author
2024-02-16arch: i386: add operations to control PIT timerDanny Holman
Add a set of functions that control the programmable interrupt timer. This will be used as the primary means of preemption on this architecture. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-02-16arch: i386: put framebuffer ops in own fileDanny Holman
Move all operations related to the x86 framebuffer into its own set of files. This makes the TTY layer more architecture agnostic. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-02-16arch: i386: kernel: the serial driver should be more POSIX-yDanny Holman
Make the serial driver behave more like a standard POSIX call. It should have write and read functions that call architecture specific functions. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: alloc: remove erroneous halt instructionDanny Holman
Remove an inline assembly instruction that was placed for debugging purposes. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: paging: add a proper paging APIDanny Holman
Add a proper page control API. These functions allow the kernel to directly map and unmap pages in the logical address space. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: alloc: add a physical memory managerDanny Holman
Add a simple, bitmap-based physical memory management system. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: add multiboot supportDanny Holman
Add support for the multiboot specification. These files will allow the kernel to read the multiboot header information as well as the provided memory map. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: tty.c: remove unneeded local variableDanny Holman
Remove an unused local variable from tty_putchar. Instead, just cast the signed char to unsigned as needed. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: syscall.c: replace function calls with single switchDanny Holman
Replace individual function calls with a single switch-case structure for system calls. The new function, handle_syscall, will construct and call the interrupt without input from the programmer. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: pic.c: finish implementing functions from pic.hDanny Holman
Finish implementing pic_eoi and similar. This allows standardized communication with the x86 PIC chip. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-03-22arch: i386: make serial_writestring inlineDanny Holman
The serial_writestring function is small enough and platform-agnostic, and therefore it should be moved into the main serial header and marked as inline. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-03-22arch: i386: refactor the system call APIDanny Holman
The x86 system call/interrupt handlers should be refactored to be more readable. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-01-21arch: i386: move non-critial files out of bootDanny Holman
Move all files not needed for the bootstrap process out of boot and into the main x86 source directory. Signed-off-by: Danny Holman <dholman@gymli.org>
2021-09-28arch: i386: add support for 8259 PICDanny Holman
Add support for the 8259 programmable interrupt controller. Signed-off-by: Danny Holman <dholman@gymli.xyz>
2021-01-24x86: reorganize the i386 directoryDanny Holman
Add structure to the internals of the x86 directory. Signed-off-by: Danny Holman <dholman@gymli.xyz>