ad140cec3c
Implement vsock socket layer
2024-06-11 17:51:36 +08:00
83a7937334
Make vsock device optional
2024-06-11 17:51:36 +08:00
be45f0ee72
Fix format and clippy errors
2024-06-11 17:51:36 +08:00
52f808e315
Implement vsock driver
2024-06-11 17:51:36 +08:00
39c2e17f75
Fix OSDK publish CI panics
2024-06-09 23:01:52 +08:00
33a7da9991
Fix typos in API documentation
2024-06-09 22:57:14 +08:00
6e59617fc7
Add missing docs in aster-frame
2024-06-09 22:57:14 +08:00
a93f922a25
Add description and license for align-ext
2024-06-09 22:57:14 +08:00
e192579405
Fix broken link in documentation
2024-06-09 22:57:14 +08:00
6cf28751c6
Not add project_type if the manifest is in workspace root
2024-06-09 22:55:01 +08:00
3b95191f7e
Subcommand new
should not parse CommonArgs
2024-06-09 22:55:01 +08:00
1391ff59f2
Polish OSDK documentation
2024-06-09 22:55:01 +08:00
07caaa5b3f
Add full epoll_pwait
2024-06-08 17:23:06 +08:00
9484d35730
Update Linux compatibility document
2024-06-07 17:08:49 +08:00
0d82262beb
Support update rusage in wait4 syscall
2024-06-07 17:08:49 +08:00
c85438353f
Add syscall getrusage
2024-06-07 17:08:49 +08:00
57fc6a5402
Support parent death signal & Refactor do_exit
2024-06-07 17:07:16 +08:00
e8c8c027c5
Declare kernel_task_entry
as extern "C"
2024-06-07 16:59:29 +08:00
74e4623e70
Let OSDK allow specifying additional boot drive options
2024-06-07 10:46:06 +08:00
37e23a16a3
Bring OSDK's full support of QCOW2 booting
2024-06-07 10:46:06 +08:00
c6aa9f9ee8
Limit the number of segments in single bio request
2024-06-05 16:13:59 +08:00
a883b65187
Refine the scripts for syscall test
2024-06-05 14:50:11 +08:00
c7cda1df28
Make each pausing thread has a seperate is_interruped
2024-06-05 11:47:28 +08:00
0dd90cad3c
Fix bug: Ctrl+C does not send signal
2024-06-05 11:47:28 +08:00
6f3a483be6
Check only not blocked signals in Pauser
2024-06-05 11:47:28 +08:00
5cde55da3d
Unregister observer when timeout is reached
2024-06-05 11:47:28 +08:00
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
232e62b053
Redo segment with Arc
rather than creating SegmentHeadMeta
2024-06-03 22:16:02 +08:00
3fa3d7f15a
Revised page table activation and drop management
2024-06-03 22:16:02 +08:00
7095b37e7e
Refactor the source structure in aster_frame::mm
2024-06-03 22:16:02 +08:00
e8595b95fe
Add missing safety explanations for the page table node
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
03a39c94ca
Refactor the representation of page metadata
2024-06-03 22:16:02 +08:00
39aa31a69d
Remove the VmIO
implementation of VmSpace
2024-06-03 22:16:02 +08:00
141fbeaf0c
Optimize the page table implementation using the frame metadata
...
This PR also refactored the page table cursor, distinguishing `Cursor` from `CursorMut`, and split
a lot of functions to reduce dynamic condition checking.
There are also other sanitizations performed, including refactoring PTE's `is_huge` API to `is_last`,
hardening tracked mapping checks, and making `VmFrame` any size.
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
d24ddaae66
Add itimer-related syscall tests
2024-06-03 20:03:46 +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
f1c1011f2b
Set PROCESSOR cpu-local
2024-06-03 20:03:46 +08:00