Jeremy Soller
|
ff4d06f678
|
More efficient iteration in graphics functions
|
2016-09-01 15:31:39 -06:00 |
|
Jeremy Soller
|
0ccfd2125a
|
Improve efficiency of kernel console
|
2016-09-01 14:39:45 -06:00 |
|
Jeremy Soller
|
d7d61f82af
|
Draw on VESA for console using ransid
|
2016-09-01 11:51:33 -06:00 |
|
Jeremy Soller
|
53c71d9183
|
Warnings removal
|
2016-09-01 11:14:47 -06:00 |
|
Jeremy Soller
|
543ef3d96f
|
Add serial init and serial interrupts
|
2016-09-01 11:10:56 -06:00 |
|
Jeremy Soller
|
722d738254
|
Fix mouse position, map display on APs
|
2016-09-01 08:12:50 -06:00 |
|
Jeremy Soller
|
1e5d992ab5
|
Show mouse trail
|
2016-09-01 07:05:46 -06:00 |
|
Jeremy Soller
|
3b700191cf
|
Set up fourth mouse packet
|
2016-08-31 22:31:51 -06:00 |
|
Jeremy Soller
|
555ad5fd92
|
Nearly complete PS/2 driver
|
2016-08-31 21:40:34 -06:00 |
|
Jeremy Soller
|
f784e9a06a
|
Fill in all exception and IRQ entries. Handle PIT, keyboard IRQs
|
2016-08-31 17:45:21 -06:00 |
|
Jeremy Soller
|
d3dfff8d51
|
Improvements for context switching
|
2016-08-30 16:23:51 -06:00 |
|
Jeremy Soller
|
6e3f59ba8e
|
Simple, unsafe context switch
|
2016-08-28 18:38:53 -06:00 |
|
Jeremy Soller
|
6715d5c534
|
Arm!
|
2016-08-25 17:03:01 -06:00 |
|
Jeremy Soller
|
234fb64999
|
Add display
|
2016-08-24 20:10:55 -06:00 |
|
Jeremy Soller
|
2be7ccaec2
|
Arch context in kernel context
|
2016-08-24 10:35:42 -06:00 |
|
Jeremy Soller
|
f6e57ff5d1
|
Add arch context, WIP switching
|
2016-08-22 19:56:35 -06:00 |
|
Jeremy Soller
|
4ced24e8d1
|
Setup TSS, using thread local storage
|
2016-08-22 14:53:03 -06:00 |
|
Jeremy Soller
|
3eca1e3451
|
Thread local TSS
|
2016-08-22 14:47:33 -06:00 |
|
Jeremy Soller
|
7a59e08e70
|
Fix thread locals
|
2016-08-20 08:39:03 -06:00 |
|
Jeremy Soller
|
8ddd0ad3f0
|
WIP: Thread control block and TSS in kernel
|
2016-08-19 17:38:37 -06:00 |
|
Jeremy Soller
|
0501b2580d
|
Setup independent page tables, map heap to a single location
|
2016-08-19 14:53:16 -06:00 |
|
Jeremy Soller
|
7aafc165ec
|
Use x86 crate for definition of TSS and GDTR, WIP: loading TSS
|
2016-08-19 13:09:00 -06:00 |
|
Jeremy Soller
|
55a0154eac
|
Switch to goblin as executable parser
|
2016-08-19 07:57:24 -06:00 |
|
Jeremy Soller
|
5588c38178
|
Add syscall handler, still work in progress
Add elf files
|
2016-08-18 19:44:31 -06:00 |
|
Jeremy Soller
|
490dd16776
|
Refactor context list
|
2016-08-18 08:30:45 -06:00 |
|
Jeremy Soller
|
0693540a5b
|
Prepare for higher half - map entire lower 4 GB
|
2016-08-18 07:56:47 -06:00 |
|
Jeremy Soller
|
8ddddcec9f
|
Print out more useful information about AP and BSP, create kmain_ap
|
2016-08-17 19:38:04 -06:00 |
|
Jeremy Soller
|
0d995bfb5c
|
Keep track of AP count, allocate bigger AP stack, stack trace function
|
2016-08-17 19:34:33 -06:00 |
|
Jeremy Soller
|
26c86f8242
|
Set page table of AP to BSP, to allow mapping of heap to be shared
|
2016-08-17 19:06:33 -06:00 |
|
Jeremy Soller
|
48741e3b99
|
Do not map heap on AP, due to it being independent from the BSP heap. We need to adjust the mapping so that kernel mappings are shared accross processors, probably using higher half mapping for the kernel
|
2016-08-17 17:46:56 -06:00 |
|
Jeremy Soller
|
ec1302bbe1
|
Remove debugging
|
2016-08-17 17:41:42 -06:00 |
|
Jeremy Soller
|
b0797a5d8a
|
Allocate a very small 4K stack for the other CPUs, increase count to 4
|
2016-08-17 17:40:18 -06:00 |
|
Jeremy Soller
|
979d80a8c7
|
Fix locking in serial port
|
2016-08-17 17:24:10 -06:00 |
|
Jeremy Soller
|
b756dd59eb
|
Remove warnings
|
2016-08-17 16:54:48 -06:00 |
|
Jeremy Soller
|
78432b3875
|
Move frame allocation to two global functions, locking happens inside them
|
2016-08-17 16:26:43 -06:00 |
|
Jeremy Soller
|
ebf9766ef5
|
Map kernel in AP, WIP
|
2016-08-17 15:47:54 -06:00 |
|
Jeremy Soller
|
27d5996abf
|
Get the APs into rust code, set stack and page table in trampoline
|
2016-08-16 21:25:48 -06:00 |
|
Jeremy Soller
|
a8948fb246
|
Hooks to get the other CPUs into long mode
|
2016-08-16 20:37:38 -06:00 |
|
Jeremy Soller
|
08900d56c8
|
Changes to allow for detection and init of ASPs
|
2016-08-16 18:04:15 -06:00 |
|
Jeremy Soller
|
7b2acdd79c
|
Cleanup ACPI code, find lower tables
|
2016-08-16 12:16:32 -06:00 |
|
Jeremy Soller
|
7a1c263bc1
|
WIP: ACPI
Map and find ACPI tables, starting with RSDT
|
2016-08-15 18:37:58 -06:00 |
|
Jeremy Soller
|
fda1ab2327
|
Global allocator, page table - protected by spinlock
|
2016-08-15 16:29:54 -06:00 |
|
Jeremy Soller
|
617516b949
|
Move main to start
|
2016-08-15 15:32:33 -06:00 |
|
Jeremy Soller
|
eccb99d67d
|
Use linked list allocator
|
2016-08-15 15:27:32 -06:00 |
|
Jeremy Soller
|
2a66a84a50
|
Cleanup, use spinlock for allocator
|
2016-08-15 15:01:24 -06:00 |
|
Jeremy Soller
|
cc8fe85e6a
|
GDT and IDT in kernel space
Paging constructs completed, remap kernel before jumping to kmain
Panic will do a stack trace
Remove SSE from none target
|
2016-08-15 14:34:20 -06:00 |
|
Jeremy Soller
|
465363f0a1
|
Add simple paging, use rust libcore and compile without sse
|
2016-08-15 11:30:14 -06:00 |
|
Jeremy Soller
|
4e270bb807
|
Add context and file structs
|
2016-08-14 18:16:56 -06:00 |
|
Jeremy Soller
|
29b6544d8f
|
Add test architecture
|
2016-08-14 14:59:18 -06:00 |
|
Jeremy Soller
|
b130f9a860
|
Magic to make interrupt functions easy to write
|
2016-08-14 12:08:42 -06:00 |
|