Commit Graph

24 Commits

Author SHA1 Message Date
6af84b247f Page allocation uses new external library, libmalloc 2023-01-09 01:56:09 -06:00
a52f06f81e Massive backlog of changes 2022-06-15 15:59:31 -05:00
7caf49065d page stack constructor takes stack base as argument
initialize() calls new constructors and fills in syscall table
2021-04-19 06:58:02 -05:00
5efc389935 Finished basic task switching mechansim
PCB is local to a process's address space.
Context switches are written in assembly.
Moved x86 headers to include/x86
2021-04-19 03:40:33 -05:00
40da57e233 APIC enabled after running kernel state constructors 2021-04-18 02:10:56 -05:00
b615a8d286 More process in initialize()
Function now constructs kernel state and enters a process
2021-04-17 06:27:55 -05:00
7c0c5cd8ce Fixed calculation of kernel binary size in initialize() 2021-04-17 04:57:12 -05:00
961139df9e Improved kernel memory usage
Moved base linear address to 0xFF800000
Kernel only reserves the page frames it actually needs
Memory for multiboot2 headers is freed
Video memory and APIC registers are dynamically mapped into linear addresses
2021-04-17 03:45:45 -05:00
b582c39ff8 Started work on process management 2021-04-17 01:00:28 -05:00
6138766c49 Added sequence to remap PIC
Wrote GDT code in C
Added routines to initialize GDT and IDT
2021-04-16 01:45:40 -05:00
8e6589b472 Added some test code to setup a timer 2021-04-15 07:23:19 -05:00
3229f55164 Added some code in initialize() to test interrupts 2021-04-15 05:49:40 -05:00
8851243f19 Wrote empty definitions for some APIC functions
Started x86 interrupt setup code
2021-04-14 20:23:13 -05:00
29544b0eb8 Moved interrupt code to separate file.
Added new source file to Makefile.am
2021-04-14 02:46:04 -05:00
9f0867393f Some cleanup in quark_x86.c 2021-04-14 00:52:56 -05:00
4e6f487a0a Moved ISRs and multiboot2 code to separate files 2021-04-14 00:11:44 -05:00
dd188132b9 Moved x86 ISR stubs to quark_x86.c 2021-04-13 00:26:59 -05:00
e6a417c822 Changed formatting flag used to print memory map 2021-04-13 00:21:36 -05:00
cb7df05625 Added line to print character to screen after initializing 2021-04-12 15:52:32 -05:00
f2c19bd4c4 Turned module_limit into a macro 2021-04-12 15:28:37 -05:00
c94a4a692b Updated stdio.h include in quark_x86.c 2021-04-12 02:22:06 -05:00
dc4d3c0165 Added isr type enum to quark_x86.c 2021-04-12 01:44:17 -05:00
e235e9bad2 Moved memory type enum to memorymap.h
Deleted memorytype.h
2021-04-12 01:21:18 -05:00
781a115128 Renamed initialize.c to quark_x86.x 2021-04-12 01:04:32 -05:00