Commit Graph

108 Commits

Author SHA1 Message Date
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
81fd21da2a Change mailboxes to not use kmalloc 2019-09-22 08:38:31 -05:00
faf3a3aad9 Change find_free_pages to return a void* 2019-09-22 08:25:08 -05:00
f88622c154 Mailboxes can now be found by their names. 2019-09-05 09:39:13 -05:00
2080e0256a Fix a bug with sending a message of size 0. 2019-09-01 14:14:25 -05:00
9a89873c8b Mailboxes now have names 2019-09-01 13:52:32 -05:00
1522fed9a8 Add getpid function 2019-09-01 13:49:01 -05:00
f8160bb3ee Fix IPC buffer size check 2019-09-01 13:01:37 -05:00
7d453fd06b Yet again, attempt to fix IPC 2019-08-31 18:43:27 -05:00
d2dbbb85a5 Fix IPC issues (I suspect looparound issues) 2019-08-31 16:46:21 -05:00
d874b17b14 Fix exit not looping around to head task 2019-08-31 10:49:35 -05:00
e349f0ad3d Add protection againt sending to mailbox 0 2019-08-28 20:24:53 -05:00
54ab300502 Get all programs building using the new hosted cross-compiler 2019-08-28 08:26:42 -05:00
916ffea498 Add syscalls to get initrd size and copy it into user supplied memory 2019-08-26 13:07:01 -05:00
e8730b145a Make usermode programs hosted, and add noreturn to exit. 2019-08-26 07:43:25 -05:00
d186939f87 start.asm now calls exit with a 0 exit code 2019-08-25 17:41:13 -05:00
c8a3a49b87 Forgot to change kernel exit code back to 0 2019-08-25 17:33:05 -05:00
3ca8b5a232 Add a very basic exit function and fix kmalloc.
Exit function does not deallocate task memory except for the data block, 
and does not are about the exit code except for logging.
2019-08-25 17:32:08 -05:00
5a5fee4d74 Tasks now are a doubly-linked list 2019-08-25 17:06:19 -05:00
d12421a7c8 Add a serial_print syscall 2019-08-25 13:52:56 -05:00
2827a2d7ba Mailbox code did not save mailbox data upon returning from functions 2019-08-25 13:52:31 -05:00
895bd9613e Add a serial log if a PID yield is tried for a nonexistent pid. 2019-08-05 14:23:54 -05:00
7d25533307 Fix serial logging for getting a message 2019-08-05 14:23:27 -05:00
99522efde5 Add a kernel serial driver and a yieldToPID function. 2019-08-04 13:14:35 -05:00
e80d084584 Sync repo with code for IRC help 2019-08-03 15:50:23 -05:00
05c1e20aa6 Remove magic breakpont afer paging init 2019-08-02 19:55:59 -05:00
823a255e1a Fix vfs saying the message was sent from init's stdio mailbox.
Unfortunately, this breaks the VFS, so the rest of this commit attempts 
(and fails) to fix it.
2019-07-27 11:11:28 -05:00
7974c1e026 Get VFS workng and start on fputc. Debugger is currently broken :( 2019-07-20 11:03:27 -05:00
d62ccb0dc1 Add a process to act as a filesytem driver and get a .gdbinit file setup
.gdbinit is used to make it easier to debug userspace processes
2019-07-13 10:18:41 -05:00
74cdc67dce Fix/ignore all the warnings 2019-07-01 15:30:00 -05:00
aef1d74750 Finish fopen in the vfs and hopefully add a working fopen in stdio.c 2019-07-01 15:13:47 -05:00
7611d929a3 Fix most warnings 2019-06-29 09:04:34 -05:00
51bb986d76 Change IPC to a mailbox-based system
Instead of using PIDs to identify a destination, a process can have one 
or more mailboxes to send messages to.
2019-06-27 17:00:23 -05:00
9db6bf61ca Start work on making IPC use a mailbox approach 2019-06-24 13:24:39 -05:00
ade1521bc4 Copy message data from kspace into uspace upon receiving message.
Fixes #30
2019-06-22 15:42:06 -05:00
1216d4c000 Store size of message in buffer 2019-06-22 15:29:02 -05:00
7ee2472fe5 Get IPC working 2019-06-22 11:11:12 -05:00
8bdbe06b8c Move kernel stacks into common memory and fix tasking. 2019-06-22 10:21:50 -05:00
997927fea4 Add a limit of 24k tasks ever being created. 2019-06-17 08:20:36 -05:00
c295d56ae8 IPC now uses a buffer in the task structure 2019-06-17 08:14:45 -05:00
c4d39011cd Fix unmap_pages not invalidating entries 2019-06-17 06:58:31 -05:00
9654487b5b add unmap_pages 2019-05-28 16:05:51 -05:00
38c39611fd load_address_space now uses load_smap 2019-05-25 16:00:52 -05:00
e0a6ebc0b3 load_smap now invaliadtes pages 2019-05-25 16:00:33 -05:00
f68cf49a15 copy_data and put_data now use load_smap 2019-05-25 16:00:12 -05:00
c036eb1e9a revert to old build system 2019-05-25 10:35:31 -05:00
b28234806b ignore more build products 2019-05-25 10:16:39 -05:00
09206d0645 fix files looking for ports.h in wrong place 2019-05-25 10:13:59 -05:00
30e043955b Add empty vfs program and fix tar parsing 2019-05-24 11:52:13 -05:00