文章目录
2.1 计算机系统概述
计算机系统 (Computer System)
是指用于数据管理的计算机硬件、软件及网络组成的系统。它是按人的要求接收和存储信息,自动进行数据处理和计算, 并输出结果信息的机器系统。
计算机系统可划分为硬件(子系统)和软件(子 系统)两部分。
-
硬件
由机械、电子元器件、磁介质和系统光介质等物理实体构成,例如处理器(含运算单元和 控制单元)、存储器、输入设备和输出设备等。 -
软件
是一系列按照特定顺序组织的数据和指令,并控制硬件完成指定的功能。可将计算机软件进一步分为系统软件和应用软件:系统软件
是指支持应用软件的运行,为用户开发应用软件提供平台支撑的软件;应用软件
是指计算机用户利用计算机的软、硬件资源为某一专门的应用目的而开发的软件。
2.2 计算机硬件
2.2.1 计算机硬件组成
计算机组成结构 (Computer Architecture)
源于冯·诺依曼计算机结构,该结构成为现代计算机系统发展的基础。
冯·诺依曼计算机结构将计算机硬件划分为: 运算器、控制器、存储器、输入设备、输出设备 5 个部分。但在现实的硬件中,控制单元和运算单元被集成为一体,封装为通常意义上的中央处理器 (Central Processing Unit,CPU)。
2.2.2 处理器
处理器 (Central Processing Unit,CPU)
作为计算机系统运算和控制的核心部件,经历了长期演化过程。
- 在位宽上由4位处理器发展到64位处理器;
- 在能力构成上从仅具有运算和控制功 能发展到集成多级缓存、多种通信总线和接口;
- 在内核上从单核处理器发展为多核、异构多核和众核处理器等。
处理器的指令集按照其复杂程度可分为 CISC 与 RISC 两类。
复杂指令集 (Complex Instruction Set Computers, CISC)
以Intel、AMD 的x86CPU为代表;精简指令集 (Reduced Instruction Set Computers,RISC)
以ARM和Power为代表:RISC已经成为计算机指令集发展的趋势,几乎所有后期出现的指令集均为RISC架构。
随着微电子技术发展,用于专用目的处理器芯片不断涌现,常见的有:
图形处理器 (Graphics Processing Unit,GPU) 处理器
:GPU是一种特殊类型的处理器,具有 数百或数千个内核,经过优化可并行运行大量计算,因此近些年在深度学习和机器学习领域得到了广泛应用。信号处理器 (Digital Signal Processor,DSP)
:DSP专用于实时的数字信号处理,常采用哈佛体系结构。通过采用饱和算法处理溢出问题,通过乘积累加运算提高矩阵运算的效率,以及为傅里叶变换设计专用指令等方法,在各类高速信号采集的设备中得到广泛应用。现场可编程逻辑门阵列 (Field Programmable Gate Array,FPGA)
。
在市场上占有率和知名度较高的包括:龙芯、飞腾、申威、兆芯、国微、国芯、华睿、翔腾微和景嘉微等产品,各自在不同的行业领域中得到应用。
2.2.3 存储器
存储器
是利用半导体、磁、光等介质制成用于存储数据的电子设备。
根据存储器的硬件结构可分为: SRAM、DRAM、NVRAM、Flash、EPROM、Disk等。
计算机系统中的存储器通常采用分层的体系 (Memory Hierarchy) 结构,按照与处理器的物理距离可分为4个层次。(其访问速度依次降低,而容量依次提高。)
- (1)
片上缓存
: 在处理器核心中直接集成的缓存,一般为 S R A M结构,实现数据的快速读 取。它容量较小,一般为16kB~512kB。 - (2)
片外缓存
: 在处理器核心外的缓存,需要经过交换互联开关访问,一般也是由 S R A M 构成,容量较片上缓存略大,可以为256kB~4MB。 - (3)
主存(内存)
: 通常采用 D R A M结构,以独立的部件/芯片存在,通过总线与处理器
连接。 D R A M依赖不断充电维持其中的数据,容量在数百M B至数十GB之间。
(4)外存
: 可以是磁带、磁盘、光盘和各类Flash等介质器件,这类设备访问速度慢,但 容量大,且在掉电后能够保持其数据。
2.2.4 总线
总线 (Bus)
是指计算机部件间遵循某一特定协议实现数据交换的形式,即以一种特定格式按照规定的控制逻辑实现部件间的数据传输。
按照总线在计算机中所处的位置划分为内总线、系统总线和外部总线。
内总线
用于各类芯片内部互连,也可称为片上总线 (On-Chip Bus) 或片内总线。系统总线
是指计算机中 CPU、 主存、 I/O 接口的总线,计算机发展为多总线结构后,系统总线的含义有所变化,狭义的系统总线仍为C P U与主存、通信桥连接的总线; 广义上,还应包含计算机系统内,经由系统总 线再次级联的总线,常被称为局部总线 (Local Bus)外部总线
是计算机板和外部设备之间,或 者计算机系统之间互联的总线,又称为通信总线。
算机总线存在许多种类,常见的有并行总线和串行总线。
并行总线
主要包括PCI、PCle和ATA(IDE) 等。有传输延迟,适合近距离连接。串行总线
主要包括USB、SATA、CAN、RS-232、RS-485、RapidIO 和以太网等。速率不高,但适合长距离连接。
2.2.5 接口
接口是指同一计算机不同功能层之间的通信规则。
计算机接口有多种,常见的包括:
- 显示类接口 (HDMI、DVI和DVI等),
- 音频输入输出类接口 (TRS、RCA、XLR等),
- 网络类接口 (RJ45、FC等),
- PS/2接口,
- USB接口,
- SATA接口,
- LPT打印接口和
- RS-232接口等。
此外, 像离散量接口与 A / D 转换接口等这类接口一般属于非标准接口,而是随需求而设计。
2.2.6 外部设备
外部设备也称为外围设备,是计算机结构中的非必要设备,但从功能上又常常不可缺少,包括所有的输入输出设备以及部分存储设备(即外存)。
常见的外部设备
包括:键盘、鼠标、显示器、扫描仪、摄像头、麦克风、打印机、光驱、各 型网卡和各型存储卡/盘等。
在移动和穿戴设备中,常见的包括加速计、 GPS、 陀螺仪、感光设 备和指纹识别设备等。
在工业控制、航空航天和医疗等领域,还存在更多种类的外部设备,例如测温仪、测速仪、轨迹球、各型操作面板、红外/N FC等感应设备、各种场强测量设备、功率驱动装置、各型机械臂、各型液压装置、油门杆和驾驶杆,等等。
2.3 计算机软件
计算机软件
是指计算机系统中的程序及其文档, 是计算任务的处理对象和处理规则的描述。
2.3.1 计算机软件概述
软件系统
是指在计算机硬件系统上运行的程序、相关的文档资料和数据的集合。按照软件所起的作用和需要的运行环境的不同,通常将计算机软件分为系统软件和应用软件两大类。
系统软件
是为整个计算机系统配置的不依赖特定应用领域的通用软件,对计算机系统的硬件和软件资源进行控制和管理,并提供运行服务支持。应用软件
是指为某类应用需要或解决某个特定问题而设计的软件,如图形图像处理软件、 财务软件、游戏软件和各种软件包等。
2.3.2 操作系统
操作系统
是计算机系统的资源管理者,它包含对系统软、硬件资源实施管理的一组程序。
1.操作系统的组成
操作系 统通常由操作系统的内核(Kernel)
和其他许多附加的配套软件
所组成,如用户界面、管理工具、 开发工具和常用应用程序等。
2.操作系统的作用
操作系统主要有以下3个方面的重要作用。
(1)管理计算机中运行的程序和分配各种软硬件资源。
(2)为用户提供友善的人机界面。
(3)为应用程序的开发和运行提供一个高效率的平台。
3.操作系统的特征
1)并发性
: 在多道程序环境下,并发性是指在一段时间内,宏观上有多个程序同时运行,但实际上在 单C P U的运行环境,每一个时刻只有一个程序在执行。
2)共享性
: 共享是指操作系统中的资源(包括硬件资源和信息资源)可以被多个并发执行的进程(线 程)共同使用,而不是被一个进程所独占。
3)虚拟性
: 虚拟性是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应 物,或把物理上的多个实体变成逻辑上的一个对应物的技术。
4)不确定性
: 在多道程序环境中,允许多个进程并发执行,但由于资源有限,在多数情况下进程的执行 不是一贯到底的,而是"走走停停"。
4.操作系统的分类
通常,操作系统可分为
1)批处理操作系统
: 分为单道批处理和多道批处理
2)分时操作系统
: 在分时操作系统中,一个计算机系统与多个终端设备连接。分时操作系统是将C P U的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务。分时系统主要有4个特点:多路性、独立性、交互性和及时性。
3)实时操作系统
: 实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范 围内做出快速反应。实时系统对交互能力要求不高,但要求可靠性有保障。
4)网络操作系统
: 网络操作系统是使联网计算机能方便而有效地共享网络资源,为网络用户提供各种服务的 软件和有关协议的集合。一个典型的网络操作系统的特征包括 硬件独立性 和 多用户支持 等。
5)分布式操作系统
: 分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、 次之分,任意两台计算机可以通过通信交换信息。分布式操作系统是网络操作系统的更高级形式,它保持网络系统所拥有的全部功能,同时又有透明性、可靠性和高性能等特性。
6)微型计算机操作系统
: 微型计算机操作系统简称微机操作系统,常用的有Windows、Mac OS、Linux。
7)嵌入式操作系统
: 嵌入式操作系统运行在嵌入式智能设备环境中,对整个智能硬件以及它所操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制,其主要特点如: 微型化、可定制、实时性、可靠性、易移植性 。常采用 硬件抽象层(Hardware Abstraction Layer,HAL)和板级支撑包(Board Support Package, BSP) 来提高易移植性,常见的嵌入式实时操作系统有VxWorks、μClinux、PalmOS、WindowsCE、μC/OS-III和eCos 等。
2.3.3 数据库
数据库 (DataBase,DB)
是指长期存储在计算机内、有组织的、统一管理的相关数据的集合。
早期数据库种类有3种,分别是层次式数据库、网络式数据库和关系型数据库。目前最常见的数据库种类是 关系型数据库
和非关系型数据库
。根据数据库存储体系分类,还可分为:
- 关系型数据库: 这种类型的数据库是最传统的数据库类型。
- 键值 (Key-Value) 数据库: 是一种非关系型数据库,它使用简单的键值方法来存储数据。
- 列存储(Column-Based) 数据库: 是相对于传统关系型数据库的行式存储(Row-Basedstorage) 来说的。
- 文档数据库:此类数据库可存放并获取文档,可以是XML、JSON、BSON 等格式,这 些文档具备可述性 (Self-Describing), 呈现分层的树状结构 (Hicrarchical Tree Data Structure), 可以包含映射表、集合和纯量值。
- 搜索引擎数据库等类型:搜索引擎数据库是应用在搜索引擎领域的数据存储形式,由于搜索 引擎会爬取大量的数据,并以特定的格式进行存储,这样在检索的时候才能保证性能最优。
下面简要介绍常用的关系数据库和分布式数据库。
1.关系数据库
目前已有的数据库设计方法可分为4类,即直观设计法、规范设计法、计算机辅助设计法和自动化设计法。
数据库设计分为需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用程序设计 和运行维护6个阶段
2.分布式数据库
分布式数据库系统 (Distributed DataBase System,DDBS)
是针对地理上分散,而管理上又需要不同程度集中管理的需求而提出的一种数据管理信息系统。满足分布性、逻辑相关性、场地透明性和场地自治性的数据库系统被称为完全分布式数据库系统。
分布式数据库系统的特点是: 数据的集中控制性、数据独立性、数据冗余可控性、场地自治性和存取的有效性。
分布式数据库的应用领域有分布式计算、 Internet应用、数据仓库、数据复制以及全球联网 查询等, Sybase 公司的 Replication Server 即是一种典型的分布式数据库系统。
3.常用数据库管理系统
1)Oracle
: Oracle是一种适用于大型、中型和微型计算机的关系数据库管理系统。
2)IBM DB2
: DB2是IBM的一种分布式数据库解决方案。简单地说,DB2就是IBM开发的一种大型关 系型数据库平台,它支持多用户或应用程序在同一条SQL语句中查询不同Database甚至不同
DBMS中的数据。
3)Sybase
: Sybase是美国SYBASE公司在20世纪80年代中期推出的客户机/服务器 (Client/Server, C/S) 结构的关系数据库系统,也是世界上第一个真正的基于客户机/服务器结构的 R D B M S 产品。
4)Microsoft SQL Server
: Microsoft SQL Server是一种典型的关系型数据库管理系统,可运行于多个操作系统上,它 使用 Transact-SQL 语言完成数据操作。
4.大型数据库管理系统的特点
大型数据库管理系统主要有如下7个特点。
- (1)基于网络环境的数据库管理系统。可以用于C/S结构的数据库应用系统,也可以用于 B/S 结构的数据库应用系统。
- (2)支持大规模的应用。可支持数千个并发用户、多达上百万的事务处理和超过数百 G B 的数据容量。
- (3)提供的自动锁功能使得并发用户可以安全而高效地访问数据。
- (4)可以保证系统的高度安全性。
- (5)提供方便而灵活的数据备份和恢复方法及设备镜像功能,还可以利用操作系统提供容错功能,确保设计良好的应用中的数据在发生意外的情况下可以最大限度地被恢复。
- (6)提供多种维护数据完整性的手段。
- (7)提供了方便易用的分布式处理功能。
2.3.4 文件系统
1.文件与文件系统
文件 (File)
是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合,例如,一 个源程序、一个目标程序、编译程序、一批待加工的数据和各种文档等都可以各自组成一个文件。
文件系统
是操作系统中实现文件统一管理的一组软件和相关数据的集合,是专门负责管理和存取文件信息的软件机构。
2.文件的类型
(1)按文件的性质和用途分类
可将文件分为系统文件、库文件和用户文件。
(2)按信息保存期限分类
可将文件分为临时文件、档案文件和永久文件。
(3)按文件的保护方式分类
可将文件分为只读文件、读/写文件、可执行文件和不保护文件。
(4)UNIX系统
将文件分为普通文件、目录文件和设备文件(特殊文件)。
目前常用的文件系统类型有FAT、VFAT、NTFS、Ext2和HPFS等。
文件的存取方法:通常有顺序存取和随机存取两种方法。
3.文件的结构和组织
从用户角度看到的文件组织形式称为文件的逻辑结构
。
从实现的角度看,文件在文件存储器上的存放方式称为文件的物理结构
,几种常见的文件物理结构:(文件组织方法)
(1)连续结构。(2)链接结构。 (3)索引结构。 (4)多个物理块的索引表。
4.文件存取的方法和存储空间的管理
文件系统必须对磁盘空间 进行管理。外存空闲空间管理的数据结构通常称为磁盘分配表 (Disk Allocation Table)。 常用的空闲空间管理方法有:空闲区表、位示图和空闲块链3种。
5.文件共享和保护
1)文件的共享
常见的文件链接有硬链接
和符号链接
两种
2)文件的保护
文件系统对文件的保护常采用存取控制的方式进行。所谓存取控制,就是规定不同的用户 对文件的访问有不同的权限,以防止文件被未经文件主同意的用户访问。
2.3.5 网络协议
常用的网络协议包括局域网协议 (Local Area Network,LAN)、 广域网协议 (Wide Area Network,WAN)、 无线网协议和移动网协议。互联网使是 TCP/IP 协议簇。
2.3.6 中间件
中间件(Middleware)
:作为应用软件与各种操作系统之间使用的标准化编程接口和协议, 可以起承上启下的作用,使应用软件的开发相对 独立于计算机硬件和操作系统,并能在不同的系统上运行,实现相同的应用功能。
1.中间件分类
按照中间件在分布式系统中承担的职责不同,可以划分以下几类中间件产品。
- 1)
通信处理(消息)中间件
:保证系统能在不同平台之间通信,例如 MQSeries。 - 2)
事务处理(交易)中间件
:实现协调处理顺序、监视和调度、负载均衡等功能,例如 Tuxedo。 - 3)
数据存取管理中间件
:为不同种类数据的读写和加解密提供统一的接口。 - 4)
Web服务器中间件
:提供 Web 程序执行的运行时容器,例如 Tomcat、JBOSS 等。 - 5)
安全中间件
:用中间件屏蔽操作系统的缺陷,提升安全等级。 - 6)
跨平台和架构的中间件
:用于开发大型应用软件。 - 7)
专用平台中间件
:为解决特定应用领域的开发设计问题提供构件库。 - 8)
网络中间件
:它包括网管、接入、网络测试、虚拟社区和虚拟缓冲等,也是当前最热门的研发项目。
2.中间件产品介绍
主流的中间件产品有IBM MQSeries和BEA Tuxedo。
IBM MQSeries
: IBM公司的MQSeries是IBM的消息处理中间件。MQSeries提供一个具有工业标准、安全、 可靠的消息传输系统,它用于控制和管理一个集成的系统,使得组成这个系统的多个分支应用 (模块)之间通过传递消息完成整个工作流程。BEA Tuxedo
: BEA公司的Tuxedo作为电子商务交易平台,属于交易中间件。
2.3.7 软件构件
构件又称为组件,是一个自包容、可复用的程序集。构件的两个最重要的特性是 自包容与可重用。
1.软件构件的组装模型
构件之间通过接口相互协作。构件组装模型的一般开发过程:
优点
: 易扩展、可重用、并行开发。
缺点
: 需要经验丰富的设计师、快速开发与质量属性之间需要妥协、构件质量影响软件整体的质量。
2.商用构件的标准规范
(1) CORBA
: OMG 的公共对象请求代理架构(Common Object Request Broker Architecture,CORBA) 是一个纯粹的规范而不是产品,主要分为 3 个层次:对象请求代理(Object Request Broker,ORB)、 公共对象服务和公共设施。采用 IDL 定义接口,并易于转化为具体语言实现。
(2) J2EE
: SUN 的 J2EE,定义了完整的基于 Java 语言开发面向企业分布的应用规范,其中 EJB 是 J2EE 的构件标准,EJB 中的构件称为 Bean,可以分为会话 Bean、实体 Bean 和消息驱动 Bean。
(3) DNA 2000
:Microsoft 的 DNA 2000,采用 DCOM/COM/COM+作为标准的构件。
2.3.8 应用软件
应用软件
是为了利用计算机解决某类问题而设计的程序的集合,是为满足用户不同领域、 不同问题的应用需求而提供的软件。
按照应用软件的开发方式和适用范围,应用软件可再分成:通用应用软件和定制应用软件两大类。
2.4 嵌入式系统及软件
嵌入式系统 (Embedded System)
是以特定应用为中心、以计算机技术为基础,并将可配置与可裁剪的软、硬件集成于一体的专用计算机系统。(是为了特定应用而专门构建且将信息处理过程和物理过程紧密结合为一体的专用计算机系统。)
2.4.1 嵌入式系统的组成及特点
从计算机角度看,嵌入式系统是指嵌入各种设备及应用产品内部的计算机系统。它主要完成信号控制的功能,体积小、结构紧凑,可作为一个部件埋藏于所控制的装置中。它提供用户接口,管理有关信息的输入输出和设备监控工作,使设备及应用系统有较高智能和性价比。
从技术角度看,嵌入式系统是计算机技术、通信技术、半导体技术、微电子技术、语音图像、数据传输技术,以及传感器等先进技术和具体应用对象相结合后的换代产品,是技术密集、投资 规模大、高度分散、不断创新的知识密集型系统,反映了当代最新技术的先进水平。
从综合角度看,嵌入式系统定义为现代科学多学科相互融合的以应用技术产品为核心,以计算机技术为基础,以通信技术为载体,以消费类产品为对象,引入各类传感器,引入 Internet 网络技术的连 接,从而适应应用环境的产品。
1.嵌入式系统的组成
一般嵌入式系统由 嵌入式处理器、相关支撑硬件、嵌入式操作系统、支撑软件以及应用软件组成。
- (1)
嵌入式处理器
,除满足低功耗、体积小等需求外,工艺可分为民用、工业和军用等三个 档次,民用级器件的工作温度范围是 0~70°C、工业级的是−40~85°C、军用级的是−55~150°C。 其应用环境常常非常恶劣,比如有高温、寒冷、电磁、震动、烟尘等环境因素。 - (2)
相关支撑硬件
,指除处理器以外的其他硬件,如存储器、定时器、总线等。 - (3)
嵌入式操作系统
,与通用操作系统不同,嵌入式操作系统应具备实时性、可裁剪性和安 全性等特征。 - (4)
支撑软件
,其中的公共服务通常运行在操作系统之上,以库的方式被应用软件所引用。 - (5)
应用软件
,是指为完成嵌入式系统的某一专用目标所开发的软件。
2.嵌入式系统的特点
根据嵌入式系统的应用背景及其在应用中所起作用,嵌入式系统应具备以下特性。
(1)专用性强:常常面向特定应用需求,配备多种传感器。
(2)技术融合:将先进的计算机技术、通信技术、半导体技术和电子技术与各个行业的具体应用紧密结合难以拆分。
(3)软硬一体软件为主:在通用的嵌入式系统版本基础上裁剪冗余,高效设计。
(4)比通用计算机资源少: 管理的资源少,成本低,结构更简单。
(5)程序代码固化在非易失存储器中:软件一般都固化在存储器芯片或单片机本身中。
(6)需专门开发工具和环境。
(7)体积小、价格低、工艺先进、性能价格比高、系统配置要求低、实时性强。
(8)对安全性和可靠性的要求高。
2.4.2 嵌入式系统的分类
根据不同用途可将嵌入式系统划分为嵌入式实时系统
和 嵌入式非实时系统
两种,而实时系统又可分为 强实时 (Hard Real-Time) 系统和弱实时 (WeakReal-Time) 系统。
如果从安全性要求看,嵌入式系统还可分为安全攸关 (Safety-Critical 或 Life- Critical) 系统
和非安全攸关系统
。
实时系统(Real-Time System,RTS)
是指能够在规定的时间内完成系统功能和做出响应的系统。
安全攸关系统(Safety-Critical System)
是指其不正确的功能或者失效会导致人员伤亡、财产损失等严重后果的计算机系统。
2.4.3 嵌入式软件的组成及特点
嵌入式系统的最大特点就是:系统的运行和开发是在不同环境中进行的,通常将运行环境称 为"目标机"环境,称开发环境为"宿主机"环境。宿主机与目标机之间通过串口、网络或 JTAG 接口连接。
由于宿主机和目标机的指令往往是不同的,嵌入式系统的开发通常需 要交叉平台开发环境支持,基本开发工具是交叉编译器、交叉链接器和源代码调试器。还需要注意 实时性、安全性和可靠性、代码规模、软/硬件协同工作的效率和稳定性、特定领域的需求等。
从现代嵌入式系统观看,人们把嵌入式系统分为 硬件层、抽象层、操作系统层、中间件层和应用层 等5层,系统软件组成架构如下:
(1)硬件层
。硬件层主要是为嵌入式系统提供运行支撑的硬件环境,其核心是微处理器、 存储器 (ROM、SDRAM、Flash等)、I/O接口 (A/D、D/A、I/O等)和通用设备以及总线、电源、 时钟等。
(2)抽象层
。包括硬件抽象层(HAL),为上层应用(操作系统)提供虚拟的硬件资源;板级支持包(BSP),是一种硬件驱动软件,为上层操作系统提供对硬件进行管理的支持。
(3)操作系统层
。由嵌入式操作系统、文件系统、图形用户接口、网络系统和通用组件等可配置模块组成。
(4)中间件 (Middleware) 层
。是连接两个独立应用的桥梁,常用的有嵌入式数据库、OpenGL、消息中间件、Java 中间件、虚拟机(VM)、DDS/CORBA 和 Hadoop 等。
(5)应用层
。包括不同的应用软件。
嵌入式软件的主要特点如下:
(1)可剪裁性
:设计方法包括静态编译、动态库和控制函数流程实现功能控制等。
(2)可配置性
:设计方法包括数据驱动、静态编译和配置表等。
(3)强实时性
:设计方法包括表驱动、配置、静/动态结合、汇编语言等。
(4)安全性 (Safety)
: 设计方法包括编码标准、安全 保障机制、 FMECA (故障模式、影响及危害性分析)。
(5)可靠性
:设计方法包括容错技术、余度技术和鲁棒性设计等。
(6)高确定性
: 设计方法包括静态分配资源、越界检查、状态机、静态任务调度等。
综上所述,嵌入式软件的开发也与传统的软件开发方法差异较大。在嵌入式系统设计时,要进行低功耗设计。主要技术有编译优化技术、软硬件协同设计、算法优化。
2.4.4 安全攸关软件的安全性设计
IEEE 定义安全攸关软件是:"用于一个系统中,可能导致不可接受的风险的软件"。
1.DO-178B 的目的和内容
DO-178B的目的是为制造机载系统和设备的机载软件提供指导,使其能够提供在满足符合适航要求的安全性水平下完成预期功能。
2.DO-178B的软件生命周期
DO-178B标准将软件生命周期分为"软件计划过程
""软件开发过程
"和"软件综合过程
"。
- 1)软件计划过程
- 2)软件开发过程:软件开发过程又包括了 软件需求过程、软件设计过程、软件编码过程和集成过程4个子过程。
- 3)软件综合过程:软件综合过程包含了 验证软件产品、管理软件产品、控制软件产品,以保证软件产品和软件过程的正确、受控和可信的所有活动。软件综合过程又包含了软件验证过程、软件配置管理过程、软件质量保证过程、审定联络过程4个子过程。
DO-178B 根据软件在系统中的重要程度将软件的安全等级分为 A~E 五级,分别对应灾难级(A)、危害级(B)、严重级(C )、不严重级(D)和没有影响级(E)。
2.5 计算机网络
计算机网络
是利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件及通信协议实现资源共享和信息传递的系统。
计算机网络技术主要涵盖通信技术、网络技术、组网技术和网络工程等四个方面。
2.5.1 网络的基本概念
1.计算机网络的发展
纵观计算机网络发展,其大致经历了诞生、形成、互联互通和高速发展等4个阶段。
2.计算机网络的功能
1)数据通信
2)资源共享
3)管理集中化
4)实现分布式处理
5)负荷均衡
3.网络有关指标
1)性能指标:可以从速率、带宽、吞吐量和时延等不同方面来度量计算机网络的性能。
2)非性能指标:费用、质量、标准化、可靠性、可扩展性、可升级性、易管理性和可维护性等非性能指标 与前面介绍的性能指标有很大相关性。
4.网络应用前景
信息时代的重要特征就是数字化、网络化和信息化。网络可以非常迅速地传递信息,要实现信息化就需要完善的网络。网络现在已经成为信息社会的命脉和发展知识经济的重要基础。
2.5.2 通信技术
(1) 数据与信道 :在通信中的数据包括模拟信号和数字信号,通过信道
来传输,信息传输就是信源和信宿通过信道收发信息的过程。信号在信源端和信宿端都需要经过信号变换,中间经过编码、交织、调制和解码等过程。
信道可分为物理信道
和逻辑信道
。物理信道由传输介质和设备组成,根据传输介质的不同, 分为无线信道和有线信道。逻辑信道是指在数据发送端和接收端之间存在的一条虚拟线路,可以是有连接的或无连接的。逻辑信道以物理信道为载体。
1.信道
信息传输就是信源和信宿通过信道收发信息的过程。信源发出信息,发信机负责将信息转换成适合在信道上传输的信号,收信机将信号转化成信息发送给信宿。
(1)信道是信息的传输通道。
(2)发信机接收信源发送的信息,进行编码和调制,将信息转化成适合在信道上传输的信号,发送到信道上。
(3)收信机负责从信道上接收信号,进行解调和译码,将信息恢复出来发送给信宿。不是所有频率的信号都可以通过信道传输,频率响应决定了哪些可以通过,可以通过的频率范围大 小是信道的带宽。
(4)香农公式: C=B×log (1+ S/N )
。信道容量就是信道的最大传输速率,可通过香农公式计算得到。
C 代表信道容量,单位是 b/s
B 代表信号带宽,单位是 H z
S 代表信号平均功率,单位是W
N 代表噪声平均功率,单位是 W S/N代表信噪比,单位是 d B (分贝
提升信道容量可以使用比较大的带宽,降低信噪比;也可以使用比较小的带宽,升高信噪比。
2.信号变换
发信机进行的信号处理包括信源编码、信道编码、交织、脉冲成形和调制。相反地,收信 机进行的信号处理包括解调、采样判决、去交织、信道译码和信源译码
3.复用技术和多址技术
复用技术
:是指在一条信道上同时传输多路数据的技术,如 TDM 时分复用、FDM 频分 复用和 CDM 码分复用等。即一条路上行驶多辆货车。
多址技术
:是指在一条线上同时传输多个用户数据的技术,在接收端把多个用户的数据分 离,如 TDMA 时分多址、FDMA 频分多址和 CDMA 码分多址等。即一辆车上的货物属于不同用户。
多路复用技术是多址技术的基础,多址技术还涉及信道资源分配算法, Walsh码分配算法等。
4. 5G 通信网络
作为新一代的移动通信技术,网络结构、网络能力和应用场景等都与过去有很大不同,具有高速率、低时延、接入用户数高等优点。
2.5.3 网络技术
络通常按照网络的覆盖区域和通信介质等特征来分类,可分为局域网 (LAN)、 无线局域网 (WLAN)、 城域网 (MAN)、 广域网 (WAN) 和移动通信网等。
1.局域网 (LAN)
局域网 (Local Area Network,LAN)
是指在有限地理范围内将若干计算机通过传输介质互联成的计算机组(即通信网络),通过网络软件实现计算机之间的文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。
局域网有总线型、星型、树型、环型、网状五种拓扑结构
2.无线局域网 (WLAN)
无线局域网WLAN(Wireless Local Area Networks)
利用无线技术在空中传输数据、话音和视频信号。WLAN 采用 IEEE 802.11 标准,有 a、b、g、n、ac 等子标准,802.11n 传输速率 可达 200Mb/s,802.11ac 则可达 1Gb/s。WLAN 拓扑结构有点对点型、Hub 型和完全分布型。点对 点型用于网络互联和延长;HUB 型用于终端接入; 完全分布型则处于理论探讨阶段无具体应用。
3.广域网 (WAN)
广域网是一种将分布于更广区域(比如一个城市、一个国家甚至国家之间)的计算机设备联接起来的网络。它通常是电信部门负责组建、经营和管理,并向社会公众提供通信服务。
广域网由通信子网与资源子网组成。
通信子网
主要是由一些通信结点设备和连接这些设备 的链路组成。资源子网
主要指网络资源设备, 如信息服务或业务服务器、用户计算机、网络存储系统、独立运行的网络数据设备、网络上运 行的各种软件资源、数据资源等。
1)广域网相关技术
- (1)
同步光网络
。同步光网络 (Synchronous Optical Networking,SONET) 是使用光纤进行数字化信息通信的一个标准。 - (2)
数字数据网
。数字数据网DDN(Digital Data Network) 利用数字信道提供半永久性连接电路以传输数据。 - (3)
帧中继
。帧中继FR(Frame Relay) 是一种高性能广域网技术,运行于OSI/RM的物 理层和数据链路层,是一种数据包交换技术,是 X.25 网络的简化版本,但具有更高性能和传输效率。 - (4)
异步传输技术
。异步传输模式 (Asynchronous Transfer Mode,ATM) 是以信元为基础 的面向连接的一种分组交换和复用技术。
2)广域网的特点
- (1)主要提供面向数据通信的服务,支持用户使用计算机进行远距离的信息交换。
- (2)覆盖范围广,通信的距离远,广域网没有固定拓扑结构。
- (3)由电信部门 或公司负责组建、管理和维护,并向全社会提供面向通信的有偿服务等。
3)广域网的分类
广域网可以分为 公共传输网络、专用传输网络和无线传输网络。
4.城域网 (MAN)
城域网是在单个城市范围内所建立的计算机通信网,简称MAN(Metropolitan Area Network)
。 采用 IEEE 802.6 标准。通常分为 3 个层次: 核心层、汇聚层和接入层。由于采用有源交换元件的局域网技术,网络中传输时延较小,它的传输媒介主要 采用光缆,传输速率在100 Mb/s以上。
5.移动通信网
-
移动通信网发展
其发展经历了 1G 模拟信号传输、2G 数字通信技术、3G 扩展频谱、4G 快 速发展繁荣、5G 多业务、多技术融合等 5 代。
-
5G网络的主要特征为服务化架构和网络切片。
- (1)
服务化架构(Service-Based Architecture,SBA)
: 可以实现网络功能的灵活定制和按需组合, 以及软件快速迭代和升级。 - (2
)网络切片
:可以在单个物理网络中切分出多个分离的逻辑网络用于不同业务。5G 还引入 了基于灵活以太网(Flexible Ethernet,FlexE)的硬切片技术。
2.5.4 组网技术
1.网络设备及其工作层级
网络设备
是连接到网络中的物理实体。基本的网络设备:
(1)集线器(Hub)和中继器(Repeater)工作在物理层。
(2)网桥(Bridge)和交换机(Switcher)工作在数据链路层。
(3)路由器(Router)和防火墙(Firewall)主要工作在网络层。防火墙是网络中一种重要的安全设备,作为网络对外的门户。
2.网络协议
1)开放系统互连模型:由低层至高层分别为物理层 (Physical Layer)、 数据链路层 (Datalink Layer)、 网络层 (Network Layer)、 传输层 (Transport Layer)、 会话层 (Session Layer)、 表示层 (Presentation Layer) 和应用层 (Application Layer)。
层的名称 | 主要功能 | 详细说明 |
---|---|---|
应用层 | 处理网络应用 | 直接为终端用户服务,提供各类应用过程的接口和用户接口 |
表示层 | 管理数据表示方式 | 使应用层可以根据其服务解释数据的含义。通常包括数据编码的约定、 本地句法的转换,使不同类型的终端可以互相通信 |
会话层 | 建立和维护会话连接 | 负责管理远程用户或进程间的通信,通过安全验证和退出机制确保上 下文环境的安全,重建中断的会话场景,维持双方的同步 |
传输层 | 端到端传输 | 现发送端和接收端的端到端的数据透明传送,TCP 协议保证数据包 无差错、按顺序、无丢失和无冗余地传输。其服务访问点为端口 |
网络层 | 在源节点和目的 节点之间传输 | 虚电路分组交换和数据报分组交换、路由选择算法、阻塞控制方法, 网络互连,以及对网络的诊断等 |
数据链路层 | 提供点到点的帧传输 | 将网络层报文数据封装成帧,建立、维持和释放网络实体之间的数据 链路,在链路上传输帧并进行差错控制、流量控制等 |
物理层 | 在物理链路上传 输比特流 | 通过一系列协议定义了物理链路所具备的机械特性、电气特性、功能 特性以及规程特性 |
应用层协议:
-
1 )
文件传输协议(File Transport Protocol,FTP)
: 是网络上两台计算机传送文件的协议,运在 TCP 之上,是通过 Internet 将文件从一台计算机传输到另一台计算机的一种途径。FTP 在客户机和服务器之间需建立两条 TCP 连接,一条用于传送控制信息(使用 21 号端口),另一条用于传送 文件内容(使用 20 号端口)。 -
2)
简单文件传输协议(Trivial File Transfer Protocol,TFTP)
: 是用来在客户机与服务器之间 进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。TFTP 建立在 UDP 之上,69 号端口;提供不可靠的数据流传输服务,不提供存取授权与认证机制,使用超时重传方式来保证数 据的到达。 -
3 )
超文本传输协议(Hypertext Transfer Protocol,HTTP)
:是用于从 WWW 服务器传输超文 本到本地浏览器的传送协议。HTTP 建立在 TCP 之上,使用 80 号端口。 -
4 )
安全超文本传输协议(Hypertext Transfer Protocol Secure,HTTPS)
: 是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在 HTTP 的基础下加入安全套接层(Secure Socket Layer,SSL)或 TLS,HTTPS 使用的 443 号端口。 -
5 )
动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)
: 通常被应用在大型的局域网络环境中,主要作用是集中地管理、分配 IP 地址,使网络环境中的主机动态地获得 IP 地址、 网关地址、DNS 服务器地址等信息,并能够提升地址的使用率。在网络范围内可能存在多个 DHCP 服务器,各自负责不同的网段,也可能由同一个 DHCP 服务器,负责多个不同网段的地址分配。 如果网络中有多个 DHCP 服务器发送 OFFER 报文,客户端只根据第一个收到的 OFFER 报文,返 回 REQUEST 报文。 -
6 )
域名系统(Domain Name System,DNS)
: DNS 把主机域名解析为 IP 地址的系统,而 PTR (Pointer Record)负责将 IP 地址映射到域名的解析。DNS 查询过程有两种方法:迭代查询: 查询得到的是其他服务器的引用,本地服务器就要访问被引用的服务器,做进一步的查询
递归查询: 查询方式要求服务器彻底地进行名字解析,并返回 最后的结果
传输层协议
- 1 )
传输控制协议(Transmission Control Protocol,TCP)
。TCP 是可靠的、面向连接的网络协议。具有差错校验和重传、流量控制、拥塞控制等功能。适用于数据量比较少,且对可靠性要求高的场合。 - 2 )
用户数据报协议(User Datagram Protocol,UDP)
。UDP 是不可靠的、无连接的网络协议。 UDP 适合数据量大,对可靠性要求不是很高,但要求速度快的场合。
网络层协议
- IPv6 被称为"下一代互联网协议",IP 数据报的目的地址有单播、多播/组播、任播。IPv4 to IPv6 过渡技术主要有:双协议栈技术、隧道技术、NAT-PT 技术。
2)OSI协议集
3)TCP/IP协议集
TCP/IP(Transmission Control Protocol /Internet Protocol)
作 为 Internet 的核心协议,已被广 泛应用于局域网和广域网中, TCP/IP 的主要特性为逻辑编址、路由选择、域名解析、错误检测 和流量控制以及对应用程序的支持等。 TCP/IP是个协议族,主要包括因特网协议 (IP)、 传输控 制协议 (TCP)、 用户数据报协议 (UDP)、 虚拟终端协议 (TELNET)、 文件传输协议 (FTP)、 电子邮件传输协议 (SMTP)、 网上新闻传输协议 (NNTP) 和超文本传送协议 (HTTP) 等8个。
TCP/IP 网络协议模型共分为网络接口层、网际层、传输层和应用层4层。
4)ISO/OSI模型与 TCP/IP模型的对比
Internet 的地址主要有两种表示形式: 域名格式
和 IP 地址格式
。域名和 IP 地址是一一对应 的。IP协议版本号为4,也称之为IPv4;IP协议版本号为6时,称之为IPv6。
WWW(World Wide Web)
也称万维网,是指在因特网上以超文本为基础形成的信息网。 它采用统一的资源定位器 (Uniform Resource Locator,URL) 和图文声并茂的用户界面,可以 方便地浏览Internet上的信息和利用各种网络服务。互联网常用的服务包括域名服务 (Domain Name Server,DNS)、WWW服务、E-mail电子邮件服务、 FTP文件传输服务、 Telnet远程登录 服务、 Gopher, 等等。
3.交换技术
数据在网络中转发通常离不开交换机。交换机功能包括:
(1)集线功能
。提供大量可供线缆连接的端口达到部署星状拓扑网络的目的。
(2)中继功能
。在转发帧时重新产生不失真的电信号。
(3)桥接功能
。在内置的端口上使用相同的转发和过滤逻辑。
(4)隔离冲突域功能
。将部署好的局域网分为多个冲突域,而每个冲突域都有自己独立的带宽,以提高交换机整体宽带利用效率。
1)基本交换原理
交换机是一种基于M A C地址识别,能完成封装转发数据包功能的网络设备。交换机可以 "学习"M A C地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址,交换机需要实现的功能如下所述。
- (1)转发路径学习。
- (2)数据转发。
- (3)数据泛洪。
- (4)链路地址更新。
2)交换机协议
(1)生成树协议(STP),可以很好地解决链路环路问题。
(2)链路聚合协议,可以提升与邻接交换设备之间的端口带宽和提高链路可靠性。
4.路由技术
路由功能由路由器 (Router) 来提供,具体包括:
(1)异种网络互连
,比如具有异种子网协议的网络互连;
(2)子网协议转换
,不同子网间包括局域网和广域网之间的协议转换;
(3)数据路由
,即将数据从一 个网络依据路由规则转发到另一个网络;
(4)速率适配
,利用缓存和流控协议进行适配;
(5)隔离网络
,防止广播风暴,实现防火墙;
(6)报文分片和重组
,超过接口的M T U报文被分片,到 达目的地之后的报文被重组;
(7)备份和流量控制
,如主备线路的切换和复杂流量控制等。
路由协议 (Routing Protocol) 是一种指定数据包转送方式的协议。路由器协议主要有:
-
(1)
内部网关协议(Interior Gateway Protocol,IGP)
:指在一个自治系统(AutonomousSystem,AS)内运行的路由协议。 -
(2)
外部网关协议(Exterior Gateway Protocol,EGP)
: 指在 AS 之间的路由协议。EGP 是为简单的树型拓扑结构设计的。 -
(3)
边界网关协议(Border Gateway Protocol,BGP)
: Internet 的网络规模庞大,网络情况复杂,EGP 已不适用,在 EGP 的经验之上制定了新的网关协议即 BGP,也是 Internet 上唯一的网关协议。
2.5.5 网络工程
网络建设是一个复杂的系统工程,是对计算机网络、信息系统建设和项目管理等领域知识进行综合利用的过程。
网络建设工程可分为网络规划、网络设计和网络实施三个环节。
- (1)网络规划以需求为导向,兼顾技术和工程可行性。
- (2)网络设计包括逻辑设计和物理设计,逻辑设计指网络结构设计、网络技术选型、IP 地址和路由设计、网络冗余设计以及网络安全设计等;物理设计指布线设计、机房设计、设备选型等。 网络冗余设计的目的就是避免网络组件单点失效造成应用失效;备用路径是在主路径失效时启用, 其和主路径承担不同的网络负载;负载分担是网络冗余设计中的一种设计方式,其通过并行链路提 供流量分担来提高性能;网络中存在备用链路时,可以考虑加入负载分担设计来减轻主路径负担。
- (3)网络实施包括工程实施计划、网络设备验收、设备安装和调试、系统试运行和切换、用 户培训等。
网络设计一般采用分层的方式,分为 接入层、汇聚层、核心层 。
2.6 计算机语言
2.6.1 计算机语言的组成
计算机语言 (Computer Language)
是指用于人与计算机之间交流的一种语言,是人与计算机之间传递信息的媒介。计算机语言主要由一套指令组成,而这种指令一般包括表达式、流程控制和集合三大部分内容。编程人员可以通过这些指令来指挥计算机进行各种工作。
2.6.2 计算机语言的分类
早期人们把计算机语言分成机器语言、汇编语言和高级语言三大类,而针对不同的处理器架构,机器语言和汇编语言又存在着许多种语言类。
随着计算机语言的不断发展,涌现出了众多其他语言,下面主要分别介绍机器语言、汇编语言、高级语言、建模语言和形式化语言等。
1.机器语言
机器语言
是第一代计算机语言,是计算机自身具有的"本地语",由计算机所 能直接理解和执行的所有指令组成。指令格式由操作码和操作数两部分组成。
其优点是可以被计算机直接理解和执行,而且执行速度快、占用内存少。
2.汇编语言
汇编语言
在机器语言的基础上采用英文字母和符号串来表达指令,是机器语 言的符号化描述。每条语句均由名字、操作符、操作数和注释 4 个字段(Fields)组成。伪指令语句包括数据定义伪指令 DB、DW、DD,段定义伪指令 SEGMENT,过程定义伪指令 PROC 等,编译后不产生机器代码。
汇编语言写出的程序,代码短、 省空间、效率高。但是汇编语言仍是一种面向机器的语言,通用性差,要求程序设计人员具有较高的编程技巧。
3.高级语言
高级语言
和计算机的架构、指令集无关,具有良好的可移植性。高级语言应用非常广泛,世界上绝大多数编程人员都在使用高级语言进行程序开发。
高级语言比汇编语言更贴近于人类使用的语言,易于理解、记忆和使用。常见的高级语言 包括C、C++、Java、VB、C#、Python、Ruby 等。
4.建模语言
建模语言
主要指的是统一建模语言(Unified Modeling Language UML),
UML 是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它的作用不限于支持 面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。 U M L 成为"标准"建模 语言的原因之一在于与程序设计语言无关。而且,U M L符号集只是一种语言而不是一种方法学, 不需要任何正式的工作产品。因为语言与方法学不同,它可以在不做任何更改的情况下很容易 地适应任何公司的业务运作方式。
1 ) U M L组成要素
UML 由 3 个要素构成: UML 的基本构造块(事物、关系)
、图(支配基本构造块如何放置在一起的规则)
和运用于整个语言的公用机制
。
1)事物。UML 中有 4 种事物: 结构事物、行为事物、分组事物和注释事物。
2)关系。UML 中有 4 种关系: 依赖、关联、泛化和实现。
3)图。图是一组元素的图形表示,大多数情况下把图画成顶点(代表事物)和弧(代表关 系)的连通图。UML 2.0 提供了 14 种图,分别是类图、对象图、用例图、序列图、通信图、状态图、活动图、 构件图、部署图、制品图、组合结构图、包图、交互概览图和计时图(定时图)。序列图、通信图、 交互概览图和计时图均被称为交互图。
2)UML 5种视图
按照图本身具有的特点,可以把图形划分为5类视图,分别是 用例视图、逻辑视图、进程视图、实现视图和部署视图,其中的用例视图居于中心地位。
5.形式化语言
形式化方法
是把概念、判断、推理转化成特定的形式符号后, 对形式符号表达系统进行研究的方法。(就是用符号化的数学变换把需求分析准确地表述出来,这样可以确保和需求的一致性,并能用于分析和验证应用程序。)
形式化方法有不同的分类方法。根据描述方式分,有模型描述和性质描述两类;根据表达能力分,有模型方法、代数方法、进程代数方法、逻辑方法和网络模型方法 5 类。形式化方法的开发过程贯穿软件工程的整个生命周期。
形式化方法的开发过程
按照软件工程"自顶向下、逐步求精"的原则,软件生命周期可分为可行性分析、需求分 析、体系结构设计、详细设计、编码和测试发布6个阶段,形式化方法贯穿软件工程整个生命周期。
形式化规格语言------Z 语言
Z 语言
是一种形式化语言,它是具有"状态一操作"风格的形式化规格说明语言,在很多大型软件项目中获得成功应用。Z 语言建立于集合论和数理逻辑的基础上。集合论包括标准的集合运算符、笛卡尔积和幂集,数理逻辑包括一阶谓词演算,二者合二为一,形成了一个易学易用的数学语言。
2.7 多媒体
2.7.1 多媒体概述
媒体 (Media)
是承载信息的载体,即信息的表现形式(或者传播形式),如文字、声音、 图像、动画和视频等。按照ITU-T建议的定义,媒体可分为感觉媒体、表示媒体、显示媒体、 存储媒体和传输媒体。
多媒体 (Multimedia)
就是指利用计算机技术把文本、图形、图像、声音、动画和电视等多种媒体综合起来,使多种信息建立逻辑连接,并能对它们进行获取、压缩、加工处理和存储, 集成为一个具有交互性的系统。当前,多媒体技术已被广泛应用于工业、医疗、军事、轨道交 通、办公、教学、娱乐和智能家电等领域。
1.多媒体的重要特征
多媒体有4个重要的特征:(1)多维化。(2)集成性。(3)交互性。(4)实时性。
多媒体技术主要包括感觉媒体的表示技术、数据压缩技术、多媒体存储技术、多媒体数据库术、超文本与超媒体技术、多媒体信息检索技术、多媒体通信技术、人机交互技术以及多媒体计算机及外部设备等。
2.多媒体系统的基本组成
多媒体系统通常由硬件和软件组成。其中,多媒体硬件
主要包括计算机主要配置和外部设备以及与各种外部设备的控制接口。多媒体软件
主要包括多媒体驱动软件、多媒体操作系统、多媒体数据处理软件、多媒体创作工具软件和多媒体应用软件等。详情如下:
3.多媒体技术应用
首先 是对图像信息的处理,通过多媒体的压缩功能,能够将图像信息进行各种形式的转换,从而保证图像信息的传递性。
其次是对音频信息的处理,多媒体技术能够通过音频的合成产生人们需 要的一些特定语音信息。
此外,当前非常流行的语音转换功能能够实现语音信息和文本信息之间的良好转换,从而极大地方便人们的生活和工作。
2.7.2 多媒体系统的关键技术
1.视音频技术
视频技术包括视频数字化和视频编码技术两个方面。
音频技术包括 音频数字化、语音处理、语音合成及语音识别 4个方面。
2.通信技术
通信技术通常包括了 数据传输信道技术和 数据传输技术。
数据传输信道
是指通信的物理介 质,包括同轴电缆、双绞线、光纤、越洋海底电缆、微波信道、短波信道、无线通信和卫星通 信等。数据传输技术
是指在物理介质上如何组织、传送数据的方法,包括基带传输、频带传输 及调制技术、同步技术、多路复用技术、数据交换技术、编码、加密、差错控制技术和数据通 信网、设备、协议等。
3.数据压缩技术
为了使多媒体技术达到实用水平,除 了采用新技术手段增加存储空间和通信带宽外,对数据进行有效压缩将是多媒体发展中必须解决的最关键技术之一。 数据压缩的算法非常多,不同特点的数据有不同的数据压缩算法(也就是编码方式),按类别分主要存在以下3类:(1)即时压缩和非即时压缩。 (2)数据压缩和文件压缩。(3)无损压缩与有损压缩。
国际上已广泛使用数据压缩技术处理各类图形、图像、视频数据,比较流行的几种编码格 式已形成国际编码标准。
- (1)静态图像压缩编码的国际标准。
- (2)动态图像视频编码标准 (MPEG)。
- (3)视频编解码器标准 (H.26L)。
4.虚拟现实 (VR)/增强现实 (AR) 技术
虚拟现实 (Virtual Reality,VR)
又称人工现实、临境等,是一种可以创建和体验虚拟世界的计算机仿真系统,采用计算机技术生成 一个逼真的视觉、听觉、触觉、味觉及嗅觉的感知系统与用户交互; 增强现实技术是指把原本在现实世界的一定时间和空间范围内很难体验到的实体信息(视觉信息、声音、味道和触觉等),通过模拟仿真后,再叠加到现实世界中被人类感官所感知,从而达到超越现实的感官体验。是近年来十分活跃的技术领域, 是多媒体发展的更高境界, VR技术涵盖了传统多媒体技术的所有内容。
增强现实 (Augmented Reality,AR)
技术是指把原本在现实世界的一定时间和空间范围内 很难体验到的实体信息(视觉信息、声音、味道和触觉等),通过模拟仿真后,再叠加到现实世界中被人类感官所感知,从而达到超越现实的感官体验。增强现实的出现与 计算机图形图像技 术、空间定位技术和人文智能 (Humanistic Intelligence) 等技术的发展密切相关。
VR/AR技术主要分为 桌面式、分布式、沉浸式和增强式 4种。
2.8 系统工程
系统工程是一种组织管理技术。所谓系统,首先是把要研究的对象或工程管理问题看作一个由很多相互联系、相互制约的组成部分构成的总体,然后运用运筹学的理论和方法以及电子计算机技术,对构成系统的各组成部分进行分析、预测和评价,最后进行综合,从而使该系统 达到最优。
2.8.1 系统工程概述
系统工程
是运用系统方法,对系统进行规划、研究、设计、制造、试验和使用的组织管理技术。
系统
是一组综合的元素、子系统或组件,用以完成一个确定的目标。
系统之系统 (System of System,SoS)
适用于其系统元素本身也是系统的情况。
2.8.2 系统工程方法
系统工程方法
是一种现代的科学决策方法,也是一门基本的决策技术。
系统工程方法的特点是整体性、综合性、协调性、科学性和实践性。系统工程方法是人类 在自然科学和社会科学领域,不断实践中产生的一系列科学处理问题的方法,它包括整体观念、 综合观念、科学观念和创新观念等。
1.霍尔的三维结构
霍尔三维结构又称霍尔的系统工程,是美国系统工程专家霍尔 (A.D.Hall) 等人在大量工 程实践的基础上,于1969年提出的一种系统工程方法论。
霍尔的三维结构模式的出现,为解决大型复杂系统的规划、组织、管理问题提供了一种统 一的思想方法,因而在世界各国得到了广泛应用。
2.切克兰德方法
切克兰德方法论的核心不是 "最优化"而是"比较"与"探寻"。从模型和现状的比较中来学习改善现状的途径。"比较"这 一步骤,含有组织讨论、听取各方面有关人员意见的意思,不拘泥于非要进行定量分析的要求, 能更好地反映人的因素和社会经济系统的特点。
切克兰德方法将工作过程分为7个步骤:(1)认识问题。(2)根底定义。(3)建立概念模型。(4)比较及探寻。(5)选择。(6)设计与实施。(7)评估与反馈。
3.并行工程方法
并行工程 (Concurrent Engineering)
是对产品及其相关过程(包括制造过程和支持过程)进行并行、集成化处理的系统方法和综合技术。
并行工程的目标是提高质量、降低成本、缩短产品开发周期和产品上市时间。
4.综合集成法
综合集成是从整体上考虑并解决问题的方法论。钱学森指出,这个方法不同于近代科学一 直沿用的培根式的还原论方法,是现代科学条件下认识方法论上的一次飞跃。
5.WSR 系统方法
WSR是物理 (Wuli)-事理 (Shili)-人理 (Renli)
方法论的简称,是中国著名系统科学专 家顾基发教授和朱志昌博士于1994年在英国 H U L L 大学提出的。它既是一种方法论,又是一种 解决复杂问题的工具。顾名思义, WSR是物理、事理和人理三者如何巧妙配置、有效利用以解决问题的一种系 统方法论。"懂物理、明事理、通人理"就是W S R方法论的实践准则
WSR方法论一般工作过程可理解为这样的7步: 理解意图、制定目标、调查分析、构造策略、选择方案、协调关系和实现构想。
2.8.3 系统工程的生命周期
1.生命周期阶段
下面是系统工程流程的7个一般生命周期阶段。
1)探索性研究阶段; 2)概念阶段; 3)开发阶段; 4)生产阶段; 5)使用阶段; 6)保障阶段; 7)退役阶段
2.生命周期方法
1)计划驱动方法: 需求、设计、构建、测试、部署范式被认为是构建系统的传统方式。
2)渐进迭代式开发: 当需求不清晰不确定或者客户希望在系统中引入新技术时,则使用 IID 方法。
3)精益开发: 精益思想是一个动态的、知识驱动的、以客户为中心的过程,通过这一过程使特定企业的 所有人员以创造价值为目标不断地消除浪费。
2.8.4 基于模型的系统工程
基于模型的系统工程 (Model-Based Systems Engineering,MBSE)
的定义: MBSE是建模方法的形式 化应用,以使建模方法支持系统需求、分析、设计、验证和确认等活动,这些活动从概念性设 计阶段开始,持续贯穿到设计开发以及后来的所有生命周期阶段。
MBSE 的三大支柱分别是建模语言、建模工具和建模思路。
2.9 系统性能
系统性能
是一个系统提供给用户的所有性能指标的集合。它既包括硬件性能(如处理器主 频、存储器容量、通信带宽等)和软件性能(如上下文切换、延迟、执行时间等),也包括部件 性能指标和综合性能指标。系统性能包含性能指标、性能计算、性能设计和性能评估4个方面 的内容。
2.9.1 性能指标
性能指标是软、硬件的性能指标的集成。在硬件中,包括计算机、各种通信交换设备、各 类网络设备等;在软件中,包括操作系统、数据库、网络协议以及应用程序等。
1.计算机的性能指标
评价计算机的主要性能指标有时钟频率(主频)、运算速度、运算精度、内存的存储容量、存储器的存取周期、数据处理速率 (Processing Data Rate,PDR)、 吞吐率、各种响应时间、各种利用率、 RASIS特性(即可靠性 (Reliability)、 可用性 (Availability)、 可维护性(Serviceability)、 完整性和安全性 (Integrity and Security))、 平均故障响应时间、兼容性、可扩 充性和性能价格比。
2.路由器的性能指标
评价路由器的主要性能指标有设备吞吐量、端口吞吐量、全双工线速转发能力、背靠背帧 数、路由表能力、背板能力、丢包率、时延、时延抖动、 V P N支持能力、内部时钟精度、队列 管理机制、端口硬件队列数、分类业务带宽保证、 RSVP、IP DiffServ、CAR支持、冗余、热插 拔组件、路由器冗余协议、网管、基于 W e b 的管理、网管类型、带外网管支持、网管粒度、计费能力/协议、分组语音支持方式、协议支持、语音压缩能力、端口密度、信令支持。
3.交换机的性能指标
评价交换机所依据的性能指标有交换机类型、配置、支持的网络类型、最大A T M端口数、 最大SONET端口数、最大FDDI端口数、背板吞吐量、缓冲区大小、最大M A C地址表大小、 最大电源数、支持协议和标准、路由信息协议 (RIP)、RIP2、 开放式最短路径优先第2版、边 界网关协议 (BGP)、 无类别域间路由 (CIDR)、 互联网成组管理协(IGMP)、 距离矢量多 播路由协议 (DVMRP)、 开放式最短路径优先多播路由协议 (MOSPF)、 协议无关的多播协议 (PIM)、 资源预留协议(RSVP)、802.1p优先级标记,多队列、路由、支持第3层交换、支持 多层(4~7层)交换、支持多协议路由、支持路由缓存、可支持最大路由表数VLAN、 最大V L A N数量、网管、支持网管类型、支持端口镜像、 QoS、 支持基于策略的第2层交换、每端 口最大优先级队列数、支持基于策略的第3层交换、支持基于策略的应用级QoS、 支持最小/ 最大带宽分配、冗余、热交换组件(管理卡、交换结构、接口模块、电源、冷却系统)、支持端 口链路聚集协议、负载均衡。
4.网络的性能指标
评价网络的性能指标有设备级性能指标、网络级性能指标、应用级性能指标、用户级性能 指标和吞吐量。
5.操作系统的性能指标
评价操作系统的性能指标有系统上下文切换、系统响应时间、系统的吞吐率(量)、系统资 源利用率、可靠性和可移植性。
6.数据库管理系统的性能指标
衡量数据库管理系统的主要性能指标包括数据库本身和管理系统两部分,有数据库的大小、 数据库中表的数量、单个表的大小、表中允许的记录(行)数量、单个记录(行)的大小、表 上所允许的索引数量、数据库所允许的索引数量、最大并发事务处理能力、负载均衡能力、最大连接数,等等。
7.Web 服务器的性能指标
评 价 Web 服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量。
2.9.2 性能计算
性能指标计算的主要方法有定义法、公式法、程序检测法和仪器检测法。 常用的性能指标的计算过程 (Millions of Instructions Per Second,MIPS) 的计算方法、峰值计算、等效指令速度(吉普森 (Gibson) 法)。 在实际应用中,往往是对这些常用性能指标的复合计算,然后通过算法加权处理得到最终结果。
2.9.3 性能设计
1.性能调整
对于数据库系统,性 能调整主要包括 CPU/ 内存使用状况、优化数据库设计、优化数据库管理以及进程/线程状态、 硬盘剩余空间、日志文件大小等;
对于应用系统,性能调整主要包括应用系统的可用性、响应 时间、并发用户数以及特定应用的系统资源占用等。
2.阿姆达尔解决方案
阿姆达尔定律定义了采用特定部件所取得的加速比。假定人们使用某种增强部件,计算机 的性能就会得到提高,加速比定义如下:
加速比
=不使用增强部件时完成整个任务的时间
/使用增强部件时完成整个任务的时间
2.9.4 性能评估
性能评估
是为了一个目的,按照一定的步骤,选用一定的度量项目,通过建模和实验,对 一个系统的性能进行各项检测,对测试结果做出解释,并形成一份文档的技术。性能评估的一 个目的是为性能的优化提供参考。
1.基准测试程序
4种评价程序,它们评测的准确程度依次递减:真实的程序、核心程序、小型基准程序和 合成基准程序。
2.Web 服务器的性能评估
在Web服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等。常见的 Web 服务器性能评测方法有基准性能测试、压力测试和可靠性测试。
3.系统监视
进行系统监视的方法通常有3种方式:
- 一是通过系统本身提供的命令,如 UNIX/Linux 中的 W、ps、last,Windows 中的 netstat 等;
- 二是通过系统记录文件查阅系统在特定时间内的运行状态;
- 三是集成命令、文件记录和可视化技术,如 Windows 的Perfmon应用程序。