[rCore学习笔记 031] SV39多级页表的硬件机制

看到这个题目就知道上一节提到的RISC-V手册的10.6节又有用武之地了.这里只需注意,RV32的分页方案Sv32支持4GiB的虚址空间,RV64支持多种分页方案,但我们只介绍最受欢迎的一种,Sv39。:RISC-V的分页方案以SvX的模式命名,其中...

[rCore学习笔记 030] 虚拟地址与地址空间

时隔很久,终于忙里偷闲可以搞一搞rCore,上帝啊,保佑我日更吧,我真的很想学会.导读部分首先还是要看官方文档.我决定看一遍然后自己表述一遍(智将).这里反复提到MMU,就是因为之前学MCU的时候有一个疑问,就是为什么MCU上不选择跑一个Linux,当...

[rCore学习笔记 029] 动态内存分配器实现-以buddy_system_allocator源码为例

在上一部分,我们讲了动态内存分配器的原理是维护一个堆,而且是实现各种连续内存分配方法.但是上一部分是直接通过引用了buddy_system_allocator来解决的问题.那么对于内存分配算法有兴趣的我,还是决定看一下源码,总之人是咸鱼但是还是需要有梦想....

[rCore学习笔记 028] Rust 中的动态内存分配

引言想起我们之前在学习C的时候,总是提到malloc,总是提起,使用malloc现场申请的内存是属于堆,而直接定义的变量内存属于栈.还记得当初学习STM32的时候CubeIDE要设置stack和heap的大小.但是我们要记得,这么好用的功能,实际上是操...

[rCore学习笔记 027]地址空间

写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:1160712160@qq.comGitHhub:https://github.com/WindDevil(目前啥也没有引言兜兜转转又是新的一章的开始,还是首先要看官方手册里的理论介绍...

[rCore学习笔记 026]第三章作业

写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:1160712160@qq.comGitHhub:https://github.com/WindDevil(目前啥也没有编程题第一题扩展内核,能够显示操作系统切换任务的过程。首先先...

[rCore学习笔记 025]分时多任务系统与抢占式调度

写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:1160712160@qq.comGitHhub:https://github.com/WindDevil(目前啥也没有本节重点本章最开始的时候讲解了有类似于多道程序与协作式调度的区别...

[rCore学习笔记 01]安装VMwareWorkStationPro

写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:1160712160@qq.comGitHhub:https://github.com/WindDevil(目前啥也没有下载它随便找个地方下载,如果官网下载速度过慢:官网B站微信...

[rCore学习笔记 024]多道程序与协作式调度

写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:1160712160@qq.comGitHhub:https://github.com/WindDevil(目前啥也没有本节重点主要是对任务的概念进行进一步扩展和延伸:形成任务运...

[rCore学习笔记 023]任务切换

导读还是要先看官方手册.学过DMA的同志可能比较好理解,一句话,释放CPU总线:如果把应用程序执行的整个过程进行进一步分析,可以看到,当程序访问I/O外设或睡眠时,其实是不需要占用处理器的,于是我们可以把应用程序在不同时间段的执行过程分为两类,占...