diff --git a/README.md b/README.md index 5cc8cf6f..1de09ae7 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,6 @@ make all ## 参考 -- [Titanix](https://gitlab.eduxiji.net/202318123101314/oskernel2023-Titanix) -- [MankorOS](https://gitlab.eduxiji.net/MankorOS/OSKernel2023-MankorOS) +- [Titanix](https://gitlab.eduxiji.net/202318123101314/oskernel2023-Titanix) 启动流程、内存模块设计 +- [MankorOS](https://gitlab.eduxiji.net/MankorOS/OSKernel2023-MankorOS) RangeMap、UserPtr、设备驱动模块 - [FTL OS](https://gitlab.eduxiji.net/DarkAngelEX/oskernel2022-ftlos) diff --git a/crates/async-utils/src/lib.rs b/crates/async-utils/src/lib.rs index 9b169327..104177d9 100644 --- a/crates/async-utils/src/lib.rs +++ b/crates/async-utils/src/lib.rs @@ -1,3 +1,5 @@ +//! Adapted from Titanix + #![no_std] #![no_main] diff --git a/crates/range-map/src/lib.rs b/crates/range-map/src/lib.rs index 2a40069b..84daa91e 100644 --- a/crates/range-map/src/lib.rs +++ b/crates/range-map/src/lib.rs @@ -1,3 +1,5 @@ +//! Adapted from MankorOS + #![no_std] #![no_main] #![feature(map_try_insert)] diff --git a/driver/src/cpu.rs b/driver/src/cpu.rs index 289a9c14..bdd777bd 100644 --- a/driver/src/cpu.rs +++ b/driver/src/cpu.rs @@ -1,4 +1,6 @@ //! CPU is also a device +//! +//! Adapted from MankorOS use alloc::vec::Vec; diff --git a/driver/src/manager.rs b/driver/src/manager.rs index 71494a93..3dda3808 100644 --- a/driver/src/manager.rs +++ b/driver/src/manager.rs @@ -1,10 +1,12 @@ //! Device manager +//! +//! Adapted from MankorOS use alloc::{collections::BTreeMap, sync::Arc, vec::Vec}; use arch::interrupts::{disable_interrupt, enable_external_interrupt}; use config::{board, mm::K_SEG_DTB_BEG}; -use device_core::{Device, DevId}; +use device_core::{DevId, Device}; use log::{info, warn}; use crate::{cpu::CPU, plic::PLIC, println}; diff --git a/driver/src/plic.rs b/driver/src/plic.rs index d9b5124a..57497bc3 100644 --- a/driver/src/plic.rs +++ b/driver/src/plic.rs @@ -1,5 +1,7 @@ //! RISC-V Platform Level Interrupt Controller //! +//! Adapted from MankorOS +//! //! Controller setup helper use config::mm::VIRT_RAM_OFFSET; diff --git a/driver/src/serial/mod.rs b/driver/src/serial/mod.rs index dcaf8d34..7cdd2e38 100644 --- a/driver/src/serial/mod.rs +++ b/driver/src/serial/mod.rs @@ -1,3 +1,5 @@ +//! Adapted from MankorOS + pub mod uart8250; use alloc::{boxed::Box, collections::VecDeque, string::ToString, sync::Arc}; diff --git a/driver/src/serial/uart8250.rs b/driver/src/serial/uart8250.rs index 8064df32..2631ab14 100644 --- a/driver/src/serial/uart8250.rs +++ b/driver/src/serial/uart8250.rs @@ -1,4 +1,7 @@ //! Copyright (c) 2023 Easton Man +//! +//! Adapted from MankorOS +//! //! Adapted from https://docs.rs/uart_16550/latest/src/uart_16550/mmio.rs.html use core::fmt::Write; diff --git a/kernel/src/main.rs b/kernel/src/main.rs index 71c0f562..6d61f013 100644 --- a/kernel/src/main.rs +++ b/kernel/src/main.rs @@ -1,3 +1,5 @@ +//! Boot process is adapted from Titanix + #![no_std] #![no_main] #![feature(alloc_error_handler)] diff --git a/kernel/src/mm/memory_space/mod.rs b/kernel/src/mm/memory_space/mod.rs index 85a96161..a2264749 100644 --- a/kernel/src/mm/memory_space/mod.rs +++ b/kernel/src/mm/memory_space/mod.rs @@ -46,7 +46,7 @@ pub struct MemorySpace { /// Map of `VmArea`s in this memory space. /// NOTE: stores range that is lazy allocated areas: SyncUnsafeCell>, - /// Pointes to leader task. + /// Points to leader task. task: Option>, } diff --git a/kernel/src/mm/user_ptr.rs b/kernel/src/mm/user_ptr.rs index 90a54394..912bd9be 100644 --- a/kernel/src/mm/user_ptr.rs +++ b/kernel/src/mm/user_ptr.rs @@ -1,5 +1,7 @@ //! # UserPtr //! +//! Adapted from MankorOS +//! //! Used for automatically check user ptr when reading or writing. use alloc::{string::String, sync::Arc, vec::Vec}; diff --git a/modules/executor/src/lib.rs b/modules/executor/src/lib.rs index 3f4c96be..f225144d 100644 --- a/modules/executor/src/lib.rs +++ b/modules/executor/src/lib.rs @@ -1,3 +1,5 @@ +//! Adapted from Titanix + #![no_std] #![no_main] diff --git a/modules/ext4/src/disk.rs b/modules/ext4/src/disk.rs index 430ce517..64f51b26 100644 --- a/modules/ext4/src/disk.rs +++ b/modules/ext4/src/disk.rs @@ -1,3 +1,5 @@ +//! Adapted from StarryOS + use alloc::sync::Arc; use config::board::BLOCK_SIZE; diff --git a/modules/sync/src/lib.rs b/modules/sync/src/lib.rs index 5992bb48..3ccaf68e 100644 --- a/modules/sync/src/lib.rs +++ b/modules/sync/src/lib.rs @@ -1,3 +1,5 @@ +//! Adapted from Titanix + #![no_std] #![no_main] #![feature(negative_impls)]