204 Commits

Author SHA1 Message Date
Zhang Junyang
83b9ebf87d Avoid repetitive locking for clearing cache 2025-03-30 19:24:12 +08:00
Zhang Junyang
e5be154ca8 Make per-cpu counter a macro 2025-03-30 19:24:12 +08:00
Zhang Junyang
abc74151fb Add directly to global pool and reduce global lock acquiring 2025-03-30 19:24:12 +08:00
Zhang Junyang
d8e076f58a Re-write chunk-splitting and add unit tests 2025-03-30 19:24:12 +08:00
Zhang Junyang
ba0dc8c122 Re-organize code of frame allocator's pools 2025-03-30 19:24:12 +08:00
Zhang Junyang
77c4feffd6 Rename pools.rs 2025-03-30 19:24:12 +08:00
Zejun Zhao
c85986caed Correct OSDK profiling tool's behavior 2025-03-23 22:40:45 +08:00
Zhang Junyang
5f5be25e4a Bump the version to 0.14.1 2025-03-22 15:55:31 +08:00
Zhang Junyang
f1c7564184 Move CPU context implementations to a specific module 2025-03-21 21:19:50 +08:00
Chen Chengjun
af4cf19eb4 Modify the 100-lines example 2025-03-20 14:20:47 +08:00
Zhang Junyang
58ad43b0a9 Adjust feature selection 2025-03-20 11:44:28 +08:00
Zhang Junyang
2bcc13a9e2 force-unwind-tables=yes instead of panic=unwind 2025-03-20 11:44:28 +08:00
Ruihan Li
6476ef22ec Bump version to 0.14.0 2025-03-17 20:09:20 +08:00
Ruihan Li
32ffdee37b Fix PE/COFF header in EFI stub 2025-03-17 13:30:59 +08:00
Ruihan Li
10926ce547 Include payload as bytes in EFI stub 2025-03-17 13:30:59 +08:00
Zhang Junyang
fbb8ea6ad1 Bump version to 0.13.0 2025-03-14 21:18:13 +08:00
Zhang Junyang
288942b970 Revise the docs of the slab and remove an unused type 2025-03-14 21:17:47 +08:00
Zhang Junyang
3d21258baf Add descriptions and READMEs for crates published with OSDK 2025-03-14 19:55:00 +08:00
Zhang Junyang
a708a0c046 Inject a scalable slab allocator 2025-03-14 19:55:00 +08:00
Zhang Junyang
eb74d87bed Bump version to 0.12.0 2025-03-14 09:48:59 +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
9c430b9901 Move the test kernel to OSDK/deps 2025-03-14 08:37:37 +08:00
Fabing Li
30251964ee Bump version to 0.11.3 2025-02-27 11:55:02 +08:00
Fabing Li
9b8c6b5aa9 Update the toolchain version in template 2025-02-27 11:36:41 +08:00
Fabing Li
cbb4b4e631 Fix lint errors 2025-02-27 11:36:41 +08:00
Fabing Li
82a2c4cdec Bumped version to 0.11.2 2025-02-27 09:05:03 +08:00
Zhang Junyang
17c8da7459 Fix the problem that OSDK picks the test kernel by default 2025-02-21 21:17:29 +08:00
Zhang Junyang
d74d126e64 Enhance OSDK profile stability for SMP 2025-02-21 09:54:36 +08:00
Zejun Zhao
faf2bcc3ef Make cargo osdk profile more fine-grained 2025-02-13 16:01:40 +08:00
Zhang Junyang
3e31df74e3 Fix an unfulfilled lint expectation on OSDK unit tests 2025-02-11 10:48:34 +08:00
Zhang Junyang
0fc2bccd44 Let OSDK forward commands to the base crate if it is kernel 2025-02-11 10:48:34 +08:00
Zhang Junyang
cb2d8412aa Refactor the generation of base crates 2025-02-11 10:48:34 +08:00
Zhang Junyang
32a6025819 Refactor the parsing of OSDK crate types 2025-02-11 10:48:34 +08:00
Ruihan Li
95bbc7f367 Enforce #[expect(lint)] 2025-02-08 15:10:04 +08:00
Ruihan Li
0dca168717 Use #[expect(lint)], not #[allow(lint)] 2025-02-08 15:10:04 +08:00
Zhang Junyang
397ce9652f Refactor boot modules to make heap allocation explicit 2025-01-02 10:41:51 +08:00
jiangjianfeng
bfc71d1b27 Bump version to 0.11.1 2024-12-30 16:24:22 +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
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
Cautreoxit
bd89c9c578 Bump the version to 0.11.0 2024-12-26 19:20:58 +08:00
Fabing Li
6f98c4900d Bump version to 0.10.3 2024-12-20 09:49:35 +08:00
Ruihan Li
c5d1542736 Bump version to 0.10.2 2024-12-17 10:47:41 +08:00
Ruize Tang
ea1874aa46 Enhance OSDK performance by using size and modified time instead of sha256sum 2024-12-15 16:42:57 +08:00
Ruize Tang
9d82ac8958 Enhance OSDK performance by using hard link instead of copy 2024-12-15 16:42:57 +08:00
Ruize Tang
7601509e6e Fix OSDK original directory not restored if bundle validation fails 2024-12-15 16:42:57 +08:00
Ruize Tang
858e95ed4d Enhance OSDK performance by reusing existing base, bundle and build 2024-12-15 16:42:57 +08:00
Ruihan Li
18d5eb1f02 Use physical addresses in boot segments 2024-12-13 10:42:05 +08:00
Ruihan Li
a3ae1aa28a Make segments explicit and aligned 2024-12-13 10:42:05 +08:00