> 书[0名0]: | 现代操作系统(原书[0第0]4版)|6170840 |
> 图书定价: | 89元 |
> 图书作者: | (荷)安德鲁 S. 塔嫩鲍姆(Andrew S. Tanenbaum);(荷)赫伯特·博斯(Herbert Bos) |
> 出版社: | 机械工业出版社 |
> 出版日期: | 2017/7/1 0:00:00 |
> ISBN号: | 9787111573692 |
> 开本: | 16开 |
> 页数: | 0 |
> 版次: | 1-1 |
作者简介 |
Modern Operating Systems, Fourth Edition Andrew S. Tanenbaum拥有麻省理工[0学0]院的理[0学0][0学0]士[0学0]位和加州[0大0][0学0]伯克利分校的博士[0学0]位,如今他是阿姆斯特丹自由[0大0][0学0]计算机科[0学0][0学0]院的教授。他曾经是计算与图像高级[0学0]院的院长,这是一个跨[0大0][0学0]的研究生院,主要研究高级并行、分布式以及图像系统。他同时也是荷兰皇家艺术与科[0学0]院的教授,这使得他没有变成一个刻板的人。他还赢得过享有盛[0名0]的欧洲研究理事[0会0]卓越贡献奖。 过去一段时间,他的主要研究方向是编译器、操作系统、网络以及分布式系统。现在他的主要研究方向是安全可靠的操作系统。他在这个研究方向已经发表了[0超0]过175篇经常被引用的期刊和[0会0]议论文。Tanenbaum教授还撰写或参与撰写了5本教材,并被翻译成20种语言,其中包括巴斯克语和泰语。这些教材被全球的[0大0][0学0]使用,总计有163个版本(语言和版本加起来)。 Tanenbaum教授还编写了[0大0]量的软件,特别是MINIX,这是一个小型的UNIX。其灵感直接源于Linux以及Linux初开发的平台。如今的MINIX版本是MINIX 3,专注于成为一个非常可靠和安全的操作系统。只有[0当0]任何用户都不[0会0]遭遇操作系统崩溃的情况时,Tanenbaum教授才认为他完成了自己的工作。MINIX 3是一个欢迎所有人来完善的开放源代码项目,请访问www.minix3.org下载MINIX 3的免费版本,并试着运行它。x86和ARM版本都可用。 Tanenbaum教授的博士生在毕业后都有很好的前途,对于这一点教授本人非常自豪。在这方面,他如同一只爱孩子的母鸡。 Tanenbaum教授是ACM[0会0]士、IEEE[0会0]士,也是荷兰皇家艺术与科[0学0]院院士。他荣获了相[0当0]多的ACM、IEEE和USENIX奖项。如果你对此感到好奇,可以去他的Wikipedia主页查看。他还有两个荣誉博士[0学0]位。 Herbert Bos在特温特[0大0][0学0]获得硕士[0学0]位,在剑桥[0大0][0学0]计算机实验室获得博士[0学0]位。此后,他为Linux等操作系统的可信I/O架构做了[0大0]量工作,同时也基于MINIX 3研究系统。他现在是阿姆斯特丹自由[0大0][0学0]计算机科[0学0][0学0]院系统与网络安全系的教授,主要研究方向是系统安全。他与[0学0]生一起以新颖的方式检测并阻止攻击,分析并对恶意软件进行反向工程,还共同拆卸过僵尸网络(横跨几百万台计算机的恶意网络基础设施)。2011年,他因在反向工程[0领0]域的研究获得了ERC奖。他的三个[0学0]生因所写的与系统相关的论文被[0评0]为欧洲佳博士论文而获得了Roger Needham奖。 |
内容简介 |
本书是操作系统[0领0]域的经典教材,主要内容包括进程与线程、内存管理、文件系统、输入/输出、死锁、虚拟化和云、多处理机系统、安全,以及关于UNIX、Linux、Android和Windows的实例研究等。[0第0]4版对[0知0]识点进行了全面更新,反映了[0当0]代操作系统的发展与动向。 本书适合作为高等院校计算机专业的操作系统课程教材,也适合相关技术人员参考。 |
目录 |
出版者的话 译者序 前言 作者简介 [0第0]1章 引论1 1.1 什么是操作系统2 1.1.1 作为扩展机器的操作系统2 1.1.2 作为资源管理者的操作系统3 1.2 操作系统的历[0史0]4 1.2.1 [0第0]一代(1945~1955):真空管和穿孔卡片4 1.2.2 [0第0]二代(1955~1965):晶体管和批处理系统4 1.2.3 [0第0]三代(1965~1980):集成电路和多道程序设计6 1.2.4 [0第0]四代(1980年至今):个人计算机8 1.2.5 [0第0]五代(1990年至今):移动计算机10 1.3 计算机硬件简介11 1.3.1 处理器12 1.3.2 存储器14 1.3.3 磁盘15 1.3.4 I/O设备16 1.3.5 总线18 1.3.6 启动计算机19 1.4 操作系统[0大0]观园20 1.4.1 [0大0]型机操作系统20 1.4.2 服务器操作系统20 1.4.3 多处理器操作系统20 1.4.4 个人计算机操作系统20 1.4.5 掌上计算机操作系统21 1.4.6 嵌入式操作系统21 1.4.7 传感器节点操作系统21 1.4.8 实时操作系统21 1.4.9 智能卡操作系统21 1.5 操作系统概念22 1.5.1 进程22 1.5.2 地址空间23 1.5.3 文件23 1.5.4 输入/输出25 1.5.5 保护25 1.5.6 shell25 1.5.7 个体重复系统发育26 1.6 系统调用28 1.6.1 用于进程管理的系统调用31 1.6.2 用于文件管理的系统调用32 1.6.3 用于目录管理的系统调用32 1.6.4 各种系统调用34 1.6.5 Windows Win32 API34 1.7 操作系统结构35 1.7.1 单体系统36 1.7.2 层次式系统36 1.7.3 微内核37 1.7.4 客户端–服务器模式38 1.7.5 虚拟机39 1.7.6 外核41 1.8 依靠C的世界41 1.8.1 C语言41 1.8.2 头文件41 1.8.3 [0大0]型编程项目43 1.8.4 运行模型43 1.9 有关操作系统的研究44 1.10 本书其他部分概要45 1.11 公制单位45 1.12 小结46 习题46 [0第0]2章 进程与线程48 2.1 进程48 2.1.1 进程模型48 2.1.2 进程的创建49 2.1.3 进程的终止51 2.1.4 进程的层次结构51 2.1.5 进程的状态51 2.1.6 进程的实现53 2.1.7 多道程序设计模型54 2.2 线程54 2.2.1 线程的使用54 2.2.2 经典的线程模型57 2.2.3 [P1O1S] IX线程60 2.2.4 在用户空间中实现线程60 2.2.5 在内核中实现线程63 2.2.6 混合实现63 2.2.7 调度程序激活机制64 2.2.8 弹出式线程64 2.2.9 使单线程代码多线程化65 2.3 进程间通信67 2.3.1 竞争条件67 2.3.2 临界区68 2.3.3 忙等待的互斥68 2.3.4 睡眠与唤醒71 2.3.5 信号量73 2.3.6 互斥量74 2.3.7 管程78 2.3.8 消息传递81 2.3.9 屏障82 2.3.10 避免锁:读–复制–更新83 2.4 调度84 2.4.1 调度简介84 2.4.2 批处理系统中的调度88 2.4.3 交互式系统中的调度89 2.4.4 实时系统中的调度92 2.4.5 策略和机制93 2.4.6 线程调度93 2.5 经典的IPC问题94 2.5.1 哲[0学0]家就餐问题94 2.5.2 读者–写者问题96 2.6 有关进程与线程的研究97 2.7 小结97 习题98 [0第0]3章 内存管理102 3.1 无存储器抽象102 3.2 一种存储器抽象:地址空间104 3.2.1 地址空间的概念104 3.2.2 交换技术106 3.2.3 空闲内存管理107 3.3 虚拟内存109 3.3.1 分页110 3.3.2 页表112 3.3.3 加速分页过程112 3.3.4 针对[0大0]内存的页表114 3.4 页面置换算[0法0]117 3.4.1 [0优0]页面置换算[0法0]117 3.4.2 近未使用页面置换算[0法0]118 3.4.3 先进先出页面置换算[0法0]118 3.4.4 [0第0]二次机[0会0]页面置换算[0法0]118 3.4.5 时钟页面置换算[0法0]119 3.4.6 近少使用页面置换算[0法0]119 3.4.7 用软件模拟LRU120 3.4.8 工作集页面置换算[0法0]121 3.4.9 工作集时钟页面置换算[0法0]123 3.4.10 页面置换算[0法0]小结124 3.5 分页系统中的设计问题124 3.5.1 局部分配策略与全局分配策略124 3.5.2 负载控制126 3.5.3 页面[0大0]小126 3.5.4 分离的指令空间和数据空间127 3.5.5 共享页面128 3.5.6 共享库128 3.5.7 内存映射文件130 3.5.8 清除策略130 3.5.9 虚拟内存接口130 3.6 有关实现的问题131 3.6.1 与分页有关的工作131 3.6.2 缺页中断处理131 3.6.3 指令备份132 3.6.4 锁定内存中的页面132 3.6.5 后备存储133 3.6.6 策略和机制的分离134 3.7 分段134 3.7.1 纯分段的实现136 3.7.2 分段和分页结合:MULTICS136 3.7.3 分段和分页结合:Intel x86138 3.8 有关内存管理的研究141 3.9 小结141 习题142 [0第0]4章 文件系统147 4.1 文件148 4.1.1 文件命[0名0]148 4.1.2 文件结构149 4.1.3 文件类型149 4.1.4 文件访问151 4.1.5 文件属性151 4.1.6 文件操作152 4.1.7 使用文件系统调用的一个示例程序152 4.2 目录154 4.2.1 一级目录系统154 4.2.2 层次目录系统154 4.2.3 路径[0名0]154 4.2.4 目录操作156 4.3 文件系统的实现157 4.3.1 文件系统布局157 4.3.2 文件的实现157 4.3.3 目录的实现160 4.3.4 共享文件162 4.3.5 日志结构文件系统163 4.3.6 日志文件系统164 4.3.7 虚拟文件系统165 4.4 文件系统管理和[0优0]化167 4.4.1 磁盘空间管理167 4.4.2 文件系统备份171 4.4.3 文件系统的一致性174 4.4.4 文件系统性能176 4.4.5 磁盘碎片整理178 4.5 文件系统实例179 4.5.1 MS-DOS文件系统179 4.5.2 UNIX V7文件系统181 4.5.3 CD-ROM文件系统182 4.6 有关文件系统的研究185 4.7 小结185 习题186 [0第0]5章 输入/输出189 5.1 I/O硬件原理189 5.1.1 I/O设备189 5.1.2 设备控制器190 5.1.3 内存映射I/O190 5.1.4 直接存储器存取192 5.1.5 重温中断194 5.2 I/O软件原理196 5.2.1 I/O软件的目标196 5.2.2 程序控制I/O197 5.2.3 中断驱动I/O198 5.2.4 使用DMA的I/O199 5.3 I/O软件层次199 5.3.1 中断处理程序199 5.3.2 设备驱动程序200 5.3.3 与设备无关的I/O软件202 5.3.4 用户空间的I/O软件205 5.4 盘206 5.4.1 盘的硬件206 5.4.2 磁盘格式化211 5.4.3 磁盘臂调度算[0法0]213 5.4.4 错误处理215 5.4.5 稳定存储器216 5.5 时钟218 5.5.1 时钟硬件218 5.5.2 时钟软件219 5.5.3 软定时器221 5.6 用户界面:键盘、鼠标和监视器222 5.6.1 输入软件222 5.6.2 输出软件225 5.7 瘦客户机235 5.8 电源管理236 5.8.1 硬件问题236 5.8.2 操作系统问题237 5.8.3 应用程序问题241 5.9 有关输入/输出的研究241 5.10 小结242 习题243 [0第0]6章 死锁247 6.1 资源247 6.1.1 可抢占资源和不可抢占资源247 6.1.2 资源获取248 6.2 死锁简介249 6.2.1 资源死锁的条件249 6.2.2 死锁建模249 6.3 鸵鸟算[0法0]251 6.4 死锁检测和死锁恢复251 6.4.1 每种类型一个资源的死锁检测252 6.4.2 每种类型多个资源的死锁检测253 6.4.3 从死锁中恢复254 6.5 死锁避免255 6.5.1 资源轨迹图255 6.5.2 安全状态和不安全状态256 6.5.3 单个资源的银行家算[0法0]257 6.5.4 多个资源的银行家算[0法0]257 6.6 死锁预防258 6.6.1 破坏互斥条件258 6.6.2 破坏占有并等待条件259 6.6.3 破坏不可抢占条件259 6.6.4 破坏环路等待条件259 6.7 其他问题260 6.7.1 两阶段加锁260 6.7.2 通信死锁260 6.7.3 活锁261 6.7.4 饥饿262 6.8 有关死锁的研究262 6.9 小结263 习题263 [0第0]7章 虚拟化和云267 7.1 历[0史0]268 7.2 虚拟化的必要条件268 7.3 [0第0]一类和[0第0]二类虚拟机管理程序270 7.4 高效虚拟化技术271 7.4.1 在不支持虚拟化的平台上实现虚拟化271 7.4.2 虚拟化的开销273 7.5 虚拟机管理程序是正确的微内核吗273 7.6 内存虚拟化275 7.7 I/O虚拟化277 7.8 虚拟装置279 7.9 多核CPU上的虚拟机279 7.10 授[0权0]问题279 7.11 云280 7.11.1 云即服务280 7.11.2 虚拟机迁移280 7.11.3 检查点281 7.12 案例研究:VMware281 7.12.1 VMware的早期历[0史0]281 7.12.2 VMware Workstation282 7.12.3 将虚拟化引入x86的挑战282 7.12.4 VMware Workstation解决方案概览283 7.12.5 VMware Workstation的演变288 7.12.6 VMware的[0第0]一类虚拟机管理程序ESX Server288 7.13 有关虚拟化和云的研究289 习题289 [0第0]8章 多处理机系统291 8.1 多处理机292 8.1.1 多处理机硬件292 8.1.2 多处理机操作系统类型298 8.1.3 多处理机同步301 8.1.4 多处理机调度303 8.2 多计算机306 8.2.1 多计算机硬件307 8.2.2 低层通信软件309 8.2.3 用户层通信软件311 8.2.4 远程过程调用313 8.2.5 分布式共享存储器314 8.2.6 多计算机调度317 8.2.7 负载平衡318 8.3 分布式系统319 8.3.1 网络硬件321 8.3.2 网络服务和协议323 8.3.3 基于文档的中间件325 8.3.4 基于文件系统的中间件326 8.3.5 基于对象的中间件329 8.3.6 基于协作的中间件330 8.4 有关多处理机系统的研究332 8.5 小结332 习题333 [0第0]9章 安全336 9.1 环境安全337 9.1.1 威胁337 9.1.2 入侵者339 9.2 操作系统完全339 9.2.1 可信系统339 9.2.2 可信计算基340 9.3 保护机制341 9.3.1 保护域341 9.3.2 访问控制列表342 9.3.3 [0权0]能字344 9.4 安全系统的形式化模型345 9.4.1 多级安全346 9.4.2 隐蔽信道348 9.5 密码[0学0]原理350 9.5.1 私钥加密技术351 9.5.2 公钥加密技术351 9.5.3 单向函数352 9.5.4 数字签[0名0]352 9.5.5 可信平台模块353 9.6 认证354 9.6.1 使用物理识别的认证方式358 9.6.2 使用生物识别的认证方式360 9.7 软件漏洞361 9.7.1 缓冲区溢出攻击361 9.7.2 格式化字符串攻击367 9.7.3 悬垂指针369 9.7.4 空指针间接引用攻击369 9.7.5 整数溢出攻击370 9.7.6 命令注入攻击370 9.7.7 检查时间/使用时间攻击371 9.8 内部攻击371 9.8.1 逻辑炸弹371 9.8.2 后门陷阱372 9.8.3 登录欺骗372 9.9 恶意软件373 9.9.1 特洛伊木马374 9.9.2 病毒375 9.9.3 蠕虫381 9.9.4 间谍软件382 9.9.5 rootkit384 9.10 防御386 9.10.1 防火墙387 9.10.2 反病毒和抑制反病毒技术388 9.10.3 代码签[0名0]392 9.10.4 囚禁392 9.10.5 基于模型的入侵检测393 9.10.6 封装移动代码394 9.10.7 Java安全性396 9.11 有关安全的研究397 9.12 小结398 习题398 [0第0]10章 实例研究1:UNIX、Linux和Android403 10.1 UNIX与Linux的历[0史0]403 10.1.1 UNICS403 10.1.2 PDP-11 UNIX404 10.1.3 可移植的UNIX404 10.1.4 Berkeley UNIX405 10.1.5 标准UNIX405 10.1.6 MINIX406 10.1.7 Linux407 10.2 Linux简介408 10.2.1 Linux的设计目标408 10.2.2 到Linux的接口409 10.2.3 shell410 10.2.4 Linux应用程序412 10.2.5 内核结构413 10.3 Linux中的进程414 10.3.1 基本概念414 10.3.2 Linux中进程管理相关的系统调用416 10.3.3 Linux中进程与线程的实现418 10.3.4 Linux中的调度422 10.3.5 启动Linux系统425 10.4 Linux中的内存管理426 10.4.1 基本概念427 10.4.2 Linux中的内存管理系统调用429 10.4.3 Linux中内存管理的实现429 10.4.4 Linux中的分页433 10.5 Linux中的I/O系统434 10.5.1 基本概念434 10.5.2 网络435 10.5.3 Linux中的I/O系统调用436 10.5.4 I/O在Linux中的实现437 10.5.5 Linux中的模块439 10.6 Linux文件系统439 10.6.1 基本概念439 10.6.2 Linux中的文件系统调用442 10.6.3 Linux文件系统的实现444 10.6.4 NFS:网络文件系统449 10.7 Linux的安全性452 10.7.1 基本概念452 10.7.2 Linux中安全相关的系统调用454 10.7.3 Linux中的安全实现454 10.8 Android455 10.8.1 Android与Google455 10.8.2 Android的历[0史0]455 10.8.3 设计目标457 10.8.4 Android体系结构458 10.8.5 Linux扩展459 10.8.6 Dalvik461 10.8.7 Binder IPC462 10.8.8 Android应用467 10.8.9 意图475 10.8.10 应用程序沙箱475 10.8.11 安全性476 10.8.12 进程模型479 10.9 小结482 习题483 [0第0]11章 实例研究2:Windows 8487 11.1 Windows 8.1的历[0史0]487 11.1.1 20世纪80年代:MS-DOS487 11.1.2 20世纪90年代:基于MS-DOS的Windows488 11.1.3 21世纪00年代:基于NT的Windows488 11.1.4 Windows Vista489 11.1.5 21世纪10年代:现代Windows490 11.2 Windows 编程490 11.2.1 原生NT应用编程接口493 11.2.2 Win32应用编程接口494 11.2.3 Windows注册表496 11.3 系统结构498 11.3.1 操作系统结构498 11.3.2 启动Windows 506 11.3.3 对象管理器的实现507 11.3.4 子系统、DLL和用户态服务513 11.4 Windows中的进程和线程514 11.4.1 基本概念514 11.4.2 作业、进程、线程和纤程管理API调用518 11.4.3 进程和线程的实现521 11.5 内存管理525 11.5.1 基本概念525 11.5.2 内存管理系统调用527 11.5.3 存储管理的实现528 11.6 Windows的高速缓存533 11.7 Windows的I/O534 11.7.1 基本概念534 11.7.2 I/O的API调用535 11.7.3 I/O实现536 11.8 Windows NT文件系统539 11.8.1 基本概念540 11.8.2 NTFS文件系统的实现540 11.9 Windows电源管理546 11.10 Windows 8中的安全547 11.10.1 基本概念548 11.10.2 安全相关的API调用548 11.10.3 安全实现549 11.10.4 安全缓解技术551 11.11 小结552 习题553 [0第0]12章 操作系统设计556 12.1 设计问题的本质556 12.1.1 目标556 12.1.2 设计操作系统为什么困难557 12.2 接口设计558 12.2.1 指导原则558 12.2.2 范型559 12.2.3 系统调用接口561 12.3 实现563 12.3.1 系统结构563 12.3.2 机制与策略565 12.3.3 正交性566 12.3.4 命[0名0]566 12.3.5 绑定的时机567 12.3.6 静态与动态结构567 12.3.7 自[0顶0]向下与自底向上的实现568 12.3.8 同步通信与异步通信568 12.3.9 实用技术569 12.4 性能572 12.4.1 操作系统为什么运行缓慢572 12.4.2 什么应该[0优0]化573 12.4.3 空间–时间的[0权0]衡573 12.4.4 缓存575 12.4.5 线索575 12.4.6 利用局部性576 12.4.7 [0优0]化常见的情况576 12.5 项目管理576 12.5.1 人月神话576 12.5.2 团队结构577 12.5.3 经验的作用578 12.5.4 没有银弹579 12.6 操作系统设计的趋势579 12.6.1 虚拟化与云579 12.6.2 众核芯片580 12.6.3 [0大0]型地址空间操作系统580 12.6.4 无缝的数据访问580 12.6.5 电池供电的计算机581 12.6.6 嵌入式系统581 12.7 小结581 习题582 [0第0]13章 参考书目与文献584 13.1 进行深入阅读的建议584 13.1.1 引论584 13.1.2 进程与线程584 13.1.3 内存管理585 13.1.4 文件系统585 13.1.5 输入/输出585 13.1.6 死锁586 13.1.7 虚拟化和云586 13.1.8 多处理机系统586 13.1.9 安全587 13.1.10 实例研究1:UNIX、Linux和Android588 13.1.11 实例研究2:Windows 8588 13.1.12 操作系统设计589 13.2 按字母顺序排序的参考文献589 |
盗版的,这印刷,差太远了,京东就这么纵容盗版的?
评分经典的操作系统教程。
评分包装完好,内容清晰,很棒
评分盗版的,这印刷,差太远了,京东就这么纵容盗版的?
评分物流有点慢,但是也不影响;书是正版的,新书,很好。
评分质量是真的堪忧
评分到货速度可以,下次再来。
评分好
评分Tanenbaum的经典名著,基础必备
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.qciss.net All Rights Reserved. 图书大百科 版权所有