云端书斋 -Unix内核源码剖析
本书资料更新时间:2025-01-19 17:24:25

Unix内核源码剖析 下载 pdf 百度网盘 epub 免费 2025 电子书 mobi 在线

Unix内核源码剖析精美图片
》Unix内核源码剖析电子书籍版权问题 请点击这里查看《

Unix内核源码剖析书籍详细信息

  • ISBN:9787115345219
  • 作者:暂无作者
  • 出版社:暂无出版社
  • 出版时间:2014-3-1
  • 页数:342
  • 价格:79.00元
  • 纸张:暂无纸张
  • 装帧:暂无装帧
  • 开本:暂无开本
  • 语言:未知
  • 丛书:暂无丛书
  • TAG:暂无
  • 豆瓣评分:暂无豆瓣评分
  • 豆瓣短评:点击查看
  • 豆瓣讨论:点击查看
  • 豆瓣目录:点击查看
  • 读书笔记:点击查看
  • 原文摘录:点击查看
  • 更新时间:2025-01-19 17:24:25

内容简介:

为什么要阅读内核源代码

● 对计算机系统的全貌有更深入的了解

● 对学到的算法和思路举一反三

● 加深对操作系统的理解

● 提升自身的技术水平

为什么选择UNIX V6?

● 代码行数约为1 万行

● 有充实的资料可参考

● 网罗了操作系统的基本功能

● 简化的设计

● 便于读者对系统有完整的了解

● 有模拟器可供参考

本书是一本Unix内核源代码的阅读指南。作者结合UNIX V6已公开的相关文档,对其内核源码进行详细剖析,旨在让读者更深入地理解进程、中断、块I/O系统、文件系统、字符I/O系统、启动系统等操作系统的基本原理。

本书适合操作系统的初中级学习者阅读,特别适合通过大学课程和其他入门书对操作系统有所了解,但是对具体细节缺乏深入理解的读者,以及那些对操作系统的具体实现有兴趣的读者。


书籍目录:

第I部分

什么是UNIX V6  1

第1章 UNIX V6的全貌  2

1.1  什么是UNIX  V6  2

1.2  UNIX的历史2

1.3  UNIX  V6内核  4

1.4  构成UNIX V6运行环境的硬件  4

PDP-11  5

1.5  代码  9

1.6  手册  9

1.7  小结  10

第II部分

进程  11

第2章 进程  12

2.1  进程的概要  12

什么是进程  12

进程的并行执行  12

进程的执行状态  14

用户模式和内核模式  14

交换处理15

2.2  proc结构体和user结构体  15

proc结构体  16

user结构体  17

2.3  为进程分配的内存  21

代码段  21

数据段  21

虚拟地址空间  22

变换地址  24

2.4  小结  26

第3章 进程的管理I  27

3.1  进程的生命周期  27

3.2  创建进程  28

进程的复制  28

父进程和子进程  29

系统调用fork  29

newproc()  32

panic()  36

3.3  切换执行进程  37

中断执行进程  37

进程的执行状态  37

选择执行进程的算法  38

上下文切换  39

系统调用wait  39

sleep()  39

swtch()  41

swtch()  的返回位置  44

setpri()  51

wakeup()  51

setrun()  52

3.4  执行程序  53

程序执行文件的格式  53

系统调用exec  54

estabur()  62

sureg()  65

expand()  66

3.5  进程的终止  68

系统调用exit  69

系统调用wait  71

3.6  数据区域的扩展  73

系统调用break  73

3.7  管理内存和交换空间  76

map结构体  76

获取未使用区域  77

释放区域  79

3.8  小结  81

第4章 交换处理  82

4.1  什么是交换处理  82

代码段和数据段  82

sched()  83

xswap()  87

4.2  共享代码段的处理  88

xalloc()  90

xfree()  93

xccdec()  93

4.3  小结  94

第III  部分

中断  95

第5章 中断与陷入  96

5.1  什么是中断与陷入  96

什么是中断  96

什么是陷入  97

5.2  优先级与向量(Vector)  98

中断优先级和处理器优先级  98

中断和陷入向量  100

5.3  中断和陷入的处理流程  100

发生中断或陷入  101

执行call和trap  104

5.4  时钟中断处理函数  107

时钟设备的规格  107

时钟中断处理函数的内容  108

clock()  113

5.5  陷入处理函数  117

trap()  117

grow()  122

5.6  系统调用的处理流程  123

传递参数的方法  123

sysent结构体  124

trap()  126

5.7  小结  128

第6章 信号  129

6.1  什么是信号  129

信号的发送方法  129

确认接收信号  129

信号的种类  130

ssig()  131

kill()  132

signal()  133

psignal()  133

issig()  134

psig()  134

core()  136

在系统调用处理中处理信号  136

6.2  跟踪功能  137

什么是跟踪  137

ipc结构体  138

跟踪的处理流程  138

stop()  139

ptrace()  140

procxmt()  142

wait()  143

6.3  小结  144

第IV  部分

块I/O  系统  145

第7章 块设备子系统  146

7.1  设备的基础  146

设备的种类  146

设备驱动  146

类别和设备编号  147

特殊文件  147

7.2  块设备子系统  148

缓冲区  148

b-list和av-list  150

RAW  输入输出  151

7.3  缓冲区的初始化  152

binit()  152

clrbuf()  153

7.4  缓冲区的获取和释放  154

getblk()  154

notavail()  156

brelse()  157

7.5  读取  158

读取的种类  158

bread()  159

iowait()  160

iodone()  160

geterror()  161

breada()  161

incore()  162

7.6  写入  163

写入的种类  163

bwrite()  164

bawrite()  165

bdwrite()  165

bflush()  166

7.7  RAW输入输出  167

physio()  167

swap()  169

7.8  小结  171

第8章 块设备驱动  172

8.1  什么是块设备驱动  172

块设备驱动表  172

设备处理队列  173

处理流程  173

8.2  RK-11磁盘驱动  174

RK11-D  175

特殊文件  175

设定bdevsw[]  176

中断处理函数  176

RK11-D  的寄存器  177

rkstrategy()  179

rkstart()  180

rkaddr()  180

devstart()  181

rkintr()  182

RAW  输入输出  184

8.3  小结  184

第V  部分

文件系统  185

第9章 文件系统  186

9.1  什么是文件系统  186

inode  186

树状结构的命名空间  187

挂载  187

访问权限  188

根磁盘  189

9.2  块设备的区域  189

用于启动的区域  190

超级块  190

inode区域  191

存储区域  193

9.3  挂载  193

mount结构体  193

系统调用mount  194

getmdev()  196

系统调用umount  197

9.4  inode的获取和释放  198

inode[]  198

iget()  201

iput()  203

iupdat()  204

9.5  inode与存储区域的对应关系  205

bmap()  208

itrunc()  211

9.6  分配块设备中的块  213

ialloc()  213

ifree()  216

alloc()  217

free()  220

getfs()  222

badblock()  222

9.7  将路径变为inode  223

目录的内容  223

namei()  224

access()  230

9.8  初始化与同步  232

iinit()  232

update()  232

9.9  小结  234

第10章 文件处理  235

10.1  用户程序对文件的处理  235

10.2  3  个结构体  235

标准输入输出  237

10.3  文件的生成和打开处理  237

系统调用creat  238

maknode()  238

wdir()  239

系统调用open  240

open1()  241

falloc()  242

ufalloc()  243

openi()  243

10.4  文件的读取和写入  244

系统调用read、write  244

rdwr()  245

readi()  246

writei()  248

iomove()  250

getf()  252

10.5  指定文件的读写位置  252

系统调用seek  252

10.6  关闭文件  254

系统调用close  254

closef()  254

closei()  255

10.7  目录的生成  255

系统调用mknod  255

10.8  文件的链接  256

系统调用link  257

suser()  258

10.9  删除文件  258

系统调用unlink  258

10.10  小结  260

第11章 管道  261

11.1  什么是管道  261

使用管道的优点  262

11.2  开始管道通信  262

系统调用pipe  262

11.3  收发数据  264

writep()  264

readp()  266

plock()  267

prele()  267

11.4  结束管道通信  268

closef()  268

11.5  建立管道通信的流程  268

建立父子进程间的通信  268

系统调用dup  272

11.6  小结  273

第VI  部分

字符I/O  系统  275

第12章 字符设备  276

12.1  字符设备驱动  276

字符设备缓冲区  277

对缓冲区的操作  278

初始化缓冲区池  280

12.2  LP11设备驱动  281

什么是LP11  281

LP11设备驱动的功能  282

lpopen()  284

lpwrite()  285

lpcanon()  285

lpoutput()  287

lpstart()  288

lpint()  288

lpclose()  289

12.3  小结  289

第13章 电传终端  290

13.1  什么是电传终端  290

电传终端的接口  290

特殊文件  291

tty  结构体  292

maptab[]  295

partab[]  295

KL11/DL11  296

KL11/DL11设备驱动的规格  297

KL11/DL11设备驱动函数  298

13.2  终端的开启和关闭  298

klopen()  298

klclose()  300

wflushtty()  300

flushtty()  301

13.3  终端的设定  302

gtty()  302

stty()  302

sgtty()  303

klsgtty()  304

ttystty()  304

13.4  从终端输入文字  305

klrint()  306

ttyinput()  306

13.5  读取输入的数据  308

klread()  309

ttread()  309

canon()  310

13.6  向终端输出数据  313

klwrite()  314

ttwrite()  315

ttyoutput()  316

ttstart()  318

ttrstrt()  319

klxint()  320

13.7  小结  320

第VII  部分

启动系统  321

第14章 启动系统  322

14.1  启动的流程  322

start  323

main()  326

/etc/init  329

14.2  小结  330

附 录  参考资料等  331

A.1 参考文献、网站  331

A.2 pre  K&R  C  335

后记  337

索引  338


作者介绍:

作者简介:

青柳隆宏

日本资深程序员,现在硅谷从事计算机处理芯片的设计工作。曾设计了超级计算机“京”的L1缓存,该计算机在2011年排名世界Top 500超级计算机的第1位,也是人类历史上第一台计算能力跨越1亿亿次每秒的计算系统。作者Email:v6@gachapin.jp。

译者简介:

殷中翔

日本国立九州大学系统信息专业硕士学位。具有十余年软件开发经验,现主要从事企业Web系统服务器端的开发及维护工作。

黄炎

同济大学本科毕业,现供职于上海爱可生,从事数据库高可用软件开发。大学有幸师从陈闳中教授,一窥UNIX V6代码的门径。

周金杰

同济大学硕士,法国国立高等电信学院(TELECOM PARIS)硕士。曾通读并研究UNIX V6源代码,同时参与了面向对象操作系统的移植以及操作系统调试器的开发工作,熟悉系统底层相关的技术知识。崇尚设计,享受编程给生活带来的乐趣。


出版社信息:

暂无出版社相关信息,正在全力查找中!


书籍摘录:

暂无相关书籍摘录,正在全力查找中!


在线阅读/听书/购买/PDF下载地址:


原文赏析:

暂无原文赏析,正在全力查找中!


其它内容:

书籍介绍

为什么要阅读内核源代码

● 对计算机系统的全貌有更深入的了解

● 对学到的算法和思路举一反三

● 加深对操作系统的理解

● 提升自身的技术水平

为什么选择UNIX V6?

● 代码行数约为1 万行

● 有充实的资料可参考

● 网罗了操作系统的基本功能

● 简化的设计

● 便于读者对系统有完整的了解

● 有模拟器可供参考

本书是一本Unix内核源代码的阅读指南。作者结合UNIX V6已公开的相关文档,对其内核源码进行详细剖析,旨在让读者更深入地理解进程、中断、块I/O系统、文件系统、字符I/O系统、启动系统等操作系统的基本原理。

本书适合操作系统的初中级学习者阅读,特别适合通过大学课程和其他入门书对操作系统有所了解,但是对具体细节缺乏深入理解的读者,以及那些对操作系统的具体实现有兴趣的读者。


书籍真实打分

  • 故事情节:7分

  • 人物塑造:6分

  • 主题深度:3分

  • 文字风格:4分

  • 语言运用:9分

  • 文笔流畅:4分

  • 思想传递:4分

  • 知识深度:9分

  • 知识广度:3分

  • 实用性:6分

  • 章节划分:9分

  • 结构布局:4分

  • 新颖与独特:4分

  • 情感共鸣:9分

  • 引人入胜:7分

  • 现实相关:5分

  • 沉浸感:3分

  • 事实准确性:6分

  • 文化贡献:5分


网站评分

  • 书籍多样性:9分

  • 书籍信息完全性:7分

  • 网站更新速度:7分

  • 使用便利性:8分

  • 书籍清晰度:7分

  • 书籍格式兼容性:8分

  • 是否包含广告:5分

  • 加载速度:8分

  • 安全性:4分

  • 稳定性:7分

  • 搜索功能:4分

  • 下载便捷性:5分


下载点评

  • 收费(121+)
  • 下载快(572+)
  • 少量广告(614+)
  • 一星好评(361+)
  • 值得下载(529+)
  • 推荐购买(668+)
  • 愉快的找书体验(421+)
  • 无漏页(180+)
  • 傻瓜式服务(440+)
  • 赞(178+)
  • 书籍完整(378+)
  • 好评(92+)

下载评价

  • 网友 融***华: ( 2025-01-10 06:12:04 )

    下载速度还可以

  • 网友 孙***夏: ( 2024-12-30 06:11:48 )

    中评,比上不足比下有余

  • 网友 冯***卉: ( 2024-12-30 04:59:38 )

    听说内置一千多万的书籍,不知道真假的

  • 网友 菱***兰: ( 2025-01-14 00:25:58 )

    特好。有好多书

  • 网友 常***翠: ( 2024-12-29 12:40:09 )

    哈哈哈哈哈哈

  • 网友 益***琴: ( 2025-01-16 00:50:54 )

    好书都要花钱,如果要学习,建议买实体书;如果只是娱乐,看看这个网站,对你来说,是很好的选择。

  • 网友 方***旋: ( 2025-01-17 16:02:20 )

    真的很好,里面很多小说都能搜到,但就是收费的太多了

  • 网友 师***怀: ( 2024-12-28 05:50:51 )

    好是好,要是能免费下就好了

  • 网友 丁***菱: ( 2024-12-22 00:02:59 )

    好好好好好好好好好好好好好好好好好好好好好好好好好

  • 网友 步***青: ( 2025-01-09 19:05:50 )

    。。。。。好

  • 网友 隗***杉: ( 2024-12-26 19:47:55 )

    挺好的,还好看!支持!快下载吧!


随机推荐