Zhen Xuan

Results 7 comments of Zhen Xuan

@hnyls2002 我看的代码里是`pub const KERNEL_HEAP_SIZE: usize = 0x200_0000;`

请问`MapArea`中的`pub fn copy_data(&mut self, page_table: &mut PageTable, data: &[u8])`函数为什么一定需要`page_table`这个参数,按理说我们完全可以通过`MapArea`中的`data_frames`来完成同样的事情啊,比如我这么写: ```Rust pub fn copy_data(&mut self, _page_table: &mut PageTable, data: &[u8]) { assert_eq!(self.map_type, MapType::Framed); let mut start: usize = 0; let mut...

> 四个逻辑段`.text/.rodata/.data/.bss`被恒等映射到物理内存,这使得我们在无需调整内核内存布局 `os/src/linker.ld`的情况下就仍能和启用页表机制之前那样访问内核的各数据段。 请问这里无需调整内核内存布局仍能像之前那样访问内核各数据段是什么意思呢? `linker.ld`链接时候的地址应该也都是虚拟地址我的理解?只要QEMU加载的时候把内核加载到`0x80200000`就可以了吧

为什么在`StackFrameAllocator`的`alloc`实现中还需要`Some((self.current - 1).into())`?我的理解这里的`current`已经就是`PhysPageNum`了吧,还是说Rust不支持这样的类型转换?

第二行“主要注意额是”应改为“主要注意的是”