Linux内核设计的艺术

Linux内核设计的艺术

图解Linux操作系统架构设计与实现原理

暂无评价综合评分的显示会考虑用户真实性等多项因素,每部作品出现综合评分的时间不定。
6.3125 评价豆瓣读书
免费试读

作品简介

关于Linux内核的书已经不计其数,但这本书却是独树一帜的,它的内容代表着Linux内核研究成果的世界顶尖级水平,它在世界范围内首次提出并阐述了操作系统设计的核心指导思想——主奴机制,这是所有操作系统研究者的一笔宝贵财富。本书可能也代表着同类图书的顶尖水平,是一本真正能引导我们较为容易地、极为透彻地理解Linux内核的经典之作,也可能是当前唯一能从本质上指引我们去设计和开发拥有自主知识产权的操作系统的著作。它的出版也许会成为Linux内核研究领域的一个里程碑事件。

本书的最大特点是它的写作方式和内容组织方式,与同类书完全不同。它在深刻地分析了传统讲解方法的利弊之后,破旧立新,从认知学的角度开创了一种全新的方式。以操作系统的真实运行过程为主线,结合真实的内核源代码、349幅精确的内核运行时序图和具有点睛之妙的文字说明,对操作系统从开机加电到系统完全准备就绪的整个过程进行了系统而完整地分析,深刻地揭示了其间每一个动作的设计意图和实现原理,完美地再现了操作系统设计者的设计思路。阅读本书就如同跟随着操作系统设计者一起去思考,我们会在阅读的过程中发现Linux内核设计的精妙,会发现原来处处都“暗藏玄机”,哪怕是一行很短的代码。

本书在所有细节上都力求完美。为了保证知识的准确性,操作系统运行过程中的每个动作都经过了严格的考证;为了让我们真正理解Linux内核的原理,它突破传统,以Linux的真实运行过程为主线进行讲解;为了做到真正易于理解,创新性地使用了图解的方式,精心绘制了349幅分辨率600dpi的时序图,图中表现的运行时结构和状态与操作系统实际运行时的真实状态完全吻合;为了提高阅读体验,本书采用了双色印刷,以便于我们更清楚地观察每一幅图中的细节。

作者:新设计团队。

作品目录

  1. 本书导读
  2. 一、本书约定
  3. 二、阅读建议
  4. 三、如何获得Linux 0.11源代码
  5. 四、搭建阅读本书的实践操作环境
  6. 前言
  7. 第1章 从开机加电到执行main函数之前的过程
  8. 1.1 启动BIOS,准备实模式下的中断向量表和中断服务程序
  9. 1.2 加载操作系统内核程序并为保护模式做准备
  10. 1.3 开始向32位模式转变,为main函数的调用做准备
  11. 1.4 本章小结
  12. 第2章 从main到怠速
  13. 2.1 开中断之前的准备工作
  14. 2.2 进程创建的最基本动作
  15. 2.3 加载根文件系统
  16. 2.4 打开终端设备文件及复制文件句柄
  17. 2.5 创建进程2
  18. 2.6 进程1等待进程2退出
  19. 2.7 shell程序的加载
  20. 2.8 系统实现怠速
  21. 2.9 小结
  22. 第3章 安装文件系统
  23. 3.1 获取硬盘设备号
  24. 3.2 获取虚拟盘上的挂接点
  25. 3.3 得到hd1设备文件的超级块
  26. 3.4 将hd1设备文件与mnt目录文件的i节点挂接
  27. 3.5 小结
  28. 第4章 文件操作
  29. 4.1 打开文件
  30. 4.2 读文件
  31. 4.3 新建文件
  32. 4.4 写文件
  33. 4.5 修改文件
  34. 4.6 关闭文件
  35. 4.7 删除文件
  36. 4.8 本章小结
  37. 第5章 用户进程与内存管理
  38. 5.1 用户进程的创建
  39. 5.2 为用户进程str1的加载做准备
  40. 5.3 对缺页中断的处理
  41. 5.4 str1用户进程的退出
  42. 5.5 多个用户进程“同时”运行
  43. 5.6 进程的调度与切换
  44. 5.7 内核的分页
  45. 5.8 页写保护
  46. 5.9 小结
  47. 第6章 多个进程“同时”操作一个文件
  48. 6.1 三个进程操作同一个文件
  49. 6.2 缓冲区与外设的数据同步
  50. 6.3 小结
  51. 第7章 IPC问题
  52. 7.1 管道机制
  53. 7.2 信号机制
  54. 7.3 小结
  55. 第8章 操作系统的设计指导思想
  56. 8.1 运行一个最简单的程序,看操作系统为程序运行做了哪些工作
  57. 8.2 操作系统的设计指导思想—主奴机制
  58. 8.3 实现主奴机制的三种关键技术
  59. 8.4 建立主奴机制的决定性因素—先机
  60. 8.5 软件和硬件的关系:主机与进程、外设与文件
  61. 8.6 父子进程共享页面
  62. 8.7 操作系统的全局中断与进程的局部中断—信号
  63. 8.8 小结
  64. 结束语
  65. “新设计团队”简介
  66. 作者的话
  67. 联系作者
  68. 附录 搭建Linux 0.11系统环境
  69. 一、boch仿真器的安装及配置
  70. 二、运行
载入中

喜欢这本书的人也喜欢