20ae5d1a31
Add IDE driver and r/o ext2 fs driver
2019-04-06 09:07:06 -05:00
d5c21bd0ae
Libc headers are now in a sysroot
2019-03-31 13:10:40 -05:00
32bd671225
Add libc library
2019-03-30 11:44:01 -05:00
ed591187a1
Files now do not reference libc paths directly
2019-03-30 10:39:26 -05:00
a1267bd5b3
tasking_yield enables interrupts when switching to user mode
2019-03-26 17:52:08 -05:00
pjht
aa2c33b8f3
Merge pull request #20 from pjht/seperate-addresses
...
Tasks now have seperate address spaces
2019-03-24 16:16:51 -05:00
0c50e1eb8c
Fixed interrupts using wrong stack
...
Tasks were running in kernel mode, so the tss stack was not being used.
Unfortunatley, I had to set kmalloc to user r/w so switchTask can save
and load registers.
2019-03-24 14:25:32 -05:00
5618dd6834
Fixed reboot problem
...
STACK GROWS DOWN, NOT UP!
2019-03-24 13:42:00 -05:00
e1579b5f2a
Yield now loads the address space
2019-03-23 11:14:59 -05:00
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
0f4cd96cbf
Re add program build into makefile
2019-03-17 18:04:50 -05:00
334c6a6439
Fix syscall memory allocation bug
2019-03-17 18:04:06 -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
f1334567e1
Add cursor to VGA driver
2019-02-11 09:28:25 -06:00
cb16df6240
Usermode can now use ports! (IOPB test)
2019-02-10 18:09:07 -06:00
03109a25ca
Add newline to UMODE! message
2019-02-10 15:05:03 -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
00b1770afa
Fix xy_to_indx in VGA driver
2019-02-10 14:13:41 -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
cec08e8609
VGA can now write strings
2019-02-09 17:55:06 -06:00
d2f3b982be
xy_to_mem should be called xy_to_indx
2019-02-09 17:22:51 -06:00
0418a497c7
Colors are now initialized in vga_init
2019-02-09 17:15:38 -06:00
b1506d95ed
VGA driver now clears on initialization
2019-02-09 14:35:45 -06:00
60c56c064d
Start work on VGA driver
2019-02-09 14:35:29 -06:00
9b707eb3f7
screen.h is now vga.h
2019-02-09 14:33:45 -06:00
65b629e74a
Read framebuffer info from GRUB
2019-02-09 14:33:29 -06:00
fe8ab7fb70
Initalize paging in cpu_init
2019-02-09 14:11:19 -06:00
1a36bf1fe2
Add multiboot header file
2019-02-09 13:56:22 -06:00
f20f654263
Add libc to header search path
2019-02-09 13:54:53 -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