Commit Graph

226 Commits

Author SHA1 Message Date
SKTT1Ryze 09dcbec5f0 fix small 2021-04-03 20:43:50 +08:00
SKTT1Ryze fd60e5934a fix user stack 2021-04-03 20:39:16 +08:00
SKTT1Ryze ab3f4232d7 add user stack mapping 2021-04-03 12:19:53 +08:00
luojia65 592c5d1b27 Use macro in trap switch context 2021-04-01 15:49:14 +08:00
Luo Jia 90ba868d31
Merge pull request #10 from HUST-OS/enter_user_mode
Enter user mode
2021-04-01 01:41:17 -05:00
luojia65 f67e22cb03 Small fix and documents on user level 2021-04-01 14:40:01 +08:00
SKTT1Ryze a9e3d341a6 fix small 2021-03-31 23:40:09 +08:00
SKTT1Ryze cb6cd42e7c succeed enter user mode 2021-03-31 23:16:00 +08:00
SKTT1Ryze f5bb2fab4f add .user segment in linker 2021-03-31 22:55:02 +08:00
SKTT1Ryze 5dd00a27ae fix compile error 2021-03-29 16:55:20 +08:00
hustccc dde80fa756
Merge pull request #9 from HUST-OS/sktt1ryze
move swap_context.rs to trap::mod.rs
2021-03-22 19:03:39 +08:00
hustccc 05d75e983f add some func in memory 2021-03-22 07:27:32 +09:00
hustccc 728566e0fb add some func 2021-03-22 06:08:40 +09:00
hustccc 350220046a fix something 2021-03-22 02:49:08 +09:00
hustccc 224ed9d592 move swap_context.rs to trap::mod.rs 2021-03-22 02:33:35 +09:00
luojia65 40c5b5d31a Switch to user level 2021-03-20 17:20:19 +08:00
hustccc a4840ca7aa small fix 2021-03-17 09:26:14 +09:00
hustccc 2ade5a1fa0 add user task 2021-03-17 09:15:32 +09:00
hustccc c802f21ce4 add rise2user func 2021-03-17 08:21:40 +09:00
hustccc 3ef7bf63d6 修改 riscv 依赖库和增加交换上下文的构建函数 2021-03-17 07:38:32 +09:00
hustccc 7d6653940f map .swap in kernel address space 2021-03-17 06:37:25 +09:00
hustccc 0d730bd35f Merge branch 'sktt1ryze' of https://github.com.cnpmjs.org/HUST-OS/tornado-os into sktt1ryze 2021-03-17 04:35:09 +09:00
hustccc 12b0c2ed98 update small 2021-03-17 04:34:19 +09:00
luojia65 b6c35cf465 Small fix for kernel satp value 2021-03-16 19:25:48 +08:00
luojia65 9f19ea65e8 Rename `swap` section to `.swap` 2021-03-16 19:19:31 +08:00
luojia65 63d86dd4ce Use naked function to rewrite user2supervisor function 2021-03-16 19:17:42 +08:00
hustccc 29795ab49f add swap segment in linker 2021-03-16 19:03:29 +09:00
hustccc 17bab931f4 change SwapContext and add user2supervisor and supervisor2user 2021-03-16 18:49:26 +09:00
luojia65 196a3d41ac Supervisor restore 2021-03-15 20:55:35 +08:00
luojia65 30f1f0024f Remove second shared memory section 2021-03-12 19:50:40 +08:00
luojia65 50ffedbecf Rearrange resume to user method 2021-03-12 19:48:01 +08:00
luojia65 91d9afc2be Rearrange code style 2021-03-12 19:40:02 +08:00
hustccc 94bcfc1f5a update something 2021-03-13 03:05:17 +09:00
hustccc f1db45f732 map .swap segment 2021-03-13 02:37:08 +09:00
hustccc 17473517dd 增加 swap 段 2021-03-13 02:32:31 +09:00
hustccc be36410a13 add some asm 2021-03-13 01:43:15 +09:00
hustccc 0d7324ae5b update Context 2021-03-12 22:24:05 +09:00
hustccc b99dd29390 add some doc and start user mode 2021-03-12 20:10:50 +09:00
luojia65 509e8aa21e Small fix for hart `tp` register read/write 2021-03-11 23:11:33 +08:00
luojia65 064da22a1e Replace llvm_asm in thread pointer (rust-lang/rust#82753)
Thank you @Amanieu
2021-03-11 23:06:13 +08:00
luojia65 f5600da622 Small fix 2021-03-11 10:49:07 +08:00
luojia65 199e3df019 Start timeout in kernel executor 2021-03-11 10:47:59 +08:00
luojia65 7a254e6670 Small fix 2021-03-11 01:09:57 +08:00
luojia65 d5e81c0e20 Modify console module 2021-03-11 01:07:32 +08:00
luojia65 5aa3542b43 Task switch and linker scripts 2021-03-11 01:01:48 +08:00
luojia65 5291f0b8a5 Rename `interrupt` module to `trap` module 2021-03-11 00:17:30 +08:00
luojia65 931b5d5ff4 Simplify executor design 2021-03-11 00:14:37 +08:00
luojia65 fef41aee50 Use lock::Lock instead of spin::Mutex for shared scheduler 2021-03-11 00:11:20 +08:00
luojia65 6a73d18770 Add timer interrupt in kernel 2021-03-11 00:00:14 +08:00
luojia65 831f45857d Small fix 2021-03-10 21:24:23 +08:00