Comments (24)
excalidraw
from rcore-tutorial-book-v3.
最后一句 😊
这样就可以把文件看出是对外设的一种统一抽象
from rcore-tutorial-book-v3.
进程这一章节最后一张图 os 下第四个矩形是不是应该写:恢复A上下文?
from rcore-tutorial-book-v3.
太妙了,在进程这一小节里,使用“幻觉”而不是“假象”。因为“幻觉”是主观的,而“假象”是客观的。在宏观下,每个进程都在“同时”运行着,这本是一种人的主观感觉,所以使用“幻觉”,太严谨了。
from rcore-tutorial-book-v3.
对于该小节的第二张图片,有一点小建议:hypervisor的定义本身是高于supervisor的,这一点在图片中有明确的体现;但是对于hypervisor本身,依据其执行环境是可以分为type1(bare-metal hypervisor)以及type2(hosted hypervisor)两种类型的,对于KVM而言,对于其究竟是type1还是type2 hypervisor这个问题有比较大的争议——一方面KVM作为Linux module存在使得Linux本身成为了type1的hypervisor,而从另一个角度来看,(在通用计算机领域下)KVM仍然需要和其他服务竞争资源,因此也可以认为它是type2类型的hypervisor——这一点在图片中没有得到体现,或许可以用文字描述加以说明?第二点,qemu作为模拟器而存在,和KVM这类hypervisor还是存在较大差异,但是在图片中被归类为hypervisor。
这是我的一点小看法,可能不受用,谢谢。
from rcore-tutorial-book-v3.
from rcore-tutorial-book-v3.
中断 异常 章节图片:"回复上下文"应该是"恢复上下文"
from rcore-tutorial-book-v3.
异常控制流部分
“如果出现也外设中断或CPU异常” 应该是 “如果出现外设中断或CPU异常”
from rcore-tutorial-book-v3.
进程的第二张图片,看到读写section和只读section划分到了一起,之前在http://docs.linuxtone.org/ebooks/C&CPP/c/ch20s01.html 一书中的这个页面了解到只读section在默认ld的脚本中是和text section链接在一起形成代码段的。所以进程的第二张图片,描述内存布局这个地方是不是有一些小问题。
from rcore-tutorial-book-v3.
进程的第二张图片,看到读写section和只读section划分到了一起,之前在http://docs.linuxtone.org/ebooks/C&CPP/c/ch20s01.html 一书中的这个页面了解到只读section在默认ld的脚本中是和text section链接在一起形成代码段的。所以进程的第二张图片,描述内存布局这个地方是不是有一些小问题。
只读数据段 .rodata
实际上并不会和代码段 .text
合并到一起,它们和可读写数据段 .data
都是分开的。这里将 .rodata
和 .data
放在一起我认为并没错,因为它们仍然是两个不同的段。这个 后面的章节 可能会更清楚一点。
from rcore-tutorial-book-v3.
下一章提到的“基于操作系统的四个抽象”,在这一章来看是哪四个抽象并不显然,应该说的是执行环境,进程,虚拟地址,文件,建议调整一下目录的层次结构。
from rcore-tutorial-book-v3.
执行环境 (Execution Environment) 是一个内涵很丰富且有一定变化的一个术语,
可以去掉最后的“一个”。
from rcore-tutorial-book-v3.
CPU在执行过程中,可以在不同层次的执行环境之间可以切换,这称为 执行环境切换 。
可以去掉最后的“可以”。
from rcore-tutorial-book-v3.
进程的第二段第一句
站在计算机系统和操作系统的角度来看,就可以把“幻觉”去掉。其实,进程是应用程序的一次执行过程。并且在这个歌执行过程中
并且在这个歌执行过程中 --> 去掉"歌" 并且在这个执行过程中
from rcore-tutorial-book-v3.
这图是怎么画的, 感觉很给力啊。
我用官方的,字体并不是涂鸦风格。
有画图的地址分享下吗?
from rcore-tutorial-book-v3.
请问这个文档有pdf格式吗?这手册真是太好看啦。
from rcore-tutorial-book-v3.
做的真是太棒啦,我也想要pdf版本的
from rcore-tutorial-book-v3.
用心了,非常好!!!
from rcore-tutorial-book-v3.
这本书应该是参考过Operating Systems: Three Easy Pieces的,不过个人感觉这本书写的更好,重点内容更突出,真希望早一点看到这本书!
from rcore-tutorial-book-v3.
好奇制作图片用到的工具和使用的字体,看起来蛮舒服的
from rcore-tutorial-book-v3.
拍案叫绝!个人愚见:可以把这本书和Operating Systems: Three Easy Pieces这本书搭配在一起看。Operating Systems: Three Easy Pieces这本书是英文写的,英文表述很直接,非常容易抓住补表述的意思。现在这个教程可以用来加深理解Operating Systems: Three Easy Pieces。重点的重点其实就是借助这个教程作者的认知重新解构一次知识。
from rcore-tutorial-book-v3.
真的寫得太好了,非常受用!!!
from rcore-tutorial-book-v3.
@cs-xiyan 哪里的图?
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/chapter4/9answer HOT 7
- 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.