Commit graph

64 commits

Author SHA1 Message Date
Yifan Wu
704eae3bb0 Add ns16550a 2022-02-18 13:09:03 -08:00
Yifan Wu
fef12c79f1 Use latest virtio-drivers && add huge_write_mt but it cannot work now 2022-02-08 10:53:21 -08:00
Yifan Wu
26bc01f3bc Support signal mechanism for ch8(only works on signal-thread apps) 2022-01-23 13:14:56 -08:00
Yifan Wu
59f13cb536 Fix cat && add count_lines 2022-01-22 12:54:00 -08:00
Yifan Wu
ae3ba9c26f Small Fix && cargo fmt 2022-01-22 12:40:54 -08:00
Yifan Wu
c9583b0f53 Merge recent update from ch7 && cargo clippy 2022-01-22 12:32:36 -08:00
Yifan Wu
737340b0a0 Bump Rust to nightly-2022-01-19 2022-01-20 16:20:03 -08:00
Yifan Wu
5e8cf728a7 Maximum concurrent processes from 40/35->30. 2022-01-19 16:40:21 -08:00
Yifan Wu
f6ebd1ac68 Merge recent updates from ch7. 2022-01-18 04:40:07 -08:00
Yifan Wu
b535f5ba98 Now PageTable::unmap calls PageTable::find_pte instead of PageTable::find_pte_create. 2022-01-13 17:24:19 -08:00
Yifan Wu
3f0c3f6dfd Bump to rust nightly-2022-01-01, feature global_asm,asm->stable 2022-01-01 03:07:09 -08:00
Yu Chen
b3bce3bef2 add condvar in kernel and app 2021-12-13 15:30:27 +08:00
Yu Chen
a3ec647496 add user app: sync_sem.rs 2021-12-11 21:40:04 +08:00
Yu Chen
6c45c33b41 add user app: race_adder with arg 2021-12-05 16:49:37 +08:00
Yifan Wu
45c33f2ce2 Implement mpsc using semaphores. 2021-10-10 17:20:53 -07:00
Yifan Wu
9bc1e8d2e9 Add a solution of Philosopher dining problem using Mutex with an illustration. 2021-10-08 14:54:49 -07:00
Yifan Wu
5b56961b8c Create threads with a argument. See bin/threads_arg.rs 2021-10-08 13:50:36 -07:00
Yifan Wu
c951c1781e Implement sleep using blocking & BinaryHeap. 2021-10-08 12:55:39 -07:00
Yifan Wu
db6a93e60d Add MutexBlocking. 2021-10-07 14:33:44 -07:00
Yifan Wu
8974a29245 Add MutexSpin and several syscalls. 2021-10-07 12:40:47 -07:00
Yifan Wu
d1e55d85d8 Add race_adder_{atomic,loop}. 2021-10-07 09:26:34 -07:00
Yifan Wu
ff5055386b User base from 0x0->0x10000; user image size limit from 128MB->16MB; trigger race condition on k210 2021-10-03 07:36:41 -07:00
Yifan Wu
a341b338c8 Stage2: multiple user threads based on uniprocessor, see new added test race_adder and threads. 2021-10-02 16:18:05 -07:00
Yifan Wu
4fa4e9cab4 Stage1 clear! All applications work but now they are based on threads. 2021-09-30 14:36:33 -07:00
Yifan Wu
ad0a7bcaa1 Debugging sys_exec :( 2021-09-30 10:09:21 -07:00
Yifan Wu
5d2d508e25 Update rustsbi; huge_write writes 1MiB 2021-08-26 19:04:40 +08:00
Yifan Wu
b8a14182cd Rm spin::Mutex except for easy-fs & add new test huge_write & flush cache to disk after a write transaction 2021-07-21 19:10:04 +08:00
Yifan Wu
86cc97b334 Link small sections in linker 2021-03-07 19:59:12 +08:00
Yifan Wu
685ca2c1ea Add sys_dup && support input/output redirection in user_shell 2021-02-27 22:27:08 +08:00
Yifan Wu
ff685b86c8 DiskInode sz->128bytes && user heap -> 32KiB 2021-02-27 07:43:28 +08:00
Yifan Wu
34f26c5e8f Add tool: cat 2021-02-27 07:15:15 +08:00
Yifan Wu
c8d851fc2b Support cmdline_args when sys_exec. 2021-02-26 12:06:55 +08:00
Yifan Wu
cd6dfbf59c Refactor easy-fs. 2021-02-24 03:34:59 +08:00
Yifan Wu
84407af1ae Close all pipes in pipetest. 2021-02-21 09:28:27 +08:00
Yifan Wu
21095633d5 Fix other usertests: xstate -> exit_code 2021-02-08 18:09:00 +08:00
Yifan Wu
ae4c317dd4 Fix user_shell 2021-02-08 16:45:57 +08:00
Yifan Wu
4021105561 Fix exit_code in user 2021-02-07 02:13:33 +08:00
Yifan Wu
b121689d08 Simple filetest passed on qemu/k210. 2020-12-20 13:52:38 +08:00
Yifan Wu
1ad242a886 Now sleep test sleeps 5secs. 2020-12-16 15:39:32 +08:00
Yifan Wu
2d34cab989 Pipe OK. 2020-12-14 16:18:33 +08:00
Yifan Wu
e5bd98973d k210 only can use 6M before configuring sdcard. 2020-12-11 18:04:57 +08:00
Yifan Wu
a3496698b3 forktree worked with depth=3 on k210 platform. 2020-12-11 16:14:14 +08:00
Yifan Wu
48a11e53ff Handle backspace for k210/qemu platform && Add lots of user tests. 2020-12-11 01:44:07 +08:00
Yifan Wu
63fe64ec0f Update rustsbi-k210 to enable lagacy console_putchar. Adjust alignment of links apps. Run matrix on K210! 2020-12-10 17:20:13 +08:00
Yifan Wu
d0af7d26be Avoid panicking when inputting error app name; List all apps when initializing. 2020-12-10 14:51:50 +08:00
Yifan Wu
8fbadfc951 Implement many process syscalls. 2020-12-10 11:57:26 +08:00
Yifan Wu
e56ea17566 Add user program initproc/user_shell, allow user programs allocate data on heap. 2020-12-09 09:56:06 +08:00
Yifan Wu
485db04a2b Split kernel/user trap handler && Fix user tests. 2020-12-07 18:57:23 +08:00
Yifan Wu
9366099b28 Fetching buffer arguments from user space. 2020-12-06 13:56:13 +08:00
Yifan Wu
e37e5708e4 Frame Allocator OK. 2020-12-03 10:40:30 +08:00