热门关键字:  听力密码  单词密码  新概念美语  巧用听写练听力  零起点

操作系统原理及应用(Linux)(第二版)

中国水利水电出版社
    【作 者】王红 主编 【I S B N 】978-7-5084-5570-9 【责任编辑】徐雯 【适用读者群】本科 【出版时间】2008-05-01 【开 本】16开本 【装帧信息】平装(光膜) 【版 次】2008年05月第2版 【页 数】276 【千字数】 【印 张】 【定 价】28 【丛 书】21世纪高等院校规划教材 【备注信息】
图书详情

      本书介绍操作系统的基本原理及应用,并以Linux操作系统作为具体实例加以说明。全书共9章,主要内容包括操作系统的基本概念、功能、发展史及Linux操作系统概述;进程的概念、进程描述、进程控制、进程的同步与互斥、进程通信及线程;作业调度及进程调度、死锁的概念与产生原因以及解决死锁的方法;内存分配及回收方法、重定位及虚拟存储器的实现原理;文件的逻辑结构、物理结构及文件系统的构成;操作系统对设备的控制、分配以及缓冲区的管理等;Linux系统的网络功能,现代流行的UNIX、Windows操作系统的特点、原理以及分布式操作系统的概况;操作系统的安全性。

      本书中的新版算法采用C语言描述。例题典型,便于初学者对操作系统原理进行理解、掌握并运用;在配套教材《操作系统实训(Linux)??习题解答、例题解析、实验指导》中,为各章提供了丰富的实训内容。

      本书内容全面,选材适当,结构合理,理论结合实际,可作为应用型本科、成人高校、高职高专院校计算机及相关专业的操作系统课程的教材,也可以作为相关专业的技术人员的参考书。

      第二版前言

      操作系统是计算机系统中最重要的软件,它管理计算机系统的软件和硬件资源,同时为用户提供一个方便、安全、可靠的工作环境。操作系统课程是计算机专业学生的必修课程,掌握计算机操作系统的基本原理和方法,并在此基础上掌握最新的主流操作系统的原理及应用,无论对计算机专业的学生还是对计算机技术从业人员而言都是非常必要的。

    操作系统在计算机系统中所处的基础地位使这门课程成为计算机专业中最重要的课程之一;它具有的抽象性及理论深度使这门课程也同时成为计算机专业中最具难度的课程之一。很多初学者会感到这门课程理论性太强、概念原理太多,不容易记住,更不易掌握,特别是在本科操作系统课程中,理论与实践的结合是一个普遍的难题。编者正是在这种情况下,结合多年操作系统课程教学经验,进行了教材第一版的编写。本次再版在第一版的基础上进行了适当的增删与改写,更突出了以下特色:

    (1)注重理论与实践的结合。以Linux系统为范例讲述操作系统的基本原理;配备一定量的例题、习题;在辅助教材中提供了一些实验,使读者更好地理解与应用操作系统。

    (2)采用“任务驱动”模式。对于每个知识点,从问题的提出,到分析解决问题、讲述知识、例题内容,都采取了任务驱动的模式,使读者能够对操作系统原理进行更好地理解和掌握。

    (3)实现教学资源的立体化。本教材作为操作系统课程的主教材,配有辅助教材《操作系统实训(Linux)——习题解答、例题解析、实验指导》。这两本教材的程序源代码全部在网上提供,并提供演示软件,形成了集理论、例题、习题、测验、实验于一体的立体化教学体系,丰富了教学资源,便于在教学过程中使用。

    (4)更新描述语言。所有在程序及例题中出现的算法均使用C语言描述。

    本书主要讲述操作系统的基本原理及应用,具体实例采用Linux操作系统。内容共分9章,第1章介绍操作系统的基本概念、功能、操作系统的发展史及Linux操作系统概述;第2章介绍作业的概念及流程、进程的概念、进程描述、进程控制、进程的同步与互斥、进程通信及线程;第3章介绍作业调度及进程调度,死锁的概念与产生的原因,以及解决死锁的方法;第4章介绍操作系统对内存的管理方法,主要介绍各种内存管理及分配方法的思想、数据结构、重定位及实现原理;第5章介绍操作系统对文件的管理,重点介绍文件的逻辑结构、物理结构及文件系统的构成;第6章介绍操作系统对设备的管理方法,主要介绍对设备的控制、分配、缓冲区的管理等;第7章介绍Linux系统的网络功能;第8章侧重于现代操作系统,介绍了现代流行的UNIX、Windows 2000操作系统的特点、原理以及分布式操作系统的概况;第9章介绍操作系统的安全性。

      本书由王红任主编,侯刚、张凤云、杨德芳任副主编。各章主要编写人员分工如下:第2章、第3章、第8章由王红编写;第1章、第6章、第9章由侯刚编写;第4章由杨德芳编写;第5章、第7章由张凤云编写;参加本书编写的还有沈祥玖、王成端、陈光军、王承君、肖孟强、刘永华、宗绪锋、李禹生、安志远等。全书由王红统稿。

      本书可以作为本科,特别是应用型本科计算机专业学生的操作系统教材,也可以作为计算机专业技术人员的参考书。

      对于本书,虽然编写小组付出了很大努力,但由于作者水平有限,出现错误在所难免,希望广大读者批评指正。


    第二版前言
    第一版前言
    第1章  操作系统概论 1
    本章学习目标 1
    1.1  操作系统的地位 1
    1.2  操作系统的功能 2
    1.2.1  提供人机接口 2
    1.2.2  管理计算机资源 4
    1.3  操作系统的发展过程 8
    1.3.1  推动操作系统发展的主要动力 8
    1.3.2  无操作系统的计算机系统 8
    1.3.3  单道批处理系统 9
    1.3.4  多道批处理系统 10
    1.3.5  分时系统 11
    1.3.6  实时系统 12
    1.3.7  微机操作系统 13
    1.3.8  网络操作系统 14
    1.3.9  分布式操作系统 14
    1.4  操作系统的特性 14
    1.5  操作系统的体系结构 15
    1.5.1  层次结构 15
    1.5.2  微内核结构 15
    1.6  Linux介绍 16
    1.6.1  Linux简介 16
    1.6.2  Linux的内核特征 17
    1.6.3  Linux的发展及展望 18
    本章小结 21
    习题一 21
    第2章  进程管理 22
    本章学习目标 22
    2.1  进程的引入 22
    2.1.1  程序的顺序执行 22
    2.1.2  程序的并发执行及其特征 23
    2.1.3  进程的定义与特征 25
    2.1.4  进程的基本状态及转换 26
    2.1.5  Linux进程的状态 28
    2.2  进程的描述 28
    2.2.1  进程控制块PCB 29
    2.2.2  进程控制块的组织方式 30
    2.2.3  Linux进程的PCB 31
    2.3  进程控制 32
    2.3.1  进程的家族关系 32
    2.3.2  进程的创建与终止 33
    2.3.3  进程的阻塞与唤醒 34
    2.3.4  Linux系统调用 34
    2.4  进程的同步与互斥 36
    2.4.1  临界资源的概念 36
    2.4.2  进程的互斥与同步 37
    2.4.3  锁机制 38
    2.4.4  信号量机制 39
    2.5  进程同步问题举例 42
    2.5.1  生产者—消费者问题 42
    2.5.2  读者-写者问题 44
    2.5.3  哲学家进餐问题 45
    2.6  进程通信 46
    2.6.1  共享存储器系统 47
    2.6.2  消息传递系统 47
    2.6.3  管道通信系统 50
    2.6.4  信号通信机制 50
    2.7  线程 51
    2.7.1  线程的基本概念 52
    2.7.2  线程的状态与转换操作 52
    2.7.3  引入线程的好处 53
    2.7.4  多线程的实现 53
    2.7.5  Linux系统的线程 54
    本章小结 54
    习题二 55
    第3章  处理机调度与死锁 57
    本章学习目标 57
    3.1  作业管理 57
    3.1.1  作业的概念 57
    3.1.2  批处理系统的作业管理 58
    3.1.3  作业的状态 60
    3.1.4  作业与进程的关系 60
    3.2  分级调度 60
    3.3  作业调度 62
    3.3.1  作业调度的功能 62
    3.3.2  调度算法的评价准则 63
    3.4  进程调度 64
    3.4.1  进程调度的功能 65
    3.4.2  进程调度的时机 65
    3.4.3  进程上下文的切换 66
    3.4.4  Linux系统中进程调度发生的时机 66
    3.5  调度算法 67
    3.5.1  先来先服务调度算法 67
    3.5.2  短作业(进程)优先调度算法 68
    3.5.3  高响应比优先调度算法 68
    3.5.4  优先级调度算法 69
    3.5.5  时间片轮转法 71
    3.5.6  多级队列调度算法 73
    3.5.7  多级反馈队列优先算法 73
    3.6  Linux系统的调度算法 74
    3.6.1  Linux系统的进程调度策略 75
    3.6.2  Linux系统的优先级调度策略 75
    3.6.3  实时进程的调度策略 77
    3.7  死锁问题 77
    3.7.1  死锁的概念 78
    3.7.2  产生死锁的原因及必要条件 78
    3.7.3  解决死锁问题的基本方法 79
    3.8  死锁的预防 80
    3.8.1  打破占有且申请条件 80
    3.8.2  打破不可抢占条件 80
    3.8.3  打破环路条件 80
    3.9  死锁的避免 81
    3.9.1  系统的安全状态 81
    3.9.2  由安全状态向不安全状态的转化 82
    3.9.3  银行家算法 82
    3.10  利用银行家算法避免死锁 82
    3.10.1  银行家算法中的数据结构 82
    3.10.2  银行家算法的实现 83
    3.10.3  银行家算法的应用 84
    3.11  死锁的检测与解除 85
    3.11.1  死锁检测的时机 86
    3.11.2  死锁的检测 86
    3.11.3  死锁的解除 88
    本章小结 88
    习题三 89
    第4章  内存管理 91
    本章学习目标 91
    4.1  存储器管理概述 91
    4.1.1  存储器的层次 91
    4.1.2  用户程序的处理过程 92
    4.1.3  存储管理的几个基本概念 92
    4.2  存储管理方式 95
    4.2.1  单道程序的连续分配 95
    4.2.2  对换 96
    4.2.3  内存分配策略 97
    4.2.4  固定分区分配方式 98
    4.2.5  动态分区分配 99
    4.2.6  可重定位分区 101
    4.3  页式存储管理 102
    4.3.1  页式存储管理的思想 102
    4.3.2  页式存储管理的数据结构 103
    4.3.3  页式存储管理的重定位方法 104
    4.3.4  快表 106
    4.3.5  两级和多级页表 107
    4.4  段式存储管理 108
    4.4.1  段式存储管理的思想 108
    4.4.2  段式存储管理的重定位方法 109
    4.4.3  段页式存储管理 110
    4.5  虚拟存储器 112
    4.5.1  局部性原理 112
    4.5.2  虚拟存储器 113
    4.6  请求分页 114
    4.6.1  请求分页的实现 114
    4.6.2  页面置换算法(写明belady现象) 115
    4.7  请求分段存储管理 117
    4.7.1  请求分段的实现 117
    4.7.2  段的共享与保护 120
    4.7.3  段的共享与保护的实现 121
    4.8  Linux系统的内存管理方法 122
    4.8.1  Linux的分页管理机制 122
    4.8.2  虚存段的组织与管理 124
    4.8.3  内存的共享和保护 126
    4.8.4  内存空间管理 126
    4.8.5  空闲内存管理 127
    4.8.6  内核态内存的申请与释放 128
    4.8.7  用户态内存的申请和释放 129
    4.8.8  交换空间 130
    4.8.9  页交换进程和页面换出 130
    4.8.10  缺页中断和页面换入 132
    4.8.11  存储管理系统的缓冲机制 133
    4.9  存储管理实例 133
    本章小结 135
    习题四 136
    第5章  文件管理 139
    本章学习目标 139
    5.1  文件管理概述 139
    5.1.1  文件及其分类 139
    5.1.2  文件系统及其功能 141
    5.1.3  文件的逻辑结构 141
    5.2  文件的物理结构 143
    5.2.1  连续文件结构 144
    5.2.2  链接文件结构(以DOS为例) 144
    5.2.3  索引文件结构(以Linux为例) 146
    5.3  文件目录管理 149
    5.3.1  文件控制块和索引节点 149
    5.3.2  文件目录结构 151
    5.3.3  按名存取 153
    5.4  文件存储空间的管理 154
    5.4.1  空闲空间表法 154
    5.4.2  位示图法 154
    5.4.3  空闲块链法 155
    5.4.4  空闲块成组链接法 156
    5.5  文件共享与安全性 157
    5.5.1  文件的共享 157
    5.5.2  文件的安全性 159
    5.6  Linux文件系统 161
    5.6.1  文件类型 161
    5.6.2  Linux文件目录 161
    5.6.3  虚拟文件系统VFS 164
    5.6.4  EXT2 164
    5.6.5  Linux常用系统调用 165
    本章小结 167
    习题五 168
    第6章  设备管理 170
    本章学习目标 170
    6.1  I/O系统组成 170
    6.1.1  I/O设备 170
    6.1.2  设备控制器 171
    6.1.3  I/O通道 173
    6.2  数据传输控制方式 174
    6.2.1  程序直接控制方式 175
    6.2.2  中断控制方式 175
    6.2.3  DMA方式 175
    6.2.4  通道控制方式 176
    6.3  中断技术 179
    6.3.1  中断的概念 179
    6.3.2  中断源 179
    6.3.3  中断响应 179
    6.3.4  中断处理 180
    6.4  缓冲技术 181
    6.4.1  缓冲的引入 181
    6.4.2  单缓冲 182
    6.4.3  双缓冲 182
    6.4.4  循环缓冲 182
    6.4.5  缓冲池 183
    6.5  设备分配 184
    6.5.1  与设备分配相关的因素 184
    6.5.2  虚拟设备技术 186
    6.6  SPOOLING系统 186
    6.6.1  SPOOLING系统简介 186
    6.6.2  SPOOLING系统的组成 187
    6.7  I/O控制过程 188
    6.7.1  用户进程的I/O请求 188
    6.7.2  设备驱动 188
    6.8  磁盘I/O 189
    6.8.1  磁盘存储格式 189
    6.8.2  磁盘I/O性能 189
    6.8.3  磁盘调度 189
    6.8.4  磁盘高速缓存 191
    6.9  Linux系统的设备管理 191
    6.9.1  Linux系统设备管理的特点 191
    6.9.2  Linux设备驱动程序的接口 192
    6.9.3  Linux的磁盘高速缓存 193
    6.9.4  Linux的字符设备缓冲区管理 195
    6.9.5  Linux的设备驱动 196
    本章小结 199
    习题六 199
    第7章  Linux网络基础 201
    本章学习目标 201
    7.1  网络概述 201
    7.2  配置Linux网络 202
    7.2.1  TCP/IP网络的相关概念 202
    7.2.2  网络配置文件 204
    7.2.3  手工配置TCP/IP网络 206
    7.3  基本网络服务介绍 208
    7.3.1  域名服务器(DNS) 208
    7.3.2  Apache服务器 209
    7.3.3  邮件服务器 211
    7.3.4  samba服务器 212
    7.4  Linux网络安全 214
    7.4.1  Linux系统的文件安全 214
    7.4.2  用户口令安全 215
    7.4.3  防火墙技术 215
    7.4.4  Linux常用的网络命令 217
    本章小结 220
    习题七 221
    第8章  现代操作系统实例 222
    本章学习目标 222
    8.1  UNIX操作系统 222
    8.1.1  UNIX操作系统的发展 222
    8.1.2  UNIX操作系统的特点 222
    8.1.3  UNIX系统的内核结构 223
    8.1.4  UNIX系统的进程管理 224
    8.1.5  UNIX系统的内存管理 227
    8.1.6  UNIX系统的文件管理 229
    8.1.7  UNIX系统的设备管理 231
    8.2  Windows操作系统 233
    8.2.1  Windows 系列概述 233
    8.2.2  Windows 2000中的进程和线程的特点 233
    8.2.3  Windows 2000中的进程 234
    8.2.4  Windows 2000中的线程 235
    8.2.5  Windows 2000 的调度算法 236
    8.2.6  Windows 2000的内存管理 237
    8.2.7  Windows 2000的文件系统 238
    8.2.8  Windows设备管理 240
    8.3  分布式操作系统 241
    8.3.1  分布式操作系统的特性 241
    8.3.2  进程迁移 242
    8.3.3  分布式进程管理 242
    本章小结 244
    习题八 245
    第9章  操作系统的安全性 246
    本章学习目标 246
    9.1  操作系统安全性概述 246
    9.1.1  计算机系统安全性的内涵 246
    9.1.2  操作系统的安全性 247
    9.1.3  计算机系统安全性评价标准 247
    9.2  操作系统的安全机制 250
    9.2.1  内存保护机制 250
    9.2.2  用户身份认证机制 251
    9.2.3  访问控制技术 252
    9.2.4  加密技术 255
    9.2.5  病毒及其防御机制 255
    9.2.6  监控和审计日志 256
    本章小结 256
    习题九 257
    参考文献 258
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册