1、112011 年软考系统架构设计师学习笔记第一章1.1.1 系统架构师的概念现代信息系统“架构” 三要素:构件、模式、规划; 规划是架构的基石,也是这三个贡献中最重要的。架构本质上存在两个层次:概念层,物理层。1.2.1 系统架构师的定义负责 理解、管理 并最终确认和评估 非功能性系统需求,给出开发规范,搭建系统实现的核心架构,对整个软件架构、关键构建、接口 进行总体设计 并澄清关键技术细节。主要着眼于系统的“技术实现”,同时还要考虑系统的“组织协调” 。要对所属的开发团队有足够的了解,能够评估该开发团队实现特定的 功能需求目标和资源代价。1.2.2 系统架构师技术素质对软件工程标准规范有良好
2、的把握。1.2.3 系统架构师管理素质系统架构师是一个高效工作团队的创建者,必须尽可能使所有团队成员的想法一致,为一个项目订制 清晰的、强制性的、有元件的目标 作为整个团队的动力;必须提供特定的 方法和模型 作为理想的技术解决方案;必须避免 犹豫,必须具备及时解决技术问题的 紧迫感和自信心。1.2.4 系统架构师与其他团队角色的协调系统分析师,需求分析,技术实现系统架构师,系统设计,基于环境和资源的系统技术实现项目管理师,资源组织,资源实现由于 职位角度出发产生冲突制约,不可能很好地给出 开发规范,搭建系统实现的 核22心架构,并澄清技术细节,扫清主要难点。所以 把架构师定位在 项目管理师与系
3、统分析师 之间,为团队规划清晰的目标。对于大型企业或项目,如果一人承担多个角色,往往容易发生顾此失彼的现象。1.3 系统架构师知识结构需要从大量互相冲突 的系统方法和工具中 区分出 哪些是有效的,那些是无效的。1.4 从开发人员到架构师总结自己的架构模式,深入行业总结规律。几天的培训不太可能培养出合格的软件架构师,厂商的培训和认证,最终目的是培养自己的市场,培养一批忠诚的用户或产品代言人,而不是为中国培养软件架构师。2011 年软考系统架构设计师学习笔记第二章计算机网络基础知识计算机系统 由 硬件和软件组成,软件通常分为 系统软件和应用软件。系统软件支持应用软件的运行,为用户开发应用软件提供平
4、台,用户可以使用它,但不能随意修改它。常用的系统软件有 操作系统、语言处理程序、连接程序、诊断程序、数据库 等。应用软件指 计算机用户利用 软硬件资源 为某一专门的应用目的而开发的软件。2.1 操作系统基础知识操作系统 Operating System,是计算机系统的核心系统软件。2.1.1 操作系统的原理、类型、结构1、操作系统定义硬件资源包括 中央处理器、存储器、输入输出设备。软件资源是以 文件形式保存在存储器上的 程序和数据。操作系统既 有效组织和管理 系统中各种 软硬件资源,合理地组织计算机系统的工作33流程,又控制程序的执行,为用户使用计算机 提供了一个 良好的环境和友好的接口。2、
5、操作系统分类按功能不同分:单用户操作系统、批处理操作系统;分时操作系统、实时操作系统;网络操作系统、分布式操作系统;嵌入式操作系统。3、操作系统的特征并发性、共享性、虚拟性、不确定性。4、操作系统的功能进程管理、文件管理、存储管理、设备管理、作业管理。2.1.2 处理机 与 进程管理1、进程的定义及其分类进程通常由 程序、数据、进程控制块 PCB 组成。2、进程的状态转换与控制就绪、运行、阻塞。进程控制是通过 进程控制原语实 现的,进程控制原语主要有:创建原语、撤销原语、挂起原语、激活原语、阻塞原语、唤醒原语。注:原语不可分割,不允许中断。3、进程互斥与同步 以及 P/V 操作同步是使在异步环
6、境下的各进程按一定的 顺序和速度 执行。互斥 要保证临界资源 一次只能提供一个进程使用,称为 临界资源 CR。PV 操作是低级通信原语,在执行期间不可分割,P 表示申请一个资源,V 表示释放一个资源。P 操作定义: S:=S-1,若 S=0,则执行 P 操作的进程继续执行,否则若 S0, 则执行 V 操作的进程继续执行,否则若 S=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行 V 操作的进程继续执行。4 、进程通信与管程控制信息的交换称为低级通信,数据的交换称为高级通信。高级通信的类型有 共享存储系统、消息传递系统、管道通信。在任一时刻最多只有一个进程能够真正地进入管程,其他的只
7、能等待。5、进程调度与死锁产生死锁的四个必要条件:互斥条件、请求保持条件、不可剥夺条件、环路条件。预防策略,破坏死锁的四个必要条件之一。6、线程线程是进程中的一个实体,是被系统独立分配和调度的基本单位。线程只拥有一些运行中必不可少的资源。同一个进程中的多个线程可以并发执行,线程具有:就绪、运行、阻塞,三个基本状态。2.1.3 存储管理存储器的发展方向是:高速、大容量、小体积。存储管理的主要任务是:如何提高主存的 利用率、扩充主存 以及对主存信息实现有效保护。2.1.4 设备管理设备管理的目标是:提高设备的利用率,为用户提供方便统一的界面。磁盘调度算法:先来先服务 FCFS、最短寻道时间优先 S
8、STF、扫描算法 SCAN。2.1.5 文件管理随机访问是指对文件中的信息可以按任意次序随机读写文件中的信息。55文件控制块 FCB,描述和控制文件的数据结构。2.1.6 作业管理常用的作业调度算法有:先来先服务、短作业优先、相应比高优先、优先级调度算法、均衡调度算法。2.1.7 网络操作系统 NOS网络操作系统分为:集中模式、客户机/服务器模式、对等模式。现代操作系统已经把网络功能包含到操作系统的内核中,作为操作系统核心功能的一个组成部分。2.2.1 关系数据库基础数据库的三要素:数据结构、数据操作、数据约束条件。特别需要指出的是,E-R 模型强调的是 语义。关系数据库设计理论的核心是 数据
9、间的函数依赖,衡量的标准是 关系规范化的程度 及分解的无损连接 和 保持函数依赖性。数据依赖包括:函数依赖、非平凡的函数依赖、平凡的函数依赖、完全函数依赖、部分函数依赖、传递依赖、码、主属性、非主属性、外码、值依赖定义、函数依赖的公理系统。事务是数据库环境中 不可分割 的逻辑工作单位。四个特性:原子性、一致性、隔离性、持久性,ACID。SQL 语言中事务定义语句有三条:BEGIN TRANSACTION 事务开始、COMMIT 事务提交、ROLLBAK 事务回滚。并发操作是指:在多用户共享系统中,用户可能同时对同一数据库进行操作。带来的问题主要有:丢失更新、不可重复读、读脏数据。并发控制主要技
10、术是封锁:排他锁(简称 X 锁、写锁)、共享锁( 简称 S 锁、读锁) 。保护数据库的关键技术在于 建立冗余数据、即 备份数据。方法是:数据转储、建立日志。662.2.2 关系数据库设计需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用程序设计、运行维护。E-R 方法的数据库概念结构设计可分三步:设计局部 E-R 模型、设计全局 E-R 模型、全局 E-R 模型优化。2.2.3 分布式数据库系统满足 分布性、逻辑相关性、场地透明性、场地自治性 的数据库系统被称为 完全分布式数据库系统。分布式数据库系统的特点:数据的集中控制性、数据独立性、数据冗余可控性、场地自治性、存取有效性。4 层模式
11、划分为:全局外层、全局概念层、局部概念、局部内层,各层还有相应的 层间映射。2.2.4 商业智能一般认为:数据仓库、连机分析处理、数据挖掘技术 是 商业智能 BI 的三大组成部分。数据仓库的关键特征:面向主题、集成的、非易失的、时变的。三层结构:数据仓库服务器、OLAP 服务器(连机分析处理 服务器) 、前端工具。数据仓库的实现步骤:规划、需求研究、问题分析、数据的 抽取 清洗 集成 装载、数据仓库设计、数据仓库管理、分析报表查询、数据仓库性能优化、数据仓库部署发布。切片、切块、下钻、上卷、旋转 等多维度分析与跨维度分析。OLAP 系统架构主要分为:基于关系数据库的 ROLAP、基于多维数据库
12、的 MOLAP、基于混合数据组织的 HOLAP。数据挖掘是在 没有明确架设的前提下 去挖掘信息、发现知识。所得的信息应具有 先知、有效、实用,三个特征。主要功能有 5 类:自动预测趋势和行为、关联分析、聚类、概念描述、偏差检测。2.3 计算机网络基础知识77计算机网络按通信距离分 广域网、局域网、城域网;按信息交换方式分 电路交换网、分组交换网、综合交换网;按拓扑结构分 星型网、树形网、环形网、总线型网;按传输带宽分 基带网、宽带网;按使用范围分 公用网、专用网;按通信传播方式分 广播式、点到点式OSI/RM:把复杂的问题分解开,保持了层次之间的独立性。物理层、数据链路层、网络层、传输层、会话
13、层、表示层、应用层。2.3.2 计算机网络1、广域网、局域网、城域网广域网又称远程网,覆盖范围广,传输速率相对低,以数据通信为主要目的 的数据通信网。数据传输可靠性随着传输介质不同而不同、拓扑结构复杂。有公共交换电话网、各种公用数据网。局域网是指传输距离有限,传输速度较高,以共享网络资源为目的的网络系统,数据传输可靠 误码率低,网络控制一般为分布式,总线拓扑、环形拓扑、星型拓扑、混合型。城域网 是一种较大范围的高速网络。网络拓扑结构:网络中通信线路和节点的几何排序,反映各节点之间的结构关系,影响着整个网络的 设计、功能、可靠性、通信费用 等重要方面。局域网和城域网 都是 IEEE802 标准,
14、决定局域网主要技术有:传输介质、拓扑结构、介质访问控制方法。决定了传数据的类型、网络响应时间、吞吐率、利用率,以及网络应用。最重要的是 介质控制访问方法。(CSMA/CD)无线局域网具有以下优点:安装便捷、使用灵活、经济解约、易于扩展。IEEE8.2.112、网络互联网络互联目的是 使一个网络的用户能访问其他网络的资源,使不同网络上的用户能够 互相通信、交换信息。网络互联设备的作用是 连接不同网络。传输介质是信号传输的 媒体,常用的介质分为 有限介质 和 无线介质。局域网中,88其基本组成部件为 服务器、客户机、网络设备、通信介质、网络软件 等。3、Internet 及应用世界上规模最大、覆盖
15、面最广 且 最具影响力 的 计算机互联网络,它将分布在世界各地的计算机利用开放系统互连协议连接在一起,用来进行数据传输、信息交换、资源共享。TCP/IP 作为 Internet 的核心协议,已被广泛应用于局域网和广域网中,主要特性为:逻辑编址、路由选择、域名解析、错误检测、流量控制、对应用程序的支持 等。TCP/IP 是一个协议族,网际层除了 IP 协议外,还有 ICMP、ARP 、RARP 等几个重要协议Internet 的地址主要有两种书写形式:域名格式、 IP 地址格式。www 也成万维网/全球网,是指在 Internet 上 以超文本为基础形成的 信息网。采用统一的资源定位器 URL
16、和 图文声并茂的用户界面。2.3.3 网络管理与网络安全1、网络管理网络管理是对计算机网络的 配置、运行状态、计费 等进行管理。它提供了 监控、协调、测试 各种网络资源 以及 网络运行状况的手段,还可以提供 安全处理和积分 等功能。OSI 网络协议标准中定义了 网络管理的 5 大基本功能:配置管理、性能管理、故障管理、安全管理、计费管理。实际上还应该包括 网络规划、网络操作人员管理 等。2、计算机网络安全计算机网络安全是指 计算机、网络系统的 硬件、软件、数据 收到保护,不因偶然或恶意的原因而遭到 破坏、更改、泄漏,确保系统能 连续、可靠 地运行,使网络服务 不中断。网络安全从本质上讲 就是
17、网络上的 信息安全。信息的 传输、存储、访问 提供安全保护,以 防止信息被 窃取、篡改、非法操作。99信息安全的基本要素是 保密性、完整性、可用性、真实性、可控性。完整的信息安全保障体系应包括:保护、检测、响应、恢复。信息安全术语:密码学、鉴别、Kerberos 鉴别、公钥基础设施、数字签名、访问控制3 、 VPN所谓虚拟专用网,是建立在公用网上,没有专用物理连接,而通过 ISP 提供的公共网络来实现通信,VPN 内部用户可以实现安全通信。关键技术:隧道技术、加密技术、密钥管理技术、身份认证技术。解决方案:内联网 VPN、外连网 VPN、远程接入 VPN。2.3.4 网络工程网络规划、网络设计
18、阶段、工程组织、实施阶段、维护阶段。2.3.5 存储及负载均衡技术RAID 磁盘阵列,目的是 建立数据冗余、增强容错、提高容量、增进性能。网络存储体系结构大致分为三种:直接式存储 DAS、网络连接存储 NAS、存储区域存储 SAN。负载均衡 LoadBalance 从结构上分为:本地负载均衡、全局负载均衡。一般情况下从 传输链路聚合、采用更高层网络交换技术、设置服务器集群策略 三个角度实现。集群 Cluster,大多数模式下,集群中所有的计算机拥有一个共同的名称,各节点服务器通过一个内部局域网相互通讯,集群内任一系统上运行的服务都可被所有的网络客户所使用,当一台节点服务器发生故障时,这台服务器
19、上所运行的应用程序将在另一节点服务器上被自动接管,客户也能很快自动地连接到新的应用服务器上。2.4 多媒体技术及其应用媒体有两种含义:信息的载体、存储信息的实体。根据 ITU-T(原 CCITT)建议,媒体有 5 种:感觉媒体、表示媒体、显示媒体、存储媒体、1010传输媒体。International Consultative Committe On Telecommunication And Telegraphy,CCITT ,国际电报电话咨询委员会。多媒体技术是指:以数字化为基础,对多种媒体信息进行 采集、编码、存储、传输、处理、表现,使之建立有机的逻辑联系,具有良好的 交互性 的技术。多
20、媒体的特征:多样性、集成性、交互性、实时性。2.4.2 多媒体数据压缩编码技术JPEG ,Joint Photographic Experts Group,联合图像专家小组,是一种对静态图像压缩的编码算法。 “联合” 的含义是:CCITT 和 ISO 联合组成的图像专家小组。MPEG,Moving Picture Experts Group,运动图像专家小组,是作为一个国际标准来研究制订的,具有很好的兼容性。其次,比其它算法提供更好的压缩比,最高可达 200:1。更重要的是对数据损失很小。不存在专利问题,适合大力推广。数据压缩编码两大类:无损压缩编码法(也称 冗余压缩法、熵编码法),有损压缩编
21、码法(也称 熵压缩法)。2.4.4 多媒体技术的研究内容对数据进行有效压缩将是多媒体发展中必须要解决的最关键的技术之一。数据量大、种类繁多、关系复杂,是多媒体数据的基本特征。虚拟现实首先, “逼真” 就是要达到 三维视觉、听觉、触觉 等效果;其次,通过人的感官与这个环境进行交互;最后,为用户提供一个逼真的操作环境。虚拟现实是一种 多技术 多科学 相互渗透集成 的技术。只能多媒体技术将具有推理功能的 知识库 与 多媒体数据库 结合起来,形成 智能多媒体数据库。发展趋势:把 多媒体和通信 功能 集成到 CPU 芯片中。其一,专用设备、家电及宽带通信设备,可以取代这些设备中的 CPU 及大量 Asic 和其