25 Commits

Author SHA1 Message Date
2b65782369 Tasks now have separate address spaces
When switchTask loads the stack, the next push intruction fails, but the 
stack can be manually accessed fine.
2019-03-23 10:35:11 -05:00
9caf48cb6d Kmalloc is now used to allocate task structures 2019-03-23 07:30:18 -05:00
5bca438d98 Add kmalloc 2019-03-23 07:30:00 -05:00
c1bbcaddee Virtual memory manager no longer returns NULL 2019-03-17 17:47:33 -05:00
afcd0b6580 Virtual memory manager can now create and load address spaces 2019-03-17 12:37:37 -05:00
bfc3964804 Memory allocation is now a syscall 2019-03-17 12:22:00 -05:00
d9252649d8 Physical memory manager now initialized in cpu_init 2019-03-17 12:21:23 -05:00
7d2a8b0894 IPC now uses void pointers 2019-03-15 18:53:50 -05:00
f2ebc5e31e More work 2019-03-12 17:26:19 -05:00
99d7fed783 Work and cleanup 2019-03-11 09:32:55 -05:00
7131f4ae5a Lots of work 2019-02-25 15:42:23 -06:00
9c5e5e91d0 Clear interrupt stack in yield sycall 2019-02-11 14:13:49 -06:00
d54a55aad0 Get sycalls working in usermode (And all interrupts) 2019-02-11 13:43:40 -06:00
b3e086e452 Add createTask syscall (Not working in umode) 2019-02-11 09:48:50 -06:00
4f25ff7a09 Add yield syscall (Not working in umode) 2019-02-11 09:47:28 -06:00
fdd7afa1c8 Add tasking (No usermode support) 2019-02-11 09:30:28 -06:00
cb16df6240 Usermode can now use ports! (IOPB test) 2019-02-10 18:09:07 -06:00
205950e974 Add page fault debug messages 2019-02-10 15:04:54 -06:00
a12c1281ff Usermode interupts working! 2019-02-10 15:03:59 -06:00
ee9839beaa Get GDT,IDT and usermode working! 2019-02-10 14:11:07 -06:00
0534ba86e6 Add usermode GDT entries 2019-02-10 13:19:04 -06:00
fe8ab7fb70 Initalize paging in cpu_init 2019-02-09 14:11:19 -06:00
0e3e4d4769 Add GDT initialization 2019-02-09 13:54:40 -06:00
a1ac07c79e Rename init_paging to paging_init 2019-02-09 13:05:13 -06:00
ef90f51688 Remove most code for a blank start 2019-02-09 12:52:45 -06:00