1
0
mirror of https://github.com/sgmarz/osblog.git synced 2024-11-24 02:16:19 +04:00
Commit Graph

250 Commits

Author SHA1 Message Date
Stephen Marz
a1f9d2c6cd Add Mutex to process list. 2020-04-26 20:11:01 -04:00
Stephen Marz
03018cb55f Removed warnings 2020-04-26 15:55:22 -04:00
Stephen Marz
7dfe0b8182 Run cargo fix 2020-04-26 15:53:26 -04:00
Stephen Marz
3d43bbd93c asm is deprecated in Rust as my compiler warned me. So, let's switch to llvm_asm 2020-04-26 15:52:08 -04:00
Stephen Marz
591f0fdff8 Get rid of useless header. 2020-04-26 14:58:28 -04:00
Stephen Marz
29100f10ae Updated comments 2020-04-26 14:05:50 -04:00
Stephen Marz
af29a0d267 Removed make_hdd.sh, it stores random bytes, now we have a filesystem 2020-04-26 13:55:08 -04:00
Stephen Marz
d62d3f3816 Added more rigorous test, fixed bug in ELF loader 2020-04-26 09:26:41 -04:00
Stephen Marz
bc6ef9d689 Fixed ELF loader and added offset. 2020-04-26 09:19:07 -04:00
Stephen Marz
8f61253aea Removed old code and added comments. 2020-04-26 08:51:25 -04:00
Stephen Marz
cc3b78973c Rearranged code, added comments. 2020-04-26 08:43:03 -04:00
Stephen Marz
42c14bf930 Check and use permission bits in ELF for user pages. 2020-04-26 08:40:43 -04:00
Stephen Marz
fa1a728bd9 Changed to run test_elf for ELF files 2020-04-26 08:34:00 -04:00
Stephen Marz
074dc9547a Now we read ELF files instead of raw binaries 2020-04-26 08:33:49 -04:00
Stephen Marz
de97ebf12d Added ELF structures for reading ELF files. 2020-04-26 08:33:25 -04:00
Stephen Marz
06894d3aff Move BlockBuffer into fs. 2020-04-26 07:12:38 -04:00
Stephen Marz
25009aaa3c Fixed bug in locating the inode. 2020-04-26 07:12:27 -04:00
Stephen Marz
fac882ea73 Clean up scheduler code. 2020-04-25 23:27:00 -04:00
Stephen Marz
fd9c9449b0 Allow sleeping processes that are awoken to immediately execute. 2020-04-25 23:26:14 -04:00
Stephen Marz
60edb9f72a Remove the dumb done flag. 2020-04-25 23:24:55 -04:00
Stephen Marz
58b73e2208 Added tons of comments. 2020-04-25 22:25:32 -04:00
Stephen Marz
b8029e76ac Make helloworld.cpp print a pointer so we can see how we directly affect
the stack.
2020-04-25 21:44:11 -04:00
Stephen Marz
f771883cb0 Added satp_fence. Probably don't need this since we don't reuse pids. 2020-04-25 21:44:05 -04:00
Stephen Marz
eab4a20a61 Added calculations to helloworld 2020-04-25 21:35:32 -04:00
Stephen Marz
0c649f5370 Change wording of helloworld.cpp so it's recognizable when printed to the screen. 2020-04-25 21:24:21 -04:00
Stephen Marz
1627cc7733 Read and start a process...Added userspace library...will switch this to newlib later. 2020-04-25 21:23:00 -04:00
Stephen Marz
cbff6afeca Added comments. 2020-04-25 19:51:27 -04:00
Stephen Marz
cb06702afa Act more like Rust by adding _mut() for those functions that return mutable references or pointers. 2020-04-25 19:36:58 -04:00
Stephen Marz
e5f3eb7f6b Removed mapping the kernel memory into a process' virtual address space. 2020-04-25 19:34:20 -04:00
Stephen Marz
84e5126d29 Added formatting, made syscall.rs clearer to read. 2020-04-25 18:48:23 -04:00
Stephen Marz
056ef5bb2d Added dump_registers as syscall 1--for debugging purposes. 2020-04-25 18:25:18 -04:00
Stephen Marz
d86c65a380 Added comments and removed llvm_asm -- it looks like I'll have to use this in the future 2020-04-25 17:34:06 -04:00
Stephen Marz
018faea21e Check for a 0 zone before adding to blocks seen. 2020-04-25 16:47:13 -04:00
Stephen Marz
3eb61ad188 Remove redundant variable 2020-04-25 16:41:43 -04:00
Stephen Marz
bb4e2d118a Minix reads Direct, Indirect, Doubly-indirect, and Triply-indirect zones 2020-04-25 16:39:50 -04:00
Stephen Marz
0de9b23b17 Change test and added comments 2020-04-25 16:06:29 -04:00
Stephen Marz
080a529f01 Reading up to indirect pointers 2020-04-25 15:15:25 -04:00
Stephen Marz
c2fb6cf90d Fix system calls. Size always comes first now, followed by offset. 2020-04-25 14:16:03 -04:00
Stephen Marz
787f886b6f Clean up code, added deleting a process if a user process causes a fault. 2020-04-24 22:19:41 -04:00
Stephen Marz
bb74161466 Remove use 2020-04-24 19:58:29 -04:00
Stephen Marz
2eb8acabd7 Remove syscall_exit, kernel processes will return via RA 2020-04-24 19:55:49 -04:00
Stephen Marz
71702acd43 Added comments and formatted. 2020-04-24 19:30:00 -04:00
Stephen Marz
0d924e6fab Fixed not waking up the process who made the request. 2020-04-24 19:26:44 -04:00
Stephen Marz
4c31f8c563 Add inode number to fs_read 2020-04-24 19:22:27 -04:00
Stephen Marz
a113db700a Added RA to call syscall_exit for kernel processes. 2020-04-24 19:16:45 -04:00
Stephen Marz
8ae5ebb085 Added syscall_block_read and syscall_fs_read. 2020-04-24 18:56:32 -04:00
Stephen Marz
8081863709 Fix inits loop. We will use WFI to avoid hogging resources. 2020-04-24 18:48:19 -04:00
Stephen Marz
e0a8be5522 Don't let init sleep. This will cause us to hang in the scheduler. 2020-04-24 18:47:49 -04:00
Stephen Marz
58ab3f3b6f Don't let init sleep. This will cause us to hang in the scheduler. 2020-04-24 18:46:31 -04:00
Stephen Marz
73636c1de1 Updates to add a process for a file system read in the system call. 2020-04-24 18:37:48 -04:00