第1章 绪论 1
第2章 可信操作系统 10
2.1 操作系统的形成背景 10
2.2 操作系统的分类 11
2.3 操作系统的基本功能 12
2.3.1 存储管理 12
2.3.2 进程及处理机管理 13
2.3.3 设备管理 16
2.3.4 文件管理 16
2.3.5 操作系统的功能 17
2.4 操作系统结构 18
2.5 UNIX操作系统 18
2.5.1 UNIX操作系统的体系结构 18
2.5.2 UNIX文件系统 20
2.5.3 UNIX操作系统的进程管理 21
2.6 实时操作系统 24
2.6.1 基本概念 24
2.6.2 与通用操作系统比较 25
2.6.3 流行的实时操作系统 26
2.7 可信操作系统 27
2.7.1 基本概念 27
2.7.2 安全策略 28
2.7.3 安全模型 30
2.7.4 可信操作系统的设计 31
2.7.5 可信操作系统的保证 39
2.8 小结 43
第3章 应用程序设计语言 44
3.1 程序设计语言是什么 44
3.2 程序设计语言的进化 45
3.2.1 低级编程语言 45
3.2.2 第三代编程语言 46
3.2.3 第四代编程语言 47
3.3 面向对象的程序设计语言 49
3.3.1 面向对象的概念和术语 49
3.3.2 面向对象语言的概况 52
3.3.3 各类面向对象语言的比较 54
3.4 编译原理 55
3.4.1 编译程序的组成 55
3.4.2 编译程序的遍 61
3.5 程序设计语言的选择 62
3.5.1 可移植性的两种形式 63
3.5.2 克服应用平台依赖性 63
3.6 小结 65
第4章 数据库系统 66
4.1 概述 66
4.1.1 实体,信息,数据 66
4.1.2 数据管理的演变 67
4.1.3 什么是数据库 67
4.1.4 实体模型与E-R图 68
4.1.5 数据模型 69
4.1.6 数据库系统的构成 71
4.2 关系数据库 72
4.3 数据库设计 74
4.4 SQL语言 75
4.5 数据库系统实例 78
4.5.1 Oracle数据库管理系统的体系结构 78
4.5.2 Sybase数据库系统 88
4.6 新型的数据库系统 91
4.6.1 依照数据模型划分 92
4.6.2 依照体系结构划分 92
4.6.3 依照数据类型划分 92
4.7 数据库新技术——数据仓库 93
4.7.1 什么是数据仓库 93
4.7.2 数据仓库的体系结构 94
4.7.3 数据库系统与数据仓库系统比较 95
4.7.4 数据仓库的设计方法及设计步骤 96
4.7.5 OLAP技术及其实施 98
4.7.6 数据挖掘 100
4.7.7 数据仓库的应用及发展状况 103
4.8 数据库安全 103
4.8.1 安全需求 103
4.8.2 敏感数据 106
4.8.3 数据库安全的实现 107
4.8.4 多级安全数据库 118
4.9 小结 122
第5章 开放系统环境——应用可移植性 124
5.1 基本概念 124
5.1.1 开放系统的定义 124
5.1.2 开放系统的特性 126
5.1.3 开放体系的构架 127
5.2 POSIX开放系统环境 129
5.2.1 OSE的目标 129
5.2.2 OSE参考模型 130
5.3 应用可移植性轮廓——OSE/1版本2.0 131
5.3.1 APP服务域 131
5.3.2 集成支持服务 134
5.3.3 联合技术体系结构 135
5.4 应用可移植性 139
5.4.1 应用可移植性的类型 139
5.4.2 应用可移植性界面 140
5.4.3 应用可移植性进程活动 142
5.4.4 用户对应用可移植性的要求 144
5.5 小结 145
第6章 软件工程——软件质量保证与控制 147
6.1 传统的开发方法 148
6.1.1 瀑布模型 148
6.1.2 快速原型模型 149
6.1.3 螺旋模型 149
6.2 软件质量控制与保证 150
6.2.1 基本概念 150
6.2.2 质量管理体系概述 152
6.2.3 软件开发过程的管理 159
6.3 软件生产与管理模型——SEI-CMM简介 161
6.3.1 SEI-CMM 161
6.3.2 CMM成熟度等级的定义 162
6.3.3 成熟度等级的关键过程区域 162
6.3.4 运用CMM 164
6.4 面向对象的软件工程方法简介 165
6.4.1 面向对象的建模 166
6.4.2 面向对象开发方法 167
6.4.3 CASE工具 170
6.5 软件复用和构件库 172
6.5.1 软件复用的概念 172
6.5.2 实现软件复用的关键因素 174
6.5.3 构件库技术 176
6.6 小结 178
第7章 分布式计算与网格计算 179
7.1 概述 179
7.1.1 分布式系统的定义 179
7.1.2 分布式系统的特征 179
7.1.3 分布式系统实现的关键技术 180
7.1.4 分布式系统的评价 180
7.2 分布式计算范型 181
7.2.1 范型和抽象 181
7.2.2 分布式应用范型 181
7.2.3 对各种范型的评价 185
7.3 分布式计算环境 185
7.3.1 DCE概述 185
7.3.2 DCE体系结构 186
7.3.3 DCE服务 186
7.4 分布式对象技术 187
7.4.1 分布式对象 187
7.4.2 通用对象请求代理体系结构 188
7.4.3 DCOM模型 191
7.4.4 DCOM与CORBA的比较和发展 192
7.5 中间件技术 193
7.5.1 中间件的定义 193
7.5.2 中间件的分类 193
7.6 分布式系统的应用 195
7.6.1 计算机支持协同工作 195
7.6.2 分布式系统在军事上的应用 199
7.7 网格计算 200
7.7.1 网格计算环境的结构及基本功能 200
7.7.2 网格计算的关键技术 201
7.7.3 网格计算项目 202
7.7.4 网格面临的挑战及其发展趋势 203
7.8 小结 203
第8章 Agent技术 205
8.1 基本概念 205
8.1.1 Agent的概念 206
8.1.2 Agent的特性 206
8.1.3 Agent的分类 208
8.1.4 Agent的体系结构 208
8.1.5 Agent与相关领域的关系 211
8.2 多Agent系统 213
8.2.1 多Agent系统概念 213
8.2.2 多Agent系统体系结构 213
8.3 Agent系统的通信 214
8.3.1 Agent系统通信和交互层次模型 214
8.3.2 Agent通信 215
8.3.3 任务分派 219
8.3.4 消解冲突 220
8.4 移动Agent 221
8.4.1 移动Agent定义 221
8.4.2 移动Agent的移动性 222
8.4.3 三种分布计算模式 222
8.4.4 移动Agent技术的优势 223
8.4.5 移动Agent系统的安全性 225
8.4.6 几种典型的移动Agent系统 230
8.4.7 移动Agent平台——Aglet 230
8.5 Agent应用 232
8.5.1 Agent在分布式网络管理中的应用 232
8.5.2 Agent在工作流中的应用 234
8.6 小结 239
第9章 应用系统集成 241
9.1 系统转型的因素 241
9.2 信息体系结构框架 243
9.2.1 信息体系结构框架概述 243
9.2.2 数据体系结构 245
9.2.3 功能体系结构 247
9.2.4 业务流程建模 247
9.2.5 技术体系结构 253
9.3 集成体系结构 254
9.4 企业应用集成 255
9.4.1 集成模型 255
9.4.2 集成与耦合 255
9.4.3 三种集成模型 256
9.5 EAI的基本组成模块 263
9.5.1 通信模式 263
9.5.2 集成方法 265
9.5.3 中间件 267
9.5.4 服务模块 268
9.6 SAIM方法 269
9.6.1 EAI对高效方法论的需求 270
9.6.2 SAIM原则 270
9.6.3 SAIM活动领域 270
9.7 面向服务体系结构简介 277
9.7.1 SOA的概念与服务模型 277
9.7.2 面向服务的集成技术与规范 277
9.7.3 SOA的优点 279
9.8 小结 279
第10章 软件安全 281
10.1 计算机安全的含义 281
10.1.1 安全的目标 281
10.1.2 脆弱性 282
10.1.3 防御和控制 285
10.2 软件安全的目标 286
10.2.1 软件安全性目标 286
10.2.2 与体系结构安全性相关的属性 287
10.3 程序安全性 288
10.3.1 程序缺陷 288
10.3.2 隐蔽通道:泄露信息的程序 295
10.4 加密与认证 298
10.4.1 加密 298
10.4.2 认证 301
10.5 访问控制模型 302
10.5.1 自主访问控制模型 302
10.5.2 强制访问控制模型 303
10.5.3 RBAC模型 304
10.6 构建安全软件指导原则 305
10.7 软件稽核 308
10.7.1 安全性作为一个体系结构的目标 308
10.7.2 体系结构的安全性分析 309
10.7.3 实现的安全分析 310
10.8 小结 310
缩略语 311