Zhang Junyang
d873e121ff
DFS lock protocol for the page table
2025-05-24 17:42:17 +08:00
Zhang Junyang
9cb28f8dd0
FrameRef
for all types of frames
2025-05-11 15:42:46 +08:00
Zhang Junyang
18df0f6ec9
Fix the linear mapping size if the IO range is high
2025-05-06 23:33:05 +08:00
Fabing Li
1e3098d734
Add ktest cases for frame components
2025-03-26 11:09:13 +08:00
Zhang Junyang
fdbe52c2ee
Relax AnyFrameMeta
's requirement of Debug
and 'static
2025-03-14 19:55:00 +08:00
Zhang Junyang
28e7c0ff1f
Add a fixed-size cache of frame allocation
2025-03-14 08:37:37 +08:00
Zhang Junyang
5f05963ee5
Inject a scalable buddy system allocator to OSTD
...
Co-authored-by: Zhe Tang <tangzh@stu.pku.edu.cn>
2025-03-14 08:37:37 +08:00
Zhang Junyang
0b050d5e66
Linked lists of Frame
s
2025-02-14 13:24:51 +08:00
Zhang Junyang
b59cd9cea2
Use 64-bit reference counts for frames and fix meta layouts
2025-02-14 13:24:51 +08:00
Zhang Junyang
44d54f4b23
Implement UniqueFrame
and Frame::from_in_use
2025-02-14 13:24:51 +08:00
Ruihan Li
b415538097
Remove useless #[allow(lint)]
2025-02-08 15:10:04 +08:00
Zhang Junyang
ff453f5933
Use CachePage
in all related block functions
2024-12-27 12:12:51 +08:00
Zhang Junyang
983a6af3cc
Polish the doc and rename variables in ostd::mm
2024-12-27 12:12:51 +08:00
Zhang Junyang
cdac59beda
Implement a new set of physical page APIs
2024-12-27 12:12:51 +08:00
Zhang Junyang
14308f81b6
Remove AnyFrame
2024-12-27 12:12:51 +08:00
Zhang Junyang
c9a37ccab1
Renaming concepts around pages and frames
...
This commit renames `Frame` -> `UntypedFrame` and `Page` -> `Frame`.
So do other concepts in the following list:
- `Segment` -> `UntypedSegment`,
- `ContPages` -> `Segment`,
- `DynPage` -> `AnyFrame`,
- `PageMeta` -> `FrameMeta`,
- `FrameMeta` -> `UntypedMeta`.
This commit also re-organized the source in the `mm/page` and `mm/frame`
module to accommodate the changes.
2024-12-27 12:12:51 +08:00
Zhang Junyang
60365a818a
Use pointer metadata for page metadata
2024-12-16 13:22:05 +08:00
Zhang Junyang
9e4257b655
Fix multiple issues pointed out by the new compiler
2024-10-13 22:32:05 +08:00
Zhang Junyang
909639fd70
Separate SegmentSlice
from Segment
2024-10-09 19:23:46 +08:00
Zhang Junyang
bec2c97637
Don't copy on write if this is the only reference
2024-09-13 20:10:03 +08:00
Shaowei Song
dce796cdde
Refactor all io APIs of vfs based on VmReader
/VmWriter
2024-08-22 22:54:30 +08:00
Shaowei Song
2102107be1
Refactor VmReader
&VmWriter
as given fallibility marker
2024-08-21 22:24:15 +08:00
Ruihan Li
562e644375
Clarify some safety conditions of Vm{Reader,Writer}
2024-08-21 09:34:21 +08:00
Zhang Junyang
71a486b9a5
Bye, FrameVec
2024-07-20 20:56:29 +08:00
Chen Chengjun
09b6153d29
Refactor VmReader/Writer to support both kernel space and user space
2024-06-28 15:36:21 +08:00
Jianfeng Jiang
59350a8578
Rename aster-frame to ostd
2024-06-27 15:45:49 +08:00