rCore-Tutorial-Book-v3 icon indicating copy to clipboard operation
rCore-Tutorial-Book-v3 copied to clipboard

rCore-Tutorial-Book-v3/chapter0/3os-hw-abstract

Open utterances-bot opened this issue 4 years ago • 27 comments

操作系统抽象 — rCore-Tutorial-Book-v3 0.1 文档

https://rcore-os.github.io/rCore-Tutorial-Book-v3/chapter0/3os-hw-abstract.html

utterances-bot avatar Feb 19 '21 13:02 utterances-bot

最后一句 😊

这样就可以把文件看出是对外设的一种统一抽象

Joeyscat avatar Feb 19 '21 13:02 Joeyscat

进程这一章节最后一张图 os 下第四个矩形是不是应该写:恢复A上下文?

einsitang avatar Feb 20 '21 01:02 einsitang

好奇制作图片用到的工具和使用的字体,看起来蛮舒服的

imjustfly avatar Feb 20 '21 02:02 imjustfly

excalidraw

tiyee avatar Feb 20 '21 08:02 tiyee

中断 异常 章节图片:"回复上下文"应该是"恢复上下文"

aliiohs avatar Feb 27 '21 08:02 aliiohs

异常控制流部分

“如果出现也外设中断或CPU异常” 应该是 “如果出现外设中断或CPU异常”

elenacliu avatar Mar 05 '21 07:03 elenacliu

进程的第二张图片,看到读写section和只读section划分到了一起,之前在http://docs.linuxtone.org/ebooks/C&CPP/c/ch20s01.html 一书中的这个页面了解到只读section在默认ld的脚本中是和text section链接在一起形成代码段的。所以进程的第二张图片,描述内存布局这个地方是不是有一些小问题。

fadedzipper avatar Mar 08 '21 05:03 fadedzipper

进程的第二张图片,看到读写section和只读section划分到了一起,之前在http://docs.linuxtone.org/ebooks/C&CPP/c/ch20s01.html 一书中的这个页面了解到只读section在默认ld的脚本中是和text section链接在一起形成代码段的。所以进程的第二张图片,描述内存布局这个地方是不是有一些小问题。

只读数据段 .rodata 实际上并不会和代码段 .text 合并到一起,它们和可读写数据段 .data 都是分开的。这里将 .rodata.data 放在一起我认为并没错,因为它们仍然是两个不同的段。这个 后面的章节 可能会更清楚一点。

wyfcyx avatar Mar 08 '21 05:03 wyfcyx

下一章提到的“基于操作系统的四个抽象”,在这一章来看是哪四个抽象并不显然,应该说的是执行环境,进程,虚拟地址,文件,建议调整一下目录的层次结构。

rengelin avatar Jun 09 '21 09:06 rengelin

执行环境 (Execution Environment) 是一个内涵很丰富且有一定变化的一个术语,

可以去掉最后的“一个”。

mailofzxf avatar Jun 11 '21 11:06 mailofzxf

CPU在执行过程中,可以在不同层次的执行环境之间可以切换,这称为 执行环境切换 。

可以去掉最后的“可以”。

mailofzxf avatar Jun 11 '21 11:06 mailofzxf

进程的第二段第一句 站在计算机系统和操作系统的角度来看,就可以把“幻觉”去掉。其实,进程是应用程序的一次执行过程。并且在这个歌执行过程中

并且在这个歌执行过程中 --> 去掉"歌" 并且在这个执行过程中

sigma65535 avatar Sep 24 '21 13:09 sigma65535

这图是怎么画的, 感觉很给力啊。 我用官方的,字体并不是涂鸦风格。

有画图的地址分享下吗?

haskio avatar Dec 07 '21 03:12 haskio

请问这个文档有pdf格式吗?这手册真是太好看啦。

lnlidawei avatar Dec 10 '21 20:12 lnlidawei

做的真是太棒啦,我也想要pdf版本的

PrimaryCY avatar Mar 29 '22 07:03 PrimaryCY

用心了,非常好!!!

pplltech avatar Apr 05 '22 10:04 pplltech

拍案叫绝!个人愚见:可以把这本书和Operating Systems: Three Easy Pieces这本书搭配在一起看。Operating Systems: Three Easy Pieces这本书是英文写的,英文表述很直接,非常容易抓住补表述的意思。现在这个教程可以用来加深理解Operating Systems: Three Easy Pieces。重点的重点其实就是借助这个教程作者的认知重新解构一次知识。

pplltech avatar Apr 05 '22 10:04 pplltech

这本书应该是参考过Operating Systems: Three Easy Pieces的,不过个人感觉这本书写的更好,重点内容更突出,真希望早一点看到这本书!

daifengqi avatar May 02 '22 05:05 daifengqi

太妙了,在进程这一小节里,使用“幻觉”而不是“假象”。因为“幻觉”是主观的,而“假象”是客观的。在宏观下,每个进程都在“同时”运行着,这本是一种人的主观感觉,所以使用“幻觉”,太严谨了。

LeQianQian avatar Aug 20 '22 14:08 LeQianQian

真的寫得太好了,非常受用!!!

WEIhabi avatar Aug 24 '22 14:08 WEIhabi

对于该小节的第二张图片,有一点小建议: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。 这是我的一点小看法,可能不受用,谢谢。

PinkGranite avatar Apr 12 '23 04:04 PinkGranite

第一张图中API应该在ABI上面。可以参考下这个 API和ABI

cs-xiyan avatar May 30 '23 10:05 cs-xiyan

@cs-xiyan 哪里的图?

xuanz20 avatar Aug 09 '23 15:08 xuanz20

勘误建议: 控制流上下文 标题下的: 那么这个属于某个应用程序的控制流可简称为某进程上下文 改为 那么这个属于某个应用程序的控制流的上下文可简称为某进程上下文

nothyh avatar Oct 29 '23 02:10 nothyh