Unix内核源码剖析

Unix内核源码剖析 PDF 全格式原版

  • 大小:26.3 MB
  • 类型:Unix
  • 格式:PDF
  • 热度:631
  • 作者:青柳隆宏
  • 更新:2019-09-20 20:42:35
vip 立即下载( 26.3 MB )
关注公众号免费下载
版权投诉 / 资源反馈(本资源由用户 金童彤 投稿)

给大家整理一篇Unix相关的资料,由人民邮电出版社出版,作者是青柳隆宏,介绍了关于Unix、内核、源码、剖析方面,格式为PDF,资源大小26.3 MB,目前在Unix类资源综合评分为:7.2分。

Unix资源推荐

书籍介绍

Unix内核源码剖析 PDF

选读1万行编码,深层次了解操作系统原理!

高性能计算机“京”的L1缓存文件设计师青柳隆宏经典书籍!

完全了解Unix源码!

需不需要阅读文章核心源码

 对计算机软件的全景图有更深层次的掌握

 对学得的优化算法和构思触类旁通

 加重对电脑操作系统的了解

 提高本身的技术实力

为何挑选UNIX V6?

 编码行数约为1 万行

 有丰富的材料可参照

 手机了电脑操作系统的基本要素

 简单化的布置

 有利于用户系统对有详细的掌握

 有手机模拟器可供参考

这书是1本Unix核心源码的阅读文章手册。创作者融合UNIX V6已公布的有关文本文档,对其核心源代码开展详尽分析,致力于让用户更深层次地了解系统进程、终断、块I/O系统软件、系统文件、空格符I/O系统软件、起动系统软件等电脑操作系统的基本概念。《Unix核心源代码分析》是1本UNIX V6核心源码的阅读文章手册。创作者融合UNIX V6已公布的有关文本文档,对UNIX V6的核心源代码开展详尽分析,致力于让用户更深层次地了解系统进程、终断、块I/O系统软件、系统文件、空格符I/O系统软件、起动系统软件等电脑操作系统的基本概念。

Unix核心源代码分析》合适电脑操作系统的初级学生阅读文章,非常合适根据大学课程和别的新手入门书对电脑操作系统有一定的掌握,可是对实际关键点欠缺深层次了解的用户,及其这些对电脑操作系统的实际保持有兴趣爱好的用户。

目录

  • 第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

以上就是本次关于书籍资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。

相关资源

  • 数据库管理系统原理与设计(第3版)

    数据库管理系统原理与设计(第3版) 课后答案

    《数据库管理系统原理与设计(第3版)》是2012年清华大学出版社出版的图书,作者是罗摩克里希纳 (Raghu Ramakrishnan、格尔基 (Johannes Gehrke)。 本书由于内容全面,实践性强,已经成为了数据库课程的首选教材。全书分为数据库基础,应用程序开发、存储与索引、查询评估、事务管理、数据库设计与调整、高级主题等七大部分,对数据库的设计与使用、数据库管理系统基本原理与实现技术,以及数据库研究的新进展做了详细论述。 《数据库管理系统原理与

    大小:6.74 MB数据库管理课后答案

  • C#程序设计实用教程

    C#程序设计实用教程 课后答案

    本教程以Visual Studio.NET 2005为开发平台。全书共分成两个部分,部分为基础实验部分; 第2部分为课程设计部分。其中,部分给出了12个基础实验,基本覆盖了C#程序设计的主要知识点、方法和技巧; 第2部分给出了课程设计的任务书与指导书,以及若干个课程设计题目和两个课程设计项目案例(基于C#、SQL Server 2005的MIS系统)。教程中的项目案例的源代码和数据库放在清华大学出版社网站(www.tup.com.cn)中,可供读者参考。 本教程特别适合于C#的初学者,也适

    大小:585 KBC#课后答案

  • 《Wireshark网络分析实战(第2版)》彩图文件

    《Wireshark网络分析实战(第2版)》彩图文件

    内容介绍 《Wireshark网络分析实战(第2版)》是同名畅销图书的全新升级版,按部就班地讲解了 Wireshark的用法以及如何使用该工具解决实际的网络问题。 《Wireshark网络分析实战(第2版)》共分为19章,其内容涵盖了Wireshark版本2简介,熟练使用Wireshark排除网络故障,抓包过滤器的用法,显示过滤器的用法,基本信息统计工具的用法,高级信息统计工具的用法,Expert Information工具的用法,Ethernet和LAN交换,无线LAN,网络层协议及其运作方式,传输层协

    大小:99.79 MBWireshark配套资源

  • 密码学与网络安全

    密码学与网络安全 课后答案

    本书延续了Forouzan先生一贯的风格,以通俗易懂的方式全面阐述了密码学与计算机网络安全问题所涉及的各方面内容,从全局角度介绍了计算机网络安全的概念、体系结构和模式。本书以因特网为框架,以形象直观的描述手法,详细地介绍了密码学、数据通信和网络领域的基础知识、基本概念、基本原理和实践方法,堪称密码学与网络安全方面的经典著作。 本书(包括其中文导读英文版)可作为大学本科通信相关专业的教科书,也可作为对密码学与网络安

    大小:7.48 MB密码学课后答案

  • 《C语言程序设计》教案,源代码

    《C语言程序设计》教案,源代码

    内容介绍 《C语言程序设计》较全面地讲述了C语言程序设计的基础知识,主要内容包括基本数据类型和运算符、控制结构、函数、数组、指针、结构与共用、文件以及文本与图形处理。每一章都附有精选的、多种类型的练习题,有助于读者复习、巩固所学知识,培养读者的实际编程能力。《C语言程序设计》结构严谨,重点突出,由浅入深,举例经典。 《C语言程序设计》可以作为各类高等院校、告知院校计算机专业及理工科非计算机专业学生学习计算机

    大小:4.71 MBC语言配套资源

  • 《数据库应用技术(SQL Server 2005)》素材,教案

    《数据库应用技术(SQL Server 2005)》素材,教案

    编辑推荐 本书按照数据库系统开发的概念设计、逻辑设计、物理设计、应用开发和系统维护工作流程,同时考虑学生的认知规律,精心设计了两个简单案例,贯穿到各个章节中,并设计了一个综合项目作为每一章后的任务训练。案例和项目任务的设计力求满足各教学单元能力培养的目标,使得理论知识的体系和各单元之间紧密衔接。同时也注意了任务的可拓展性,鼓励学生在任务内容的驱动下,探索解决问题的新方法和新技巧。 以数据库系统的开发工

    大小:11.71 MB数据库应用配套资源

  • 面向对象程序设计(c++版)

    面向对象程序设计(c++版) 课后答案

    本书是面向对象程序设计的基础及提高教程,首先介绍了面向对象的相关概念和C++程序设计的相关知识,包括类、对象、继承、重载、多态、虚函数以及流等;然后介绍了Visual C++集成开发环境、 MFC程序设计的方法和思路,包括对话框、资源的创建和使用、简单的图形的文本输出、Windows标准控件等内容,还介绍了有关数据库编程以及3D建模引擎ACIS的内容。本书把C++的概念与Visual C++可视化设计结合起来,使学生更加容易接受。本书是作者总结多年教学实践

    大小:5.89 MB面向对象课后答案

  • 概率引论

    概率引论 课后答案

    《概率引论》较系统地介绍了概率论的基本内容,内容丰富,富有时代特色,书中有许多新的简明讲法,帮助学生更好地理解所学的内容和加深对问题本质的理解,《概率引论》以讲授概率论的基本思想方法为主,同时介绍概率论的诸多应用背景,《概率引论》讲授的微分法是计算随机变量和随机向量函数分布的简洁新方法,条件分布和边缘分布的计算方法也都简单易行,较大程度地降低了数学难度,在判断随机变量的独立性方面,也有十分简单的新方

    大小:2.31 MB概率课后答案

下载地址

相关声明:

学习笔记