Commit Graph

1757 Commits

Author SHA1 Message Date
Yuke Peng 4c7449d2c1 Refactor CpuContext; impl CpuException 2023-04-03 22:05:04 +08:00
Yuke Peng fbcfbe19d1 Use target_arch instead of features 2023-04-03 22:05:04 +08:00
Yuke Peng e0c0fc7937 Extract align_ext as a sparated crate 2023-04-03 22:05:04 +08:00
Yuke Peng 0fbad25503 Change the memory layout of CpuContext 2023-04-03 22:05:04 +08:00
Yuke Peng d0268309ff Extract x86-specific code into arch/x86 2023-04-03 22:05:04 +08:00
Yuke Peng b01987c721 Extract framebuffer out of framework 2023-04-03 22:05:04 +08:00
Yuke Peng bed56703de Extract RTC out of framework 2023-04-03 22:05:04 +08:00
LI Qing b02b29dde7 Add ProcFS 2023-04-03 14:41:33 +08:00
LI Qing 12b4e0637d Add DirEntryVec and use it to refine ramfs. 2023-04-03 14:41:33 +08:00
LI Qing d0bcd2491f Rewrite dentry cache 2023-04-03 14:41:33 +08:00
LI Qing a0f757d37c Add support for uncacheable and persistent fs 2023-04-03 14:41:33 +08:00
LI Qing db449d4697 Add the basic observer pattern 2023-04-03 14:41:33 +08:00
Jianfeng Jiang 0b15be894b support killing signal to process group 2023-04-02 15:05:37 +08:00
Jianfeng Jiang 32f3f5c300 Support interrupting foreground job with Ctrl+C 2023-04-02 15:05:37 +08:00
LI Qing ad76b0329a Fix the wrong metadata blocks for ramfs 2023-03-27 17:16:45 +08:00
Jianfeng Jiang 16b435e310 fix dead lock in tty 2023-03-22 21:09:50 +08:00
Yuke Peng 6e29996720 Refactor functions in vm module 2023-03-22 16:29:45 +08:00
Yuke Peng 8c7b5d84d1 Refactor IoPort 2023-03-22 16:29:45 +08:00
Yuke Peng ebfb199512 Rename structure 2023-03-22 16:29:45 +08:00
Yuke Peng 90a390ecda Combine PhysFrame and VmFrame into one 2023-03-22 16:29:45 +08:00
Yuke Peng 8dc7bda147 Combine vm and mm modules into one 2023-03-22 16:29:45 +08:00
Yuke Peng 840fe53845 Remove x86_64_util 2023-03-22 16:29:45 +08:00
LI Qing 02731914dc Add support for getdents64 syscall 2023-03-22 10:51:01 +08:00
Jianfeng Jiang 44904f00c8 Add syscall pause 2023-03-16 21:03:51 +08:00
Jianfeng Jiang 72e0725a0e add syscall time 2023-03-16 21:02:41 +08:00
Jianfeng Jiang 1e83996d09 add syscall umask 2023-03-16 21:02:41 +08:00
LI Qing eb2c09cd13 [ramfs] Fix the false judgement in rmdir 2023-03-16 17:11:58 +08:00
Jianfeng Jiang ee01113761 Add shell cmd tests 2023-03-16 17:11:21 +08:00
Yuke Peng 6a90603200 Use modified trapframe 2023-03-15 14:54:07 +08:00
Jianfeng Jiang 45427da50e support returning Err when creating posix thread 2023-03-15 10:41:02 +08:00
Jianfeng Jiang 330e495560 refactor program loader 2023-03-15 10:41:02 +08:00
Jianfeng Jiang 63800a4f65 support running shell scripts 2023-03-15 10:41:02 +08:00
Jianfeng Jiang 896910b44a load elf from file 2023-03-15 10:41:02 +08:00
Jianfeng Jiang 57297e0cd5 support running shebang executables 2023-03-15 10:41:02 +08:00
Jianfeng Jiang a084c3b687 spilt kernel thread from process 2023-03-15 10:41:02 +08:00
Tate, Hongliang Tian 8f8649bfc1 update README files 2023-03-14 23:46:17 +08:00
Yuke Peng d4453b341f Rename variables and refactor KernelStack::new 2023-03-14 15:22:49 +08:00
Yuke Peng 3e9c4a8d45 Remove Cell 2023-03-14 15:22:49 +08:00
Yuke Peng 39ea6a417c Put Framework public APIs in categories 2023-03-14 15:22:49 +08:00
Yuke Peng cdc32f299c Use bits in frame_index as need_alloc flag 2023-03-14 15:22:49 +08:00
Yuke Peng 9bc9aa180d Pass argument to qemu 2023-03-14 15:22:49 +08:00
Yuke Peng eb2b951f7c Reuse trapframe 2023-03-14 15:22:49 +08:00
Yuke Peng 91b9501a1b Replace frame allocator with buddy system allocator 2023-03-14 15:22:49 +08:00
Yuke Peng 7fa72d2c3e Update buddy system allocator, remove unused crate 2023-03-14 15:22:49 +08:00
LI Qing 2aeefd9850 Add support for utimensat syscall 2023-03-13 22:53:16 +08:00
Jianfeng Jiang 6193770d00 refactor cargo-component tests 2023-03-08 16:27:29 +08:00
Jianfeng Jiang 394e146f3a add reexport test 2023-03-08 16:27:29 +08:00
Jianfeng Jiang 99e6ffb7f8 support controlling trait methods 2023-03-08 16:27:29 +08:00
Yuke Peng cd2d516be1 Reuse x86::apic 2023-03-08 16:21:33 +08:00
LI Qing 691b8cd598 Cancel all predefined rules of ramdisk makefile 2023-03-08 16:19:53 +08:00