Comments (7)
@kayoch1n 不是的,是说每个进程一个页表,低地址空间为应用的数据,高地址空间为内核的数据。所有进程共享高地址空间的内核数据,但低地址空间的应用数据每个应用是不同的。
from rcore-tutorial-book-v3.
在使用高级语言编写用户程序的时候,手动用嵌入汇编的方法随机访问一个不在当前程序逻辑地址范围内的地址,比如向该地址读/写数据。该用户程序执行的时候可能会生什么?
可能会报出缺页异常.
缺页异常是否有些不合适呢?题设给出的是访问超出当前程序逻辑地址范围内的地址,那么这种访问会在MMU进行逻辑地址检查时候就会出现异常,这种异常叫做内存异常是否会更好一些呢?
from rcore-tutorial-book-v3.
为何使用虚拟内存之后 sys_get_time 会失效?我理解 sys_get_time 最终只是读取 0xC01 的CSR,并没有读写内存的操作,不太理解?
from rcore-tutorial-book-v3.
为何使用虚拟内存之后 sys_get_time 会失效?我理解 sys_get_time 最终只是读取 0xC01 的CSR,并没有读写内存的操作,不太理解?
我之前看漏了,原来 sys_get_time 是有一个指针参数的 😂 还有一个疑问就是编程题第二题 “任务和操作系统内核共用同一张页表的单页表机制”,按照我的理解是不是就只能放到同一个地址空间里了?让不同的任务用不同的区域,这样好像就变回了第四章之前的物理内存布局
from rcore-tutorial-book-v3.
页式虚拟存储还可以同时解决内存外碎片。提高空间利用率。
这个说法是否不太严谨?页式虚存能够解决外碎片,但是只能在一定程度上缓解内碎片的产生,但不能根治吧,它相对于固定分区的情形肯定是在内碎片上优化了很多,但还是会有内碎片。
from rcore-tutorial-book-v3.
@chestNutLsj 确实不太严谨,已修改。
from rcore-tutorial-book-v3.
问答题第五题,页目录表(一级页表)不应该一直长驻内存吗,二级、三级也变可能会缺页,但一级页表不会发生缺页吧
from rcore-tutorial-book-v3.
Related Issues (20)
- 我想在user_lib中syscall的部分对Read操作增加枚举 HOT 1
- rCore-Tutorial-Book-v3/chapter8/4condition-variable HOT 1
- rCore-Tutorial-Book-v3/chapter8/5concurrency-problem HOT 4
- rCore-Tutorial-Book-v3/chapter0/8answer HOT 1
- ch4-lab无法编译成功 HOT 4
- rCore-Tutorial-Book-v3/chapter0/7exercise
- rCore-Tutorial-Book-v3/chapter7/3cmdargs-and-redirection HOT 2
- 1. 运行完第一个用户程序之后,run_next_app()函数是被什么东西调用的?。进入_restore之后,匹配到的是用户申请的trap,不会运行run_next_app
- 建议将本书中部分”同学“字样 修改成 ”同学们“
- ch9: 2device-driver-3 成员变量 `avail_idx` 是可用环索引
- ch8: 用户态的线程管理一节 spawn 方法中 s_ptr.offset(32) 问题
- rCore-Tutorial-Book-v3/appendix-d/1asm HOT 1
- rCore-Tutorial-Book-v3/chapter9/2device-driver-0 HOT 4
- 代码仓RustSBI兼容性适配的对应文档更新
- rCore-Tutorial-Book-v3/chapter9/2device-driver-4 HOT 2
- rCore-Tutorial-Book-v3/chapter9/5answer HOT 1
- 优化调度算法一节的描述并修复错误
- 一些功能与内容方面的建议 HOT 4
- 新增基于vscode的devcontainer插件,利用docker配置环境的相关说明
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rcore-tutorial-book-v3.