6e612fc730
Add syscall capget/capset
2024-06-04 19:50:08 +08:00
8e1aeaf578
Add dup3 syscall and fix EventFile
2024-06-04 16:02:58 +08:00
e0c6c29481
Fix memory leak of Task
structures
2024-06-04 14:47:18 +08:00
faf9cf7da8
Fix some issues about naming, function parameters, and comments, and redefined the method for bind mount.
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-06-04 14:38:52 +08:00
980ffb5a98
Add syscall umount.
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-06-04 14:38:52 +08:00
a893ceca4a
Add syscall mount
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-06-04 14:38:52 +08:00
ff83ce7667
Deny dead_code
and unused_variables
at crate level
2024-06-04 10:25:45 +08:00
9107a1771e
Allow dead_code
and unused_variables
at file level
2024-06-04 10:25:45 +08:00
7095b37e7e
Refactor the source structure in aster_frame::mm
2024-06-03 22:16:02 +08:00
3579d88aa6
Fortify the metadata memory model and adjust the Page
casting APIs
2024-06-03 22:16:02 +08:00
14e1b1a9fc
Rename various concepts related to memory management
2024-06-03 22:16:02 +08:00
39aa31a69d
Remove the VmIO
implementation of VmSpace
2024-06-03 22:16:02 +08:00
69d464fc6b
Use metadata to track VmFrame
s
...
In this commit, the frame metadata storage schema is implemented. The bootstrap process is refactored
and a boot page table is introduced to perform early stage metadata mapping. The metadata is then used
to track `VmFrame`s instead of the former `Arc` approach.
2024-06-03 22:16:02 +08:00
c5ec2e181e
Add itimer-related syscalls
2024-06-03 20:03:46 +08:00
13fd173b24
Enable Timer to set an absolute time
2024-06-03 20:03:46 +08:00
e952a16954
Support more clock ids
2024-06-03 20:03:46 +08:00
c84efe7a90
Introduce CPU clock and CPU timer
2024-06-03 20:03:46 +08:00
a664f1a9fc
Revise the public APIs of WaitQueue
2024-06-03 15:45:56 +08:00
901bccadfe
Add syscall rt_sigpending
2024-06-03 15:30:52 +08:00
2ecca7af6b
Add dummy syscall sched_getaffinity
2024-06-01 20:10:09 +08:00
e1480f94ee
fix: enable timely delivery of POSIX signals while busy-looping
2024-06-01 20:08:11 +08:00
5a23de1932
fix: fully use ThreadOptions while building new kernel thread
2024-06-01 20:08:11 +08:00
34e9d71fe4
Add condition variable implementation
2024-05-31 20:25:31 +08:00
c04fd0c9a0
Add syscall sendfile
2024-05-31 16:10:46 +08:00
14ada9000a
Add read_at and write_at for FileLike and InodeHandle
2024-05-31 16:10:46 +08:00
e22d78f04d
Enable tasklet mechanism
2024-05-31 16:05:58 +08:00
558248a070
Enable softirq mechanism
2024-05-31 16:05:58 +08:00
c02eacd50c
Use deny(unsafe_code) instead of forbid(unsafe_code)
2024-05-31 16:05:58 +08:00
4101d8328a
Add syscall creat
2024-05-31 15:19:17 +08:00
85e292ce7e
Fix typo
2024-05-23 09:02:47 +08:00
07fbbcfd8c
Add syscall clone3
2024-05-21 19:22:13 +08:00
a5707b4ddc
Extract OS-specific part from UserContextApi
2024-05-21 09:53:37 +08:00
2002db5481
Add wait_until_or_cancelled API to WaitQueue
2024-05-20 16:09:27 +08:00
2d17177cb5
Re-implement the alarm syscall
2024-05-20 16:09:27 +08:00
b226928349
Remove the timer module from the aster-frame and adjust the related code
2024-05-20 16:09:27 +08:00
d019de29f9
Add abstractions for Clock and Timer
2024-05-20 16:09:27 +08:00
0d5131c822
Extract x86-specific syscall dispatch to arch/x86
2024-05-17 21:29:04 +08:00
82220748c0
Use a seedable RNG instead of getrandom
crate
2024-05-17 10:28:18 +08:00
b11e6d2d62
Add syscall accept4
2024-05-16 19:17:38 +08:00
ea25157790
Support mmap shared anonymous memory
2024-05-16 19:13:32 +08:00
89b21ba3b4
Add syscall rt_sigsuspend
2024-05-16 19:10:04 +08:00
25b7007ffa
Improve the read/write efficiency of Vmo
2024-05-16 18:58:51 +08:00
f4ea23b72c
Revise the pages() method in the page cache to only return a reference
2024-05-16 18:54:39 +08:00
770a123415
Change the return value of dup() for Vmo<Rights>
2024-05-16 18:54:39 +08:00
e6b0fd8aa3
Optimize the RamFs to reduce the use of redundant locks
2024-05-16 18:54:39 +08:00
27bcece750
Optimize the ThreadStatus
to be lock-free
2024-05-16 18:54:39 +08:00
0eaa6e637d
Optimize the SigQueues
to return early without lock
2024-05-16 18:54:39 +08:00
8bcadee540
Extract dentry.rs and mount.rs to path module, rename Dentry and DentryMnt and check usage of pub.
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-05-16 13:30:52 +08:00
8d18a12385
Refactor DentryMnt and fix some issues
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-05-16 13:30:52 +08:00
60fa4d104a
Rename struct Path to struct DentryMnt
...
Signed-off-by: Zhenchen Wang <m202372036@hust.edu.cn >
2024-05-16 13:30:52 +08:00