summaryrefslogtreecommitdiff
path: root/arch/i386/kernel (follow)
Commit message (Collapse)AuthorAgeFilesLines
* arch: i386: syscall.c: add functions that dump dataDanny Holman2024-02-161-1/+7
| | | | | | | Add functions to the syscall handlers that dump registers and stack in case of catastrophic failure. Signed-off-by: Danny Holman <dholman@gymli.org>
* arch: i386: add operations to control PIT timerDanny Holman2024-02-161-0/+29
| | | | | | | | 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>
* arch: i386: put framebuffer ops in own fileDanny Holman2024-02-162-88/+105
| | | | | | | 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>
* arch: i386: kernel: the serial driver should be more POSIX-yDanny Holman2024-02-161-13/+13
| | | | | | | 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>
* arch: i386: alloc: remove erroneous halt instructionDanny Holman2023-11-261-1/+0
| | | | | | | Remove an inline assembly instruction that was placed for debugging purposes. Signed-off-by: Danny Holman <dholman@gymli.org>
* arch: i386: paging: add a proper paging APIDanny Holman2023-11-261-0/+88
| | | | | | | 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>
* arch: i386: alloc: add a physical memory managerDanny Holman2023-11-261-0/+43
| | | | | | Add a simple, bitmap-based physical memory management system. Signed-off-by: Danny Holman <dholman@gymli.org>
* arch: i386: add multiboot supportDanny Holman2023-11-261-0/+23
| | | | | | | | 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>
* arch: i386: tty.c: remove unneeded local variableDanny Holman2023-11-261-3/+4
| | | | | | | 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>
* arch: i386: syscall.c: replace function calls with single switchDanny Holman2023-11-261-21/+9
| | | | | | | | 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>
* arch: i386: pic.c: finish implementing functions from pic.hDanny Holman2023-11-261-1/+3
| | | | | | | Finish implementing pic_eoi and similar. This allows standardized communication with the x86 PIC chip. Signed-off-by: Danny Holman <dholman@gymli.org>
* arch: i386: make serial_writestring inlineDanny Holman2022-03-221-5/+0
| | | | | | | | 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>
* arch: i386: refactor the system call APIDanny Holman2022-03-222-6/+1
| | | | | | | The x86 system call/interrupt handlers should be refactored to be more readable. Signed-off-by: Danny Holman <dholman@gymli.org>
* arch: i386: move non-critial files out of bootDanny Holman2022-01-213-0/+197
| | | | | | | 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>
* arch: i386: add support for 8259 PICDanny Holman2021-09-282-17/+1
| | | | | | Add support for the 8259 programmable interrupt controller. Signed-off-by: Danny Holman <dholman@gymli.xyz>
* x86: reorganize the i386 directoryDanny Holman2021-01-242-0/+63
Add structure to the internals of the x86 directory. Signed-off-by: Danny Holman <dholman@gymli.xyz>