Commit Graph

93 Commits

Author SHA1 Message Date
9198692b5e Physical memory allocation is now done one frame at a time 2020-08-30 09:37:55 -05:00
f2b9c1f481 Fix warnings 2020-08-23 08:46:38 -05:00
9f5df75c9d Add syscall to check whether a process has finished RPC initialization. 2020-08-23 08:31:19 -05:00
f63237939b Get stdio/vfs/devfs/vga driver/initrd driver working! 2020-08-23 08:22:14 -05:00
fd36ed577a Re-add the PID to page fault details 2020-08-03 07:42:16 -05:00
d9a01fdbda Add RPC support 2020-08-02 14:37:23 -05:00
c0929a4eea Add preemptive multitasking 2020-07-30 21:58:23 -05:00
c6ffdc4814 Paging now uses a bitfield to represnt a paging structure entry 2020-07-30 10:09:59 -05:00
d4fa7974b7 Creating a process/thread now always has parameters 2020-07-30 10:07:30 -05:00
ffa12e9625 Fix small issue in paging.c with the last commit 2020-07-29 10:30:20 -05:00
96d7a839fb Add a macro to run a block of code in a different address space 2020-07-29 08:58:45 -05:00
870f26d5e9 cr3 is now not used as a generic term for "address space" 2020-07-29 07:27:12 -05:00
73b6407424 Fix inclusion of nonexistent libc headers 2020-07-27 17:18:16 -05:00
b83a5505c3 Fix naming convention deviations 2020-07-25 18:00:53 -05:00
ee7ce4dabe Add kernel documentation 2020-07-25 16:54:37 -05:00
794dd702b0 remove an extra extern from tasking_helpers 2020-07-24 10:50:25 -05:00
9f77482506 Remove uncessesary asm files 2020-07-24 10:50:06 -05:00
915b26f2c5 tasking_helpers now loads cr3 directly instead of calling a function 2020-07-24 08:53:23 -05:00
b89ccf600e Use recursive paging instead of the smap 2020-07-24 08:24:47 -05:00
cd8b2eddcf Clean up & comment task_init 2020-07-23 21:00:54 -05:00
a2756266f0 Remove unnecessary uints 2020-07-23 11:50:23 -05:00
b506923396 Clean up serial driver 2020-07-23 10:28:38 -05:00
f01785d69e serial driver portability work 2020-07-23 09:21:14 -05:00
063cde8101 Small fix to x86-64 paging code 2020-07-23 09:16:41 -05:00
64261480af kernel stack allocation is now not handled in paging.c 2020-07-23 06:41:18 -05:00
af4233e968 Remove load_smap from paging.h 2020-07-22 21:28:00 -05:00
ce0cfb2e11 Remove protector pages 2020-07-22 21:20:50 -05:00
51a4007bba remove an unimplemented function from paging.h 2020-07-22 21:17:55 -05:00
ea574dbf23 Kernel stack setup is now platform-dependent 2020-07-22 19:54:33 -05:00
ace6b4397d make address_spaces.c non cpu specific 2020-07-22 19:46:57 -05:00
918b944b9e Fix a warning 2020-07-22 19:37:30 -05:00
ece3b47223 Fix some build errors 2020-07-22 19:37:11 -05:00
06ca0a5913 Sort includes 2020-07-22 19:35:23 -05:00
eef40edb3f Portability work 2020-07-22 19:26:55 -05:00
76eedfb921 new_thread is now pthread_create 2020-07-22 07:33:44 -05:00
24e34f0011 Exit was not unmarking the task as scheduled 2020-07-21 16:31:51 -05:00
dbcb761147 Kernel thread stacks were not mapped properly 2020-07-21 16:30:22 -05:00
b37d8895d7 Add the current thread as an external variable in the tasking header 2020-07-21 16:29:57 -05:00
69cd4f248d Kernel thread creation can now take a pid and an argument 2020-07-20 11:24:09 -05:00
ff3885241a Full purge of the word "Task" from my tasking code 2020-07-20 10:07:46 -05:00
57c663a0e0 Tasking rewrite & add multi-threading 2020-07-20 09:51:30 -05:00
7cde3f4eca Remove redundant syscalls 2020-07-12 16:29:57 -05:00
5717209148 Syscall number reorg 2020-07-12 14:39:22 -05:00
679b5a3b8d Add syscall macros and remove mailbox IPC 2020-07-12 14:30:16 -05:00
ac7cc05113 Add task states 2020-07-12 14:28:58 -05:00
9e87405ff7 Fix some warnings 2020-07-12 13:47:17 -05:00
ff1ec1ac79 Attempt to fix the ipc corruption 2020-07-09 11:28:57 -05:00
832a01b7e9 Interrupt code now passes a pointer to the saved registers 2019-12-14 10:41:04 -06:00
ba3add445e Fix interrupt.h having broken header guard 2019-12-14 10:25:00 -06:00
1c5a986e6d Start work on an initrd driver and attempt to debug pg fault on msg send 2019-10-20 09:44:33 -05:00