现代操作系统

现代操作系统 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:坦尼鲍姆
出品人:
页数:501
译者:陈向群/等
出版时间:1999-11
价格:40.00
装帧:平装
isbn号码:9787111071174
丛书系列:计算机科学丛书
图书标签:
  • 操作系统
  • OS
  • 计算机
  • 美国
  • 教材
  • 计算机科学
  • 编程
  • linux
  • 操作系统
  • 计算机科学
  • 计算机系统
  • 系统编程
  • 内核
  • 进程管理
  • 内存管理
  • 文件系统
  • 并发
  • 虚拟化
想要找书就要到 小美书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

作者简介

Andrew S.Tanenbaum 拥有美国麻省理工学院的理学学士学位和加州大学伯克利分校的哲学博士学位,目前是荷兰阿姆斯特丹Vrije大学的计算机科学系教授,并领导着一个计算机系统的研究小组。多年来,他在操作系统、编译技术、网络及局域分布式系统方面进行了大量的研究工作,并在各种学术杂志及会议上发表了多篇论文,同时还是5本计算机专著的作者。Tanenbaurn是ACM会员、IEEE资深会员、荷兰皇家艺术和科学学院院士,多次获得计算机教育杰出贡献奖。他还入选了《世界名人录》。

目录信息

目 录
译者序
前言
第一部分 传统操作系统
第1章 引言
1.1什么是操作系统
1.1.1作为扩展机器的操作系统
1.1.2作为资源管理器的操作系统
1.2操作系统历史
1.2.1第一代计算机(1945~1955):真空管和插件板
1.2.2第二代计算机(1955~1965):晶体管和批处理系统
1.2.3第三代计算机(1965~1980):集成电路芯片和多道程序
1.2.4第四代计算机(1980~1990):个人计算机
1.3操作系统基本概念
1.3.1进程
1.3.2文件
1.3.3系统调用
1.3.4外壳
1.4操作系统结构
1.4.1整体式系统
1.4.2层次式系统
1.4.3虚拟机
1.4.4客户机/服务器系统
1.5本书其他部分的概要
1.6小结
习题
第2章 进程
2.1进程介绍
2.1.2进程模型
2.1.2进程的实现
2.2进程间通信
2.2.1竞争条件
2.2.2临界区
2.2.3忙等待的互斥
2.2.4睡眠与唤醒
2.2.5信号量
2.2.6事件计数器
2.2.7管程
2.2.8消息传递
2.2.9原语等价
2.3经典的IPC问题
2.3.1哲学家进餐问题
2.3.2读者-写者问题
2.3.3睡眠的理发师问题
2.4进程调度
2.4.1时间片轮转调度
2.4.2优先级调度
2.4.3多级队列
2.4.4最短作业优先
2.4.5保证调度算法
2.4.6策略与机制
2.4.7两级调度法
2.5小结
习题
第3章 存储管理
3.1无交换或分页的存储管理
3.1.1无交换或分页的单道程序
3.1.2多道程序设计和内存利用率
3.1.3固定分区的多道程序
3.2交换
3.2.1可变分区的多道程序设计
3.2.2使用位图的内存管理
3.2.3使用链表的内存管理
3.2.4伙伴式的内存管理
3.2.5交换空间的分配
3.2.6交换系统分析
3.3虚拟存储器
3.3.1分页
3.3.2页表
3.3.3分页硬件示例
3.3.4相联存储器
3.4页面置换算法
3.4.1最优页面置换算法
3.4.2最近未使用页面置换算法
3.4.3先进先出页面置换算法
3.4.4第二次机会页面置换算法
3.4.5时钟页面置换算法
3.4.6最久未使用页面置换算法
3.4.7用软件模拟LRU
3.5分页算法模型
3.5.1Belady异常现象
3.5.2栈式算法
3.5.3距离字符串
3.5.4缺页率预测
3.6分页系统中的设计问题
3.6.1工作集模型
3.6.2局部与全局分配策略
3.6.3页面尺寸
3.6.4实现时涉及的问题
3.7分段
3.7.1纯分段系统的实现
3.7.2分段和分页结合:MULTICS
3.7.3分段和分页结合:Intel的386
3.8小结
习题
第4章 文件系统
4.1文件
4.1.1文件命名
4.1.2文件结构
4.1.3文件类型
4.1.4文件存取
4.1.5文件属性
4.1.6文件操作
4.1.7存储映像文件
4.2目录
4.2.1层次目录系统
4.2.2路径名
4.2.3目录操作
4.3文件系统的实现
4.3.1实现文件
4.3.2实现目录
4.3.3共享目录
4.3.4磁盘空间管理
4.3.5文件系统的可靠性
4.3.6文件系统性能
4.4安全性
4.4.1安全环境
4.4.2著名的安全缺陷
4.4.3Internet蠕虫
4.4.4一般的安全性攻击
4.4.5安全性的设计原则
4.4.6用户验证
4.5保护机制
4.5.1保护域
4.5.2存取控制表
4.5.3权限
4.5.4保护模型
4.5.5隐藏通道
4.6 小结
习题
第5章 I/O设备管理
5.1I/O硬件组成原理
5.1.1I/O设备
5.1.2设备控制器
5.1.3直接存储器存取
5.2I/O软件原理
5.2.1I/O软件的目标
5.2.2中断处理程序
5.2.3设备驱动程序
5.2.4与设备无关的I/O软件
5.2.5用户空间的I/O软件
5.3磁盘
5.3.1磁盘硬件
5.3.2磁盘调度算法
5.3.3磁盘出错处理
5.3.4“每次一道”高速缓冲
5.3.5RAM盘
5.4时钟
5.4.1时钟硬件
5.4.2时钟软件
5.5终端
5.5.1终端硬件
5.5.2存储映像终端
5.5.3输入软件
5.5.4输出软件
5.6小结
习题
第6章 死锁
6.1资源
6.2死锁定义
6.2.1死锁的条件
6.2.2死锁模型
6.3鸵鸟算法
6.4死锁检测和恢复
6.4.1单种资源类型下的死锁检测
6.4.2多种资源类型下的死锁检测
6.4.3从死锁恢复
6.5死锁避免
6.5.1资源轨迹图
6.5.2安全和不安全状态
6.5.3单种资源的银行家算法
6.5.4多种资源的银行家算法
6.6死锁预防
6.6.1破坏互斥条件
6.6.2破坏占有和等待条件
6.6.3破坏不可剥夺条件
6.6.4破坏循环等待条件
6.7其他问题
6.7.1两阶段加锁
6.7.2非资源死锁
6.7.3饥饿
6.8小结
习题
第7章 实例研究1:UNIX
7.1UNIX的历史
7.1.1UNICS
7.1.2PDP-11UNIX
7.1.3可移植的UNIX
7.1.4伯克利UNIX
7.1.5UNIX的标准化
7.2UNIX概述
7.2.1设计目标
7.2.2接口
7.2.3登录
7.2.4shel1
7.2.5文件和目录
7.2.6应用程序
7.3UNIX的一些基础概念
7.3.1进程
7.3.2内存管理模式
7.3.3文件系统
7.3.4I/O设备
7.4UNIX的系统调用
7.4.1进程管理系统调用
7.4.2内存管理系统调用
7.4.3有关文件和目录的系统调用
7.4.4I/O系统调用
7.5UNIX的实现
7.5.1进程的实现
7.5.2内存管理的实现
7.5.3文件系统的实现
7.5.4I/O实现
7.6 小结
习题
第8章 实例研究2:MS-DOS
8.1MS-DOS的历史
8.1.1IBMPC
8.1.2MS-DOS1.0
8.1.3MS-DOS2.0
8.1.4MS-DOS3.0
8.1.5MS.DOS4.0
8.1.6MS-DOS5.0
8.2MS-DOS概述
8.2.1使用
8.2.2shel1
8.2.3配置
8.3MS-DOS的基本概念
8.3.1进程
8.3.2内存模式
8.3.3文件系统
8.3.4I/O设备
8.4MS-DOS的系统调用
8.4.1进程管理系统调用
8.4.2内存管理系统调用
8.4.3文件与目录系统调用
8.4.4I/O系统调用
8.5MS-DOS的实现
8.5.1进程的实现
8.5.2内存管理的实现
8.5.3文件系统的实现
8.5.4I/O的实现
8.6小结
习题
第二部分 分布式操作系统
第9章 分布式操作系统概述
9.1目标
9.1.1分布式系统相对于集中式系统的优点
9.1.2分布式系统相对于独立PC机的优点
9.1.3分布式系统的缺点
9.2硬件上的概念
9.2.1总线型多处理机
9.2.2交换型多处理机
9.2.3总线型多计算机
9.2.4交换型多计算机
9.3软件上的概念
9.3.1网络操作系统和网络文件系统
9.3.2真正的分布式系统
9.3.3多处理机分时系统
9.4设计上的考虑
9.4.1透明性
9.4.2灵活性
9.4.3可靠性
9.4.4性能
9.4.5可扩展性
9.5小结
习题
第10章 分布式系统中的通信问题
10.1分层协议
10.1.1物理层
10.1.2数据链路层
10.1.3网络层
10.1.4传输层
10.1.5会话层
10.1.6表示层
10.1.7应用层
10.2客户-服务器模型
10.2.1客户和服务器
10.2.2一个客户和服务器的实例
10.2.3寻址
10.2.4阻塞与非阻塞原语
10.2.5缓冲和非缓冲原语
10.2.6可靠和不可靠原语
10.2.7实现客户-服务器模型
10.3远程过程调用
10.3.1基本的RPC操作
10.3.2参数传递
10.3.3动态联编
10.3.4出现差错时的RPC语义
10.3.5与实现相关的论题
10.3.6问题域
10.4组通信
10.4.1组通信入门
10.4.2与设计有关的问题
10.4.3ISIS中的组通信
10.5小结
习题
第11章 分布式系统中的同步
11.1时钟同步
11.1.1逻辑时钟
11.1.2物理时钟
11.1.3时钟同步算法
11.2互斥
11.2.1集中式算法
11.2.2分布式算法
11.2.3令牌环算法
11.2.4三种算法的比较
11.3选举算法
11.3.1Bully算法
11.3.2环算法
11.4原子事务
11.4.1原子事务简介
11.4.2事务模型
11.4.3实现
11.4.4并发控制
11.5分布式系统中的死锁
11.5.1分布式死锁的检测
11.5.2分布式死锁的预防
11.6小结
习题
第12章 分布式系统中的进程及处理器
12.1线程
12.1.1线程的引入
12.1.2线程使用
12.1.3线程包的设计问题
12.1.4线程包的实现
12.1.5线程和RPC
12.1.6一个线程包的例
12.2系统模型
12.2.1工作站模型
12.2.2使用空闲工作站
12.2.3处理器池模型
12.2.4混合模型
12.3处理器分配
12.3.1分配模型
12.3.2处理器分配算法的设计原则
12.3.3处理器分配算法的实现问题
12.3.4处理器分配算法实例
12.4分布式系统中的调度
12.5小结
习题
第13章 分布式文件系统
13.1 分布式文件系统设计
13.1.1文件服务的接口
13.1.2目录服务器接口
13.1.3文件共享的语义
13.2分布式文件系统的实现
13.2.1文件的使用
13.2.2系统结构
13.2.3缓存区处理
13.2.4复制性
13.2.5例子:Andrew文件系统
13.2.6经验教训
13.3分布式文件系统的发展趋势
13.3.1新的硬件
13.3.2可伸缩性
13.3.3广域网
13.3.4移动用户
13.3.5容错
13.4 小结
习题
第14章 实例研究3: AMOEBA
14.1Amoeba简介
14.1.1Amoeba的历史
14.1.2研究目的
14.1.3Amoeba的体系结构
14.1.4Amoeba微内核
14.1.5Amoeba服务程序
14.2Amoeba中的对象与权限字
14.2.1权限字
14.2.2对象的保护
14.2.3标准操作
14.3Amoeba中的进程管理
14.3.1进程
14.3.2线程
14.4Amoeba的内存管理
14.4.1段的管理
14.4.2段的映像
14.5Amoeba的通信
14.5.1远程过程调用
14.5.2Amoeba的组通信
14.5.3快速局域网协议
14.6Amoeba服务器
14.6.1文件服务器
14.6.2目录服务器
14.6.3复制服务器
14.6.4运行服务器
14.6.5引导服务器
14.6.6TCP/IP服务器
14.6.7其他服务器
14.7小结
习题
第15章 实例研究4: Mach操作系统
15.1概述
15.1.1Mach的历史
15.1.2Mach的设计目标
15.1.3Mach的微内核
15.1.4Mach的BSDUNIX服务器
15.2Mach中的进程管理
15.2.1进程
15.2.2线程
15.2.3调度
15.3Mach的存储管理
15.3.1虚拟存储
15.3.2内存共享
15.3.3外部存储管理器
15.3.4Mach的分布式共享内存
15.4MACH中的通信
15.4.1端口
15.4.2发送和接收消息
15.4.3网络信息服务器
15.5Mach中的BSDUNIX仿真
15.6Amoeba与Mach的比较
15.6.1基本原理
15.6.2对象
15.6.3进程
15.6.4存储模式
15.6.5通信
15.6.6服务程序
15.7小结
习题
附录A 阅读材料及参考文献
附录B C语言简介
· · · · · · (收起)

读后感

评分

这篇书评主要想写给自己看。还记得当时翻开这本书之前,对操作系统的满心敬畏,心中只想赶快开始去学习其中的知识,期待赶快明白操作系统到底是怎么回事,操作系统到底为我们做了些什么。现在看完了这本书,并没有像想象中那样对操作系统了然于胸。反而是徒增了更多困惑,知道...  

评分

LRU被翻译成"最近最少使用". Least Recent Used应该翻译成"最久未使用",而"最近最少使用"对应的则是Least Frequently Used. 这个错误让我在讲述替换算法的那一节徘徊了很久,后来是对照着 操作系统概念影印版才弄明白这些算法的不同  

评分

终于读完了,有种如释重负的感觉。 原书篇幅不小,作为一个英语并非强项的读者来说,不时需要查查词典甚至对照下中文版来阅读的。 其实书背上关于作者Tanenbaum的介绍,唯独缺了一条:MINIX最初的作者!这点是我在读时看到一句“MINIX是由本书的作者写的”这样轻描淡写的话时才...  

评分

有些地方翻译的太差了。 举一例: 原书: The fork call returns a value, which is zero in the child and equal to the child's process identifier or PID in the parent. 书中的翻译: ford调用返回一个值, 在子进程中该值为0,并且等于子进程的进程标识符,或等于父进...  

评分

主要讲操作系统的各个方面, 第一章引论,比较杂. 第二章进程与线程.讲的很详细,不过我有一部分还是没有看懂. 第三章的存储管理我感觉实际就是内存管理. 第四章的文件系统就比较简单了,没有很多的原理性的介绍,都很好理解. 第五章输入输出就更杂了. 第六章 死锁 没几页 第七章和...  

用户评价

评分

这本《现代操作系统》简直是技术书籍中的一股清流!我是一个在校学生,平时接触的教材大多枯燥乏味,硬邦邦的理论堆砌,读起来昏昏欲睡。但这本书完全不一样,作者似乎深谙如何将复杂的底层原理用生动形象的方式呈现出来。比如讲到进程调度的时候,它不仅仅是罗列算法,而是通过一个个贴近生活的比喻,比如餐厅点餐、交通信号灯控制,让我一下子就抓住了不同调度策略的优缺点和适用场景。尤其欣赏它对实时操作系统的讲解,那部分内容通常是其他书中一笔带过或者解释得含糊不清的,这本书却能深入浅出地剖析硬实时和软实时的差异,甚至还探讨了最新的多核、异构计算环境下调度器的挑战。我已经把书里关于内存虚拟化的章节反复看了三遍,现在对分页、分段以及TLB的工作机制有了前所未有的清晰理解。对于想真正搞懂操作系统“为什么这么设计”的读者来说,这本书的深度和广度都是一流的,读完后,感觉对整个计算机体系结构都有了更宏观的认识。

评分

我是一位业余的系统爱好者,对计算机底层知识充满好奇,但苦于没有计算机科学的科班背景,很多专业术语和概念对我来说简直是天书。一开始我很担心这本“现代”的教材会过于晦涩难懂,毕竟“现代”往往意味着更深层次的抽象。但这本书的叙事方式极其友好,它仿佛有一位耐心的导师在旁边引导。每引入一个新概念,比如“缓存一致性”或者“内存屏障”,作者都会先从一个非常直观的例子入手,解释为什么我们需要这个机制来保证数据正确性,然后再逐步过渡到硬件层面的实现细节。它对于并发控制的讲解尤其出色,从互斥锁到信号量,再到更高级的无锁数据结构,层层递进,逻辑清晰得让人心悦诚服。这本书让我不再害怕那些深奥的术语,而是将操作系统看作是一个精妙且相互关联的工程系统,极大地激发了我探索更多底层技术的兴趣。

评分

作为一名在工业界摸爬滚打多年的资深开发工程师,我不得不说,市面上很多操作系统教材都停留在上个世纪的架构上,对于现代云计算、容器化和微服务带来的新挑战,往往束手无策。然而,这本《现代操作系统》展现了惊人的前瞻性。它并没有沉溺于对传统UNIX内核的详细剖析,而是花了大量篇幅来探讨I/O子系统的革新,特别是异步I/O模型(如Linux的io_uring)是如何提升性能瓶颈的。更让我眼前一亮的是,它对安全性和虚拟化技术的结合进行了深入探讨,包括KVM和Hyper-V的基本原理,这对于我们构建更安全、隔离性更强的云原生应用至关重要。书中的案例分析非常贴合实际工作场景,它不是教你如何写一个简单的shell,而是教你理解为什么现在的内核会选择这种复杂的数据结构来应对高并发。这本书的知识密度极高,读完后感觉我的工具箱里多了好几把解决实际性能问题的“利器”,绝对是工程师书架上不可或缺的宝典。

评分

我个人认为,这本书的价值在于它成功地架起了学术研究与工程实践之间的鸿沟。很多操作系统的经典著作专注于描述一个特定系统的设计哲学,但《现代操作系统》则更侧重于“通用原理”和“演进趋势”。它没有局限于某一个特定版本的Linux或Windows,而是提炼出了跨平台、跨架构的通用设计思想。比如,它对安全沙箱和权限分离的探讨,就将SELinux、AppArmor以及Android/iOS中的沙箱机制进行了对比分析,使读者能够跳出单一系统的框架,理解现代安全设计的大趋势。我特别喜欢它在每章末尾引用的参考文献,那些都是真正推动领域发展的开创性论文,这为我后续的深入研究指明了清晰的路径。总的来说,这本书的语言严谨而不失活力,内容组织极具条理,对于任何想在这个领域走得更远的人来说,它不仅仅是一本教科书,更是一部思想指南。

评分

坦率地说,我购买这本书是带着一丝怀疑的,毕竟“现代操作系统”这个标题太大了,很容易沦为泛泛而谈的概述性读物。然而,事实证明,它在广度和深度之间找到了一个近乎完美的平衡点。它的覆盖面很全,从文件系统的持久化策略到网络协议栈在内核中的集成,都有涉猎。但更难得的是,它在关键领域做到了深入挖掘。例如,在讲到分布式系统中的一致性模型时,它不仅提到了CAP理论,还非常详细地对比了Paxos和Raft算法的选举机制和日志复制过程,这种对系统工程核心难点的把握,是其他教材望尘莫及的。这本书的图表设计也非常精良,那些关于数据流和状态转换的示意图,清晰明了,帮助我迅速定位了复杂的逻辑流程。对于希望构建或维护大型、高可靠性系统的架构师来说,这本书提供的理论基础和实践见解具有极高的参考价值。

评分

主要学习其中的 存储管理和文件系统

评分

概念比较强

评分

要读e版

评分

主要学习其中的 存储管理和文件系统

评分

3rd ed, 2009

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.quotespace.org All Rights Reserved. 小美书屋 版权所有