序 xix
Stephen J.Mellor
前言 xxiii
部分 论架构
章 何谓架构 3
John Klein 与David Weiss
简介 3
创建软件架构 10
架构结构 14
好的架构 19
美丽架构 20
致谢 23
参考文献 23
第2章 两个系统的故事:摩登时代的软件神话 25
Pete Goodliffe
混乱大都市 26
设计之城 33
然后呢 41
轮到你了 41
参考文献 42
第2部分 企业应用架构
第3章 可伸缩架构 45
Jim Waldo
简介 45
上下文 47
架构 51
对架构的思考 57
第4章 记忆留存 63
Michael Nygard
功能与约束 64
工作流 65
架构要素 66
用户反应 87
结论 88
参考文献 88
第5章 面向资源架构:在Web 之中 89
Brian Sletten
简介 89
传统的Web 服务 90
Web 92
面向资源架构 98
数据驱动应用 102
运用面向资源架构 103
结论 109
第6章 数据增长:Facebook 平台的架构 111
Dave Fetterman
简介 111
创建社交Web 服务 117
创建社交数据查询服务 124
创建社交Web 门户:FBML 133
系统的支持功能 146
总结 151
第3部分 系统架构
第7章 XEN 与虚拟化之美 155
Derek Murray 与Keir Fraser
简介 155
Xenoservers 156
虚拟化的挑战 159
半虚拟化 159
Xen 的变化 163
变化中的硬件,变化中的Xen 169
前车之鉴 172
延伸阅读 173
第8章 Guardian:一个容错操作系统环境 175
Greg Lehey
Tandem/16:未来所有计算机都将像这样构建 176
硬件 176
机械设计 178
处理器架构 179
处理器间总线 184
输入/输出 184
进程结构 185
消息系统 186
文件系统 190
逸闻趣事 195
弊端 195
后继者 197
延伸阅读 198
第9章 JPC:纯Java 的X86 PC 模拟器 199
Rhys Newman 与Christopher Dennis
简介 200
概念验证 202
PC 架构 205
Java 性能技巧 206
4GB 放入4GB:这不会奏效 207
保护模式的危险 210
屡败屡战 214
劫持JVM 217
终极灵活性 229
终极安全性 231
吃一堑长一智 232
0章 元循环虚拟机的力量:Jikes RVM 235
Ian Rogers 与Dave Grove
背景 236
运行时环境之谜 237
Jikes RVM 简史 240
自部署运行时的自举 241
运行时组件 246
前车之鉴 259
参考文献 259
第4部分 终端用户应用架构
1章 GNU Emacs:滋生的特性为其优势 263
Jim Blandy
Emacs 在使用 264
Emacs 的架构 266
滋生的特性 272
另外两个架构 275
2章 当集市开始构建教堂 279
Till Adam 与Mirko Boehm
简介 279
KDE 项目的历史与架构 282
Akonadi 287
ThreadWeaver 303
第5部分 语言与架构
3章 软件架构:面向对象 vs.面向函数 315
Bertrand Meyer
概览 315
函数式示例 318
评估函数式解决方案的模块化 321
面向对象视图 330
评估和改进面向对象的模块化 336
代理:将操作包裹到对象中 341
致谢 345
参考文献 346
4章 重读经典 349
Panagiotis Louridas
万物皆对象 353
类型被隐式定义 361
问题 367
土木建筑架构 372
参考文献 380
跋 383
William J.Mitchell
贡献者 387