计算机系统设计原理
计算机系统设计原理封面图

计算机系统设计原理

(美) 索尔特 (Saltzer,J.H.) , (美) 卡休克 (Kaashoek,M.F.) , 著

出版社:清华大学出版社

年代:2012

定价:39.0

书籍简介:

本书是第一本阐述计算机系统设计中的基本原理和抽象的教材,是麻省理工开放式课程计划(MIT Open Courseware)中“计算机系统工程”课程的主教材。计算机系统的基本原理横跨于操作系统、网络、数据库、分布式系统、程序设计语言、软件工程以及计算机体系结构等方面。通过详细分析每个基本原理的案例,本书演示了如何应用这些原理和抽象来解决实际的计算机系统设计问题。

书籍目录:

第1章 系统

1.0 概述

1.1 系统和复杂性

1.1.1 不同领域中系统的共同问题

1.1.2 系统、组件、接口和环境

1.1.3 复杂性

1.2 复杂性的来源

1.2.1 相互影响的需求

1.2.2 保证高利用率

1.3 处理复杂性Ⅰ

1.3.1 模块化

1.3.2 抽象化

1.3.3 层次化

1.3.4 分级化

1.3.5 组合起来:用名字关联

1.4 求同存异:计算机系统与其他系统的比较

1.4.1 计算机系统组合没有限制

1.4.2 d(技术)/dt是前所未有的

1.5 处理复杂性Ⅱ

1.5.1 为什么模块化、抽象化、层次化和分级化还不够

1.5.2 迭代法

1.5.3 保持简单

1.6 本书其他内容

习题

第2章 计算机系统的组成部分

2.0 概述

2.1 3种基本抽象

2.1.1 存储器

2.1.2 解释器

2.1.3 通信链路

2.2 计算机系统中的命名

2.2.1 命名模型

2.2.2 默认上下文引用和显式上下文引用

2.2.3 路径名、命名网络和递归名字解析

2.2.4 多重查找:在分层的上下文中搜索

2.2.5 名字比较

2.2.6 名字发现

2.3 用名字和层次结构组织计算机系统

2.3.1 硬件层:总线

2.3.2 软件层:文件抽象

2.4 总结经验,面向未来

2.5 案例分析:UNIX文件系统中的层次和命名

2.5.1 UNIX文件系统应用程序编程接口

2.5.2 块层

2.5.3 文件层

2.5.4 mnode编号层

2.5.5 文件名层

2.5.6 路径名层

2.5.7 连接

2.5.8 重命名

2.5.9 绝对路径层

2.5.10 符号连接层

2.5.11 实现文件系统API

2.5.12 Shell,隐式上下文搜索路径,名字发现

2.5.13 进一步阅读推荐

习题

第3章 命名方案的设计

3.0 概述

3.1 命名方案设计中的考虑因素

3.1.1 模块化共享

3.1.2 元数据与名字重载

3.1.3 地址:定位对象的名字

3.1.4 生成唯一的名字

3.1.5 预期用户与用户友好的名字

3.1.6 名字、值和绑定的相对寿命

3.1.7 回顾和展望:名字是基本的系统组件

3.2 案例研究:统一资源定位器(URL)

3.2.1 网页浏览作为参考经历;名字发现

3.2.2 URL的解释

3.2.3 URL大小写敏感性

3.2.4 部分URL的错误上下文引用

3.2.5 URL中的名字重载

3.3 战争故事:名字使用中的病症

3.3.1 名字冲突赶走了笑容

3.3.2 来自重载的脆弱名字以及市场对策

3.3.3 来自重载的更加脆弱的名字,伴随市场崩溃

3.3.4 用户友好的名字中的大小写敏感性

3.3.5 电话号码的用尽

习题

第4章 使用客户及服务增强模块化

4.0 概述

4.1 客户/服务组织方式

4.1.1 从软模块化到强制模块化

4.1.2 客户/服务的组织方式

4.1.3 多客户端和多服务器

4.1.4 可信中间方

4.1.5 一个简单的例子服务

4.2 客户端和服务端之间的通信

4.2.1 远程过程调用(RPC)

4.2.2 RPC不等于过程调用

4.2.3 通过中间方的通信

4.3 总结及前景

4.4 案例研究:因特网域名系统(DNS)

4.4.1 DNS中的名字解析

4.4.2 层次化的名字管理

4.4.3 DNS的其他特点

4.4.4 DNS中的名字发现

4.4.5 DNS响应的可信性

4.5 案例研究:网络文件系统(NFS)

4.5.1 命名远程的文件和目录

4.5.2 NFS的远程过程调用

4.5.3 扩展UNIX文件系统来支持NFS

4.5.4 一致性

4.5.5 NFS版本3及后续版本

习题

第5章 使用虚拟化技术强制模块化

第6章 性能

关于第二部分

附录A:二元分类的权衡

进一步阅读推荐

问题集

术语表

内容摘要:

据我们所知,《世界著名计算机教材精选:计算机系统设计原理》在内容和方法上是非常独特的。《世界著名计算机教材精选:计算机系统设计原理》深入而且广泛地介绍了构造计算机系统的主要原理和概念,这里我们所讲的计算机系统,是指广义的计算机系统,包括操作系统、客户端.服务器应用程序、数据库系统、安全的Web网站以及容错的磁盘集群等。这些原则和抽象是不受时间影响的,不管读者是否是计算机系统专业的学生或专业人士,这些原则都具有重要价值。这些原则和抽象经过了多代计算机系统的证明,《世界著名计算机教材精选:计算机系统设计原理》作者具有构建计算机系统的经验,并讲授了该课程数十年。   本书介绍了计算机系统中相当广泛的原理和抽象,并深入介绍了它们。本书使用伪代码介绍核心概念,使得读者可以测试他们对于该概念的具体实例的理解。通过使用伪代码,本书将客户端.服务器计算、远程过程调用、文件、线程、地址空间、尽量送达网络、原子性、验证的消息等概念的精华展现给读者。在本书的习题中,我们延续了这一方法,使得读者可以通过研究伪代码来探讨。   本书分成两部分,第一部分是读者拿到的书籍,仅包括前6章,第二部分包括第7~11章和一些辅助材料,已发布在网络上作为开放的教育资源。请参见后面的“到哪里找到第二部分和其他在线材料”。

编辑推荐:

《世界著名计算机教材精选:计算机系统设计原理》由计算机系统设计的权威专家、美国麻省理工学院Saltzer和Kaashock教授编写。《世界著名计算机教材精选:计算机系统设计原理》是第一本阐述计算机系统设计中的基本原理和抽象的教材,是麻省理工开放式课程计划(MIT Open Courseware)中“计算机系统工程”课程的主教材。计算机系统的基本原理横跨于操作系统、网络、数据库、分布式系统、程序设计语言、软件工程以及计算机体系结构等方面。通过详细分析每个基本原理的案例,本书演示了如何应用这些原理和抽象来解决实际的计算机系统设计问题。本书的重点是计算机系统的设计,因此,本书阐述了那些在实践中已证明是成功的抽象概念,如命令、远程过程调用、客户/服务器组织结构、文件系统、事务处理、修复复制、读/写一致性,以及认证与保密消息等概念。这些抽象概念使得计算机系统设计者可以川功能日益强大的模块来构建计算机系统,保护计算机系统避免从意外的编程错误到恶意入侵存内的各种故障。本书描述了如何实现这些抽象概念,演示了如何把它们应用于不同的系统,为读者日后的设计工作打下基础。

书籍规格:

书籍详细信息
书名计算机系统设计原理站内查询相似图书
9787302294597
如需购买下载《计算机系统设计原理》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次1版印次1
定价(元)39.0语种简体中文
尺寸26 × 19装帧平装
页数印数

书籍信息归属:

计算机系统设计原理是清华大学出版社于2012.出版的中图分类号为 TP302.1 的主题关于 电子计算机-系统设计-教材 的书籍。