之前利用很长一段时间看了《深入理解linux内核》(ULK),感觉能看懂个50%,还是有很多感念没有深刻理解。
其中讲到的一些东西涉及《深入理解计算机系统》里的一些感念。所以感觉有必要从新再理解一遍《深入理解计算机系统》。
在接下来的一段时间,准备写写读书笔记,不知道能不能坚持下来,今天算是开始吧。
在第1章里,提到一个操作系统抽象的概念,感觉有必要写下来分享一下。
操作系统为应用程序提供对计算机硬件的操作。操作系统使用了一些抽象概念对硬件做了抽象,其中:
1、文件是对I/O设备的抽象。
2、虚拟存储器是对I/O设备和主存的抽象。(《深入理解linux内核》中讲到的内存映射就是说的这个)
3、进程是对I/O设备、主存和CPU的抽象。(进程的地址空间,文件对象,还有进程的调度估计就是说这些)
----------------------------------------------------------
| 进程 |
| -------------------------------------
| | 虚拟存储器 |
| | -------------------
| | | 文件 |
----------------------------------------------------------
| 处理器 | 主存 | I/O设备 |
----------------------------------------------------------