|
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 |
|
|
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 |
|
|
382bd0c5e9
|
large restructure
|
2019-05-24 09:51:45 -05:00 |
|
|
7f25b58910
|
move cpu folder into kernel folder
|
2019-05-24 09:04:31 -05:00 |
|
|
2fac49887f
|
Kernel now passes initrd and size to init
|
2019-05-24 08:54:14 -05:00 |
|
|
3a6f95a86a
|
Every task now takes two parameters in the tasking code
|
2019-05-23 20:21:51 -05:00 |
|
|
63b46be967
|
Move initrd to tar
|
2019-05-23 17:38:26 -05:00 |
|
|
9d2c37329f
|
Add an x variable to the vga error driver in the kernel
|
2019-05-23 09:44:40 -05:00 |
|
|
204fec4407
|
Remove all drivers and fs code from kernel
|
2019-05-22 14:18:29 -05:00 |
|
|
3448e834e8
|
Tasking finally works!!
|
2019-05-21 19:16:19 -05:00 |
|
|
613f77f949
|
Start large change of tasking system
|
2019-05-11 10:11:28 -05:00 |
|
|
68b6a77a65
|
Fix warnings
|
2019-05-06 08:38:02 -05:00 |
|
|
3856a5dc0a
|
Get init loaded as a separate process
|
2019-05-06 08:24:57 -05:00 |
|
|
21a395de3b
|
Remove logging messages in kernel and fix some warnings
|
2019-05-05 07:27:57 -05:00 |
|
|
361bfb0aa8
|
Kernel code now only loads init
|
2019-05-03 08:34:22 -05:00 |
|
|
f43d8e3af4
|
Run program at end of init()
|
2019-05-01 19:40:59 -05:00 |
|
|
50b0c0a4c4
|
Move _start to a dedicated file
|
2019-05-01 11:55:54 -05:00 |
|
|
593e618318
|
Remove some logging
|
2019-05-01 09:41:31 -05:00 |
|
|
3691d6b1f5
|
Essentially merge ext-prog-libc
|
2019-05-01 09:39:23 -05:00 |
|
|
5cb95d816f
|
long mode paging work
|
2019-04-30 17:11:26 -05:00 |
|
|
83e1f27567
|
i386 moved to multiboot2 and x86_64 has physical memory manager
|
2019-04-27 15:03:31 -05:00 |
|
|
c6bca7f177
|
Add long mode IDT
|
2019-04-27 09:51:32 -05:00 |
|
|
5384ec3af0
|
Add VGA driver
|
2019-04-26 10:03:16 -05:00 |
|
|
fbef5710ed
|
Long mode works!!!
|
2019-04-26 09:47:57 -05:00 |
|
|
e10fe99d05
|
Remove long mode env
|
2019-04-26 09:20:07 -05:00 |
|
|
c75aa35e1b
|
Long mode work
|
2019-04-25 15:46:48 -05:00 |
|
|
e51f3e4db2
|
Start work on x86_64 platform
|
2019-04-22 13:18:27 -05:00 |
|
|
d8dade3fb3
|
Fix platform-specific makefile
|
2019-04-22 08:39:46 -05:00 |
|
|
d78e7743ce
|
Fix warnings
|
2019-04-21 14:19:52 -05:00 |
|
|
16c8742bef
|
Work on adding partition support
|
2019-04-18 08:50:49 -05:00 |
|