Commit Graph

56 Commits

Author SHA1 Message Date
2d6fa0d163 Added functions to create and load process contexts 2021-04-17 00:55:05 -05:00
fdcdb9acab Updated virtual memory manager
Added page flags
Added function current_address_space()
Fixed create_address_space()
Renamed some fields in page_table_entry_t to fit naming scheme
2021-04-17 00:52:16 -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
3e73c7c0ac Fixed APIC register mapping 2021-04-15 07:22:58 -05:00
0c5d18ddc0 Added enum for timer interrupt vector 2021-04-15 07:22:26 -05:00
50fcaa2673 Added timer ISR 2021-04-15 07:22:01 -05:00
3229f55164 Added some code in initialize() to test interrupts 2021-04-15 05:49:40 -05:00
c5e38801f3 Fixed the idt_info_t struct and lidt()
Info was not loaded properly, causing crash
2021-04-15 05:49:11 -05:00
923057ee1c Removed 'interrupt' attribute from isr_ap_start()
Added message to division by 0 exception
2021-04-15 04:55:28 -05:00
ac0e5261ba Implemented apic_send_ipi() 2021-04-15 04:51:57 -05:00
d2617e4488 Wrote new ISR for AP entry 2021-04-15 04:51:23 -05:00
8eafcf899b Wrote some simple MSR code 2021-04-15 04:44:41 -05:00
8851243f19 Wrote empty definitions for some APIC functions
Started x86 interrupt setup code
2021-04-14 20:23:13 -05:00
3130b07fd1 Removed generic_isr() definition 2021-04-14 03:39:25 -05:00
507b0fa53e Renamed ISR functions to fit convention 2021-04-14 03:25:55 -05:00
eef1741e16 Added enum listing x86 exception codes 2021-04-14 03:25:21 -05:00
29544b0eb8 Moved interrupt code to separate file.
Added new source file to Makefile.am
2021-04-14 02:46:04 -05:00
4a8ca81a10 Started header for APIC structures 2021-04-14 02:25:57 -05:00
9f0867393f Some cleanup in quark_x86.c 2021-04-14 00:52:56 -05:00
4c2ded8676 Fixed missing includes for multiboot2 files 2021-04-14 00:52:12 -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
302ed3b816 Fixed issues with tabs and newlines in putchar() 2021-04-13 00:21:08 -05:00
cb7df05625 Added line to print character to screen after initializing 2021-04-12 15:52:32 -05:00
8d784364f8 Fixed value of pointer to video memory 2021-04-12 15:52:03 -05:00
f2c19bd4c4 Turned module_limit into a macro 2021-04-12 15:28:37 -05:00
20b718c935 Implemented bare-bones putchar() and puts() 2021-04-12 15:28:03 -05:00
c94a4a692b Updated stdio.h include in quark_x86.c 2021-04-12 02:22:06 -05:00
e2562c9a4e Fixed invlpg instruction in create_address_space() 2021-04-12 02:21:29 -05:00
5006addfb5 Fixed formatting in mmgr.c 2021-04-12 01:52:33 -05:00
dc4d3c0165 Added isr type enum to quark_x86.c 2021-04-12 01:44:17 -05:00
e84a2fadd3 Added stubs for stdio.h functions
putchar() and puts() are platform-dependent
2021-04-12 01:42:53 -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
2d1d6574af Removed old C++ screen printing code 2021-04-12 01:02:53 -05:00
4a0f8e4f78 Implemented multiboot2 in initialize.c
Removed multiboot2 C++ code
2021-04-12 00:58:46 -05:00
259aa3fabc Rewrote x86 initialize program in C 2021-04-11 17:20:57 -05:00
557f3194ed Reduced number of statically allocated page tables 2021-04-10 21:15:32 -05:00
1f4fb5dd0b Removed old unused source file 2021-04-10 21:13:58 -05:00
68166e58ca Implemented C x86 paging, removed C++ code 2021-04-10 20:43:01 -05:00
f4395ab6b5 More unfinished work on kernel API 2020-12-18 14:12:00 -06:00
Nathan Giddings
69c3c8a847 More work on Kernel class, syscalls 2020-12-11 09:19:29 -06:00
b3b4154979 Added function to map single page to specific frame 2020-12-09 06:24:27 -06:00
d2eecf95e5 Re-wrote boot code, moved to x86 folder 2020-12-09 05:08:55 -06:00
c1ec6a962b Wrote new Multiboot2 table reader 2020-12-09 05:06:16 -06:00
d3eab67473 Wrote mmap overload with physical address argument 2020-11-19 10:05:27 -06:00
b8d694e182 Moved x86 InterruptDescriptor methods into class definition 2020-08-02 15:12:01 -05:00
b924e632cf Fixed x86 lidt function, added addSyscall() method 2020-08-02 15:07:23 -05:00