赞
踩
计算机系统是指用于数据管理的计算机硬件、软件及网络组成的系统。
它是按人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。
冯诺依曼体系计算机结构:
冯·诺依曼计算机结构将计算机硬件分为五部分。
下面分别介绍
控制器:是分析和执行指令的部件。
指令寄存器(IR)
指令译码器(ID)
程序计数器(PC)
运算器:负责完成算术、逻辑运算功能。
算术逻辑单元(ALU)
累加寄存器(AC)
通用寄存器组
这里需要记一个知识点 (选择题可能会考 中级的软件设计师就考过)
RISC与CISC
为提高指令执行效率,选择向指令系统中添加更多、更复杂的指令来实现,导致指令集越来越大。这种类型的计算机称为复杂指令集计算机(CISC)。
对指令数目和寻址方式做精简,指令的指令周期相同,采用流水线技术,指令并行执行程度更好,这就是精简指令集计算机
(RISC)。
记住CISC 开头的C是 complex 复杂的意思 就能记住这两个缩写了。
下表为RISC与CISC的区别
CISC | RISC | |
---|---|---|
指令条数 | 多 | 只选取常见的指令 |
指令复杂度 | 高 | 底 |
指令长度 | 变化 | 短、固定 |
指令执行周期 | 随指令变化较大 | 大多数能在一个机器周期完成 |
指令格式 | 复杂 | 简单 |
寻址方式 | 多 | 极少 |
涉及访问主存指令 | 多 | 极少,大部分只有两条存指令 |
通用寄存器数量 | 一般 | 大量 |
译码方式 | 微程序控制 | 硬件电路 |
对译码系统要求 | 低 | 高 |
RAM:随机存储器,可读/写,只能暂存数据,断电后数据丢失。
SRAM:静态随机存储器,在不断电时信息能够一直保持,读写速度快,生产成本高,多用于容量较小的高速缓冲存储器。例如CPU的高速缓存。
DRAM:动态随机存储器,需要定时刷新以维持信息不丢失,读写速度较慢,集成度高,生产成本低,多用于容量较大的主存储器。例如电脑内存条。
ROM:只读存储器,出厂前用掩膜技术写入,常用于存放BIOS和微程序控制。
EPROM:可擦除的PROM,用某种方法可擦去信息,可写入多次。
E2PROM:电可擦除EPROM,可以写入,但速度慢。
闪速存储器(Flash Memory):其特性介于EPROM与E2PROM之间。但不能进行字节级别的删除操作。
Disk和磁带。
存储器分级体系结构
片上缓存
片外缓存
主存(内存)
外存(辅存)
CPU寄存器 | 高速缓存 | 主存储器 | 辅助存储器 | |
---|---|---|---|---|
类型 | 寄存器 | Cache | 内存 | 硬盘、U盘 |
容量 | 十多KB至几百KB | 一般是几MB至几十MB | 几GB至几十GB | 数TB至数PB |
速度 | 极快,纳秒级别 | 非常快,几纳秒至几十纳秒 | 几十纳秒至几百纳秒 | 较慢,毫秒级别 |
价格 | 非常高 | 高 | 一般 | 便宜 |
计算机总线有许多种类,常见的有并行总线和串行总线。
并行总线主要包括PCI、PCI-X和ATA(IDE)等。
串行总线主要包括USB、SATA、CAN、RS-232、RS-485、 RapidIO、以太网、PCIe等。
④、接口(了解)
接口是指同一计算机不同功能层之间的通信规则。
常见的包括显示类接口(HDMI、DVI和DVI等)
音频输入输出类接口(TRS、RCA、XLR等)
网络类接口(RJ45、FC等)
PS/2接口,USB接口,SATA接口,LPT打印接口和RS-232接口等:
⑤、外部设备(了解)
常见的外部设备包括:键盘、鼠标、显示器、扫描仪、摄像头、麦克风、打印机、光驱、各型网卡和各型存储卡/盘等。
在移动和穿戴设备中,常见的包括加速计、GPS、陀螺仪、感光设备和指纹识别设备等。
在工业控制、航空航天和医疗等领域,包括测温仪、测速仪轨迹球、各型操作面板、红外/NFC等感应设备、各种场强测量设备、功率驱动装置、各型机械臂、各型液压装置、油门杆和驾驶杆等。
软件系统是指在计算机硬件系统上运行的程序、相关的文档资料和数据的集合。(记忆 可能会考选择题)
计算机软件用来扩充计算机系统的功能,提高计算机系统的效率。
计算机软件分为系统软件和应用软件两大类。
系统软件包括:操作系统、程序设计语言翻译系统,中间件、数据库管理系统和网络软件等。
应用软件是指为某类应用需要或解决某个特定问题而设计的软件,如图形图像处理软件、财务软件等。
结构如下:( 自下而上 需要记忆)
操作系统特点:
(1)并发性:是指在一段时间内,宏观上有多个程序同时运行,但实际上在单CPU的运行环境,每一个时刻只有一个程序在执行。
(2)共享性:共享是指操作系统中的资源被多个并发执行的进程共同使用,而不是被一个进程所独占。
(3)虚拟性:是指把一个物理实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术。
(4)不确定性:是指在多道程序环境中,允许多个进程并发执行但由于资源有限,在多数情况下进程的执行不是一贯到底的,而是“走走停停”。
操作系统的分类
批处理操作系统
分时操作系统
实时操作系统
网络操作系统
分布式操作系统
微型计算机操作系统
嵌入式操作系统
前趋图 (考选择题 ☆☆☆☆☆)
前趋图是一个有向无循不图(DAG),用来描述进程之间执行的前后关系。
前趋图的两个元素
图示:
这个知识点会考个选择题
例如:
前趋图(Precedence Graph)是一个有向无环图,记为:→={ (Pi , Pj) { Pi must complete before Pj may start},假设系统中进程P={P1, P2,P3,P4,P5,P6,P7,P8} , 且进程的前趋图如上图所示,那么该前趋图可记为?
答案:
→={ (P1,P2), (P1,P3), (P1,P4), (P2,P3), (P2,P5), (P3,P4), (P3,P6), (P4,P7), (P5,P6), (P5,P8), (P6,P7), (P7,P8)}
解析: 根据图片 从小到大按照箭头顺序排列即可 , 例如P1到P2\P3\P4都有箭头 就先把P1的列完,再依次列P2的。
数据库
数据库(DB)是指长期存储在计算机内、有组织、统一管理的相关数据的集合
常见的数据库是关系型数据库和非关系型数据库。还可分为关系型数据库、键值(Key-根据数据库存储体系分类居库、文档数据库和搜索引擎数据库等Value)数据库、列存储数类型。
例如 Web开发经常使用的Oracle、MySQL、PostgreSQL、SQLServer等 都是关系型数据库。
文件系统
文件是指具有文件名的逻辑上具有完整意义的相关信息的集合,现代os中通过文件系统来组织和管理计算机中存储的数据。
文件的物理结构。
又称为文件的存储结构,是指文件在外存上的存储组织形式。与存储介质的存储性能和采用的外存分配方式有关。
文件的物理结构(外存分配方式): (会考选择题 ☆☆☆☆☆)
例:
某文件系统文件存储采用文件索引节点法。假设文件索引节点中有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4字节,其中地址项iaddr[0]~iaddr[4]为直接地址索引,iaddr[5]、iaddr[6]是一级间接地址索引,iaddr[7]是二级间接地址索引,磁盘索引块和磁盘数据块大小均为1KB,若要访问iclsclient.dll文件的逻辑块号分别为1、518,则系统应分别采用()。
A.直接地址索引、直接地址索引
B.直接地址索引、一级间接地址索引
C.直接地址索引、二级间接地址索引
D.一级间接地址索引、二级间接地址索引
答案: C
解析:
每个地址项大小为4字节 即4B 1KB = 1024B
所以1kB 有256个地址项
由于 磁盘索引块和磁盘数据块大小均为1KB
所以如下图所示 (注意逻辑块号 是从0开始的)
如上图所示
1、518 所在的逻辑块号 分别是 直接地址索引、二级间接地址索引
存储空间的管理
一般有两种方式
序号 | 第1个空闲块号 | 空闲块数 | 状态 |
---|---|---|---|
1 | 10 | 30 | 可用 |
2 | 20 | 40 | 可用 |
3 | 30 | 50 | 可用 |
中间件
中间件,作为应用软件与各种操作系统之间使用的标准化编程接口和协议,起承上启下的作用,使应用软件的开发相对独立于计算机硬件和操作系统 ,在不同的系统上运行,实现相同的功能。
常见的中间件:
(1)消息中间件 例如:RabbitMQ、Kafka等
消息中间件:是以消息为载体进行通信的中间件,利用高效可靠的消息机制来实现不同应用间大量的数据交换。
分两类:消息队列和消息传递。通过这两种消息模型可以在复杂的网络环境中高可靠、高效率的实现安全的异步通信。
(2)事务处理(交易)中间件 例如:seata
事务处理(交易)中间件:主要功能是提供联机事务处理所需要的通信、并发访问控制、事务控制、资源管理、安全管理、负载平衡、故障恢复等服务。事务式中间件支持大量客户进程的并发访问,可靠性高、扩展性强,主要应用于电信、金融、飞机订票系统大量客户的领域。 Web应用中经常需要使用事务中间件来处理分布式事务问题。
(3)数据存取管理中间件 例如:MyCat
(4)Web服务器中间件 例如:Tomcat ,Nginx等
(5)安全中间件 例如:Shiro 、SpringSecurity
(6)跨平台和架构的中间件
(7)专用中间件
(8)网络中间件
软件构件
构件又称为组件,是一个自包容、可复用的一组程序的集合,构件对外提供统一的访问接口,只能通过接口来访问构件,不能直接操作构件内部。构件的两个重要特性是自包容(不依赖其他构件)与可重用。
软件构件的组装模型的开发过程
应用软件
应用软件是为满足用户不同领域、不同问题的应用需求而提供的软件。按照应用软件的开发方式和适用范围,应用软件可再分成通用应用软件和定制应用软件两大类。
类别 | 功能 | 举例 |
---|---|---|
文字处理软件 | 处理文字、排版 | Word、WPS |
电子表格 | 设计表格、计算、统计、制表 | Excel、WPS |
图形处理软件 | 图像处理、绘图 | AutoCAD、Photoshop |
多媒体播放软件 | 播放各类媒体文件 | PotPlayer、RealPlayer |
网络通信软件 | 电子邮件、即时聊天、视频、直播、会议 | Outlook、MSN、Facebook、X、QQ、Instagram |
演示软件 | 幻灯片演示 | PowerPoint、WPS |
检索软件 | 检索信息 | Google、百度、ChatGPT |
个人信息管理软件 | 记事本、通讯录 | NotePad++、记事本 |
游戏 | 娱乐 | 扫雷、扑克、原神、DNF |
嵌入式系统的组成及特点:
嵌入式系统(Embedded System)是为了特定应用而专门构建且将信息处理过程和物理过程紧密结合为一体的专用计算机系统。它对功能、可靠性、成本、体积、功耗、环境等综合性能要求严格。
嵌入式软件是指可运行在嵌入式系统中的程序代码和帮助这些软件开发所用的工具或环境软件的总称。
嵌入式系统的组成
一般嵌入式系统由嵌入式处理器、相关支撑硬件、嵌入式操作系统、支撑软件以及应用软件组成。
(1)嵌入式处理器
(2)相关支撑硬件
(3)嵌入式操作系统
(4)支撑软件
(5)应用软件
嵌入式系统的特点
(1)专用性强。
(2)技术融合。
(3)软硬一体软件为主。
(4)比通用计算机资源少。
(5)程序代码固化在非易失存储器中。
(6)需专门开发工具和环境。
(7)体积小、价格低、工艺先进、性价比高、配置要求低、实时性强。
(8)安全性和可靠性要求高。
嵌入式系统的分类
根据不同用途可将嵌入式系统划分为
嵌入式实时系统
系统嵌入式非实时系统
从安全性要求,嵌入式系统可分为:
包含关系:
嵌入式软件的组成及特点 (可能会考选择题 ☆☆☆☆☆)
组成:
嵌入式系统软件组成架构采用层次化结构,并且具备可配置、可剪裁能力。
从现代嵌入式系统观看,把嵌入式系统分为硬件层、抽象层、操作系统层、中间件层和应用层。
特点:
例:
嵌入式实时操作系统与一般操作系统相比具备许多特点,以下不属于嵌入式实时操作系统特点的是( )。
A.可剪裁性 B.实时性 c.通用性 D.可固化性
答案: C
解析:嵌入式实时操作系统主要有以下特点
(1)微型化
(2)代码质量高
(3)专业化
(4)实时性强
(5)可裁减、可配置
安全攸关软件的安全性设计
美国电气和电子工程协会(IEEE)将安全攸关软件定义为:“用于一个系统中,可能导致不可接受的风险的软件
软件安全等级与目标关系表 举例
航空器作为一个复杂的系统,对软件安全性有着非常高的要求,不同的软件安全等级对飞行安全的影响程度不同
等级 | 失效状态 | 简要说明 | 目标数量 |
---|---|---|---|
A级 | 灾难性的 | 软件异常会导致的后果是:航空器无法安全飞行和着陆 | 66 |
B级 | 危害性的 | 软件异常会导致的后果是:严重降低了航空器或机组在克服不利运行情况时的能力 | 65 |
C级 | 严重的 | 软件异常会导致的后果是:显著降低了航空器或机组在克服不利运行情况时的能力 | 56 |
D级 | 不严重的 | 软件异常会导致的后果是:轻微降低了航空器或机组在克服不利运行情况时的能力 | 28 |
E级 | 没有影响的 | 软件异常会导致的后果是:不会影响航空器或机组任何能力 | 0 |
网络的基本概念
计算机网络是利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件及通信协议实现资源共享和信息传递的系统。
计算机网络技术涵盖通信技术、网络技术、组网技术和网络工程等四个方面。
计算机网络的功能
网络相关指标
1)性能指标
(1)速率
网络速率指的是连接在计算机网络上的主机或通信设备在数字信道上传送数据的速率,速率的单位是 b/s。
(2)带宽
“带宽”有两种不同的意义
(3)吞吐量
表示单位时间内通过某个网络(或信道、接口)的数据量。吞吐量受网络的带宽或网络额定速率的限制。
(4)时延
时延是指数据(报文、分组)从网络(链路)的一端传送到另一端所需的时间。网络中的时延由以下部分组成
(5)往返时间。
往返时间(RTT)也是一个重要的网络性能指标,它表示从发送方发送数据开始,到发送方收到来自接收方的确认(接受方收到数据后便立即发送确认总共经历的时间。
(6)利用率
利用率有信道利用率和网络利用率两种信道利用率指信道被利用的概率(即有数据通过),通常以百分数表示。完全空闲的信道利用率是零
网络利用率是全网络的信道利用率的加权平均值。
2)非性能指标
通信技术
计算机网络是利用通信技术将数据从一个结点传送到另一结点的。通信技术是计算机网络的基础。
信道可分为物理信道和逻辑信道:
物理信道由传输介质和设备组成,根据传输介质的不同,分为有线信道和无线信道。
逻辑信道是指在数据发送端和接收端之间存在的一条虚拟线路可以是有连接的或无连接的。
逻辑信道以物理信道为载体。
香农公式
(之前大学 学过一门专业课叫 信号与系统 电子信息工程专业的课 里面比这些知识深入的多 目前讲的这些基本上全是基本概念)
信道容量就是信道的最大传输速率,可通过香农公式计算得到。
C代表信道容量 单位是 b/s
B代表信号带宽,单位是 Hz
S代表信号平均功率,单位是 W
N代表噪声平均功率,单位是 W
S/N代表信噪比,单位是 dB(分贝)
例:
设信道带宽为4000Hz,信噪比为30dB,按照香农定理,信道容量为()。
A. 4Kb/s
B. 1.6Kb/s
C. 40Kb/s
D.120Kb/s
答案: C
解析:
根据香农公式
C=4000xlog2(1+S/N)
其中 信噪比 S/N 和分贝的换算公式为
dB = 10X lg(S/N)
带入数据 30 = 10 x lg(S/N)
S/N = 1000
带入香农公式
C = 4000 x log2 (1+1000) 约等于 4000 x 9.97 ( log2 (1+1000) 就是2的多少次方 等于 1001)
C 约等于 40000 b/s 40Kb/s
复用技术和多址技术
1)复用技术
复用技术是指在一条信道上同时传输多路数据的技术,如TDM时分复用、FDM 频分复用和CDM码分复用等。
ADSL使用了FDM的技术,语音的上行和下行占用了不同的带宽。
2)多址技术
多址技术是指在一条线上同时传输多个用户数据的技术,在接收端把多个用户的数据分离(TDMA时分多址、FDMA频分多址和CDMA码分多址)。
网络技术
网络通常按照网络的覆盖区域和通信介质等特征来分类,分为: (可能会考选择题 软件设计师就考过类似题目)
1.局域网(LAN)
局域网中常见的传输媒介有双绞线、细同轴电缆、微波、射频信号和红外线等。主要特点:
网络拓扑结构示例图:
以太网技术
以太网(Ethernet)是一种计算机局域网组网技术。IEEE 802.3 标准给出了以太网的技术标准。
以太网是当前应用最普遍的局域网技术
(1)以太网结构
最大帧长为1518字节(最大的数据帧为1500字节),最小帧长为64字节,如果不足则需要加入填充位。
帧头设有32位用于进行CRC32校验,参与校验的是帧头中除前导字段和帧起始符之外的部分。
以太网帧结构图
无线局域网(WLAN)
无线局域网是以无线通信为传输方式的局域网,是实现移动计算机网络的关键技术之一。
无线局域网以微波、激光与红外线等无线电波作为传输介质,来部分或全部代替传统局域网中的有线传输介质。架设无线局域网
需要无线网卡和访问接入点AP。
与有线网络相比,无线局域网具有安装便捷、使用灵活、经济节约、易于扩展等优点。
WLAN标准
广域网(WAN)
广域网是一种将分布于更广区域(如一个城市、一个国家甚至国家间) 的计算机设备联接起来的网络。由通信子网与资源子网组成。
广域网的特点
城域网(MAN)
在单个城市范围内所建立的计算机通信网,覆盖范围介于局域网和广域网之间。
城域网的主要技术是DQDB(分布式队列双总线),即IEEE802.6。
DQDB是由双总线构成的,所有的计算机都连接在上面。
移动通信网
移动通信技术经历了五个发展时期
第一代移动通信系统是模拟通信,采用的是FDMA(频分多址)调制技术,其频谱利用率低;
第二代移动通信系统是数字通信系统,采用的是TDMA(时分多址)的数字调制方式,对系统的容量限制较大;
第三代移动通信技术(3G)则采用了CDMA(码分多址)数字调制技术,能够提供大容量、高质量、综合业务、软切换的要求;
第四代移动通信技术(4G) 。包括TD-LTE和FDD-LTE两种制式。
第五代移动通信技术(5G)。
第五代移动通信(5G)
5G是具有高速率、低时延和大连接特点的新一代宽带移动通信技术,是实现人机物互联的网络基础设施。与4G相比,5G可以提供小于1ms的端到端时延,以及99.9999%的可靠性,极大地丰富了网络应用场景。5G的三大类应用场景:
增强移动宽带(eMBB),面向移动互联网流量爆炸式增长,为移动互联网用户提供更加极致的应用体验;
超高可靠低时延通信(uRLLC),面向工业控制、远程医疗、自动驾驶等对时延和可靠性具有极高要求的垂直行业应用需求;
海量机器类通信(mMTC),面向智慧城市、智能家居、环境监测等以传感和数据采集为目标的应用需求。
网络切片
5G 网络切片可在同一物理网络基础设施上划分为多个逻辑独立的虚拟网络。每个网络切片都是一个隔离的端到端网络,包含自己独特的延迟、吞吐量、安全性和带宽特性,可以灵活应对不同的需求和服务。
例: 5G网络采用 ( ) 可将5G网络分割成多张虚拟网络,每个虚拟网络的接入,传输和核心网是逻辑独立的,任何一个虚拟网络发生故障都不会影响到其它虚拟网络。
A.网络切片技术
B.边缘计算技术
C.网络隔离技术
D.软件定义网络技术
答案: A
组网技术
网络设备及其工作层级
常见的网络互联设备有 集线器、中继器、网桥、交换机、路由器和防火墙。
中继器(Repeater)
工作在物理层的设备。适用于完全相同的两类网络(逻辑链路协议相同)的互连,主要功能是通过对数据信号的复制、整形、放大再发送,来扩大网络传输的距离。
集线器(Hub)
具有中继器的功能,区别在于集线器能够提供多端口服务,也称多口中继器。**集线器也是物理层设备。**集线器不具备交换机所具有的MAC地址表,所以它发送数据时是没有针对性的,而是采用广播方式发送。
网桥(Bridge)
网桥也称桥接器,网桥是数据链路层的连接设备,是连接两个局域网的存储转发设备,它不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。
交换机(Switch)
也称多端口网桥,工作在数据链路层,能够识别帧的内容。交换机在同一时刻可进行多对端口之间的数据传输。每一端口都可视为独立的网段,连接在其上的网络设备独自享有全部的带宽,无须同其他设备竞争使用。
交换原理
转发路径学习
根据收到数据帧中的源MAC 地址建立该地址同交换机端口的映射写入MAC 地址表中。
数据转发
根据数据帧的目的 MAC 地址在MAC 地址表中查询到了,就向对应端口进行转发。
数据泛洪
如果数据帧中的目的 MAC 地址不在 MAC 地址表中,则向所有端口转发也就是泛洪。广播帧和组播帧向所有端口(不包括源端口) 进行转发。
链路地址更新。MAC 地址表会每隔一定时间(如30s)更新一次。
路由器(Router)
路由器工作在OSI体系结构中的网络层,它可以在多个网络上交换和路由数据包。路由器会根据信道的情况自动选择和设定路由,
以最佳路径,按前后顺序发送信号。路由表包含网络目的地址、端口、下一跳地址和发送代价等属性。路由器通常用于广域网或广域网与局域网的互连。
路由协议可分为两类:
内部网关协议(IGP)
RIP-1、RIP-2(路由信息协议) 基于距离矢量算法的路由协议,利用跳数来作为计量标准
IGRP (内部网关路由协议)距离矢量算法,思科的专有协议
EIGRP(增强型 IGRP)当拓扑结构变化时才发送路由更新
IS-IS(中间系统到中间系统)基于链路状态路由协议
OSPF(开放式最短路径优先)属于链路状态路由协议。提出了区域(area)的概念
外部网关协议(EGP)目前使用的是BGP协议。
防火墙
是一种位于内部网络与外部网络之间的网络安全系统。它依照特定的规则,实现对进出网络的数据进行监视和过滤。防火墙不能
阻止内部发起的攻击。
下面这表要记住 (可能会考选择题)
设备 | 工作层 | 功能 |
---|---|---|
中继器 | 物理层 | 对接收信号进行再生和发送,只起到扩展传输距离用,对高层协议是透明的,但使用个数有限(以太网是4个) |
网桥 | 数据链路层 | 根据帧物理地址进行网络间信息转发,可缓解网络通信繁忙度,提高效率。只能够连接相同 MAC 层的网络 |
路由器 | 网络层 | 通过逻辑地址进行网络间的信息转发,可完成异构网络之间的互连互通,只能连接使用相同网络层协议的子网 |
网关 | 高层(4~7) | 最复杂的网络互联设备,用于连接网络层上执行不同协议的子网(例如Novell与 SNA) |
集线器 | 物理层 | 多端口中继器 |
二层交换机 | 数据链路层 | 多端口网桥 |
三层交换机 | 网络层 | 带路由功能的二层交换机 |
多层交换机 | 高层(4~7) | 带协议转换的交换机 |
网络协议
开放系统互连模型OSI
IMP(Internet Mail Protocol)是一种互联网上常用的邮件传输协议。它定义了电子邮件的传输和交换方式,包括发件人和收件人之间的通信规则和数据格式。
IMP协议是基于SMTP(Simple Mail Transfer Protocol)协议的扩展,SMTP主要用于从邮件客户端将邮件发送到邮件服务器。而IMP协议则负责将邮件从邮件服务器传递到接收方的邮件客户端。
TCP/IP协议集
TCP/IP协议簇分为应用层、传输层、网际层和网络接口层四层
每一层的一些协议 需要记一下
网络工程
网络建设工程可分为网络规划、网络设计和网络实施三个环节。
计算机语言的分类
计算机语言分成
机器语言
机器语言是用二进制代码表示的,计算机能直接识别和执行的语言,由操作码和操作数两部分组成。
汇编语言
汇编语言是用助记符来表示各个基本操作的程序设计语言。如用ADD表示加法操作,MOV表示数据传递等。
汇编语言大大减少了程序编写、阅读、修改方面的工作量,但汇编语言也是一种面向机器的语言,计算机不能直接执行,通用性
和可移植性差,必须经过汇编程序翻译成机器语言程序后才能在计算机上执行,需要程序员对计算机内部结构非常了解。
高级语言
高级语言是一种用接近自然语言和数学语言的语法、符号描述基本操作的程序设计语言。简单易学、编程效率高、可移植性好。
但需用专门的翻译程序将其转换成机器语言程序后才能执行。
高级语言种类繁多,风格迥异,各有所长。常见的高级语言有C、C++、Visual Basic、Java、JSP、PHP、C#、Python、Ruby等。
(笔者就是Java程序员 主要做Web应用的开发 和一些项目管理、架构设计工作)
建模语言
UML (统一建模语言)是一个支持模型化和软件系统开发的图形化语言,UML是面向对象设计的建模工具,独立于任何具体程序设
计语言。它不仅支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。
UML 成为"标准"建模语言的原因之一在于与程序设计语言无关
UML 组成要素
UML由3个要素构成:
下面展开讲解:
事物
UML 中有 4 种事物:结构事物、行为事物、分组事物和注释事物。
结构事物包括类(Class)、接口(Interface)、协作 (Collaboration)、用例(UseCase)、主动类(Active Class)、构件(Component)、制品 (Artifact)和结点(Node)。
下面的图形表示 要牢记
行为事务图示如下:
最主要的分组事物是包 (Package)。包是把元素组织成组的机制,这种机制具有多种用途。结构事物、行为事物甚至其他分组事物都可以放进包内。
图示:
图示:
关系
UML 中有4 种关系:依赖、关联、泛化和实现。
依赖是两个事物间的语义关系,其中一个事物(独立事物) 发生变化会影响另一个事物(依赖事物)的语义。
关联是一种结构关系,它描述了一组链,链是对象之间的连接。关联提供了不同类之间的对象可以相互作用的连接。
关联关系又包括两种特殊的关系:聚合关系和组合关系 (容易考选择题 ☆☆☆☆☆)。
✓ 聚合关系是关联关系的一种特例,是强的关联关系。
聚合表示类之间的关系是整体与部分的关系,但整体与部分之间是可分离的,他们具有各自的生命周期。
使用 表示聚合关系,空心菱形指向的是代表“整体”的类。
✓ 组合关系也是关联关系的一种特例,这种关系比聚合更强,也称为强聚合;他同样体现整体与部分间的关系,但此时整体与
部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束。使用带有实心菱形的实线 表示组合关系。
泛化
是一种特殊 /一般关系,即OO( object-oriented 面向对象)语言中,类之间的继承关系。
特殊元素 (子元素)的对象可替代一般元素 (父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。泛化关系画成
一条带有空心箭头的实线,它指向父元素。
实现
是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。两种情况下会使用实现关系:一种是在接
口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。
UML中的图
UML 2.0 提供了13 种图
分别是
用例图、类图、对象图、序列图、通信图、状态图、活动图、构件图、部署图、组合结构图、包图、交互概览图和计时图。
用例之间的关系 (记忆 可能会考选择题 ☆☆☆☆☆)
1)包含(include) (是一种依赖关系,加了版型<<include>>)
- 两个以上用例有共同功能,可分解到单独用例形成包含依赖;
2)扩展(extend) (是一种依赖关系,加了版型<<extend>>)
如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种事情,则可以断定将这个用例分为一个主用例和一个或多个辅用例进行描述可能更加清晰。
(2)类图(class diagram)
描述一组类、接口、协作和它们之间的关系。类图给出了系统的静态设计视图
(3)顺序图(sequence diagram)
是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。
交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。
(4)协作图(通信图,UML2.0后的名称)
是一种交互图,强调的是发送和接收消息的对象之间的组织结构。一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。
(5)活动图(activity diagram)
将进程或其他计算的结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。
下图是Java线程池的执行动态图
(6)状态图(state chart diagram)
它由状态、转移、事件和活动组成。状态图给出了对象的动态视图
(7)构件图(component diagram)
描述一个封装的类和它的接口、端口,以及由内嵌的构件和连接、件构成的内部结构。
构件图用于表示系统的静态设计实现视图。
上图来源博客
(8)部署图(deployment diagram)
用来显示系统中软件和硬件的物理架构。从部署图中,可以了解到软件和硬件组件之间的物理关系以及处理节点的组件分布情况。
例:
UML(Unified Modeling Language)是面向对象设计的建模工具,独立于任何具体程序设计语言,以下( )不属于UML中的模型。
A.用例图
B.协作图
C.活动图
D. PAD图
答案: D
解析:
PAD 图(Process Activitiy Diagram,流程活动图)不属于常见的 UML 模型之一
其他选项 A. 用例图,B. 协作图和 C. 活动图都是 UML 中常见的建模图表,用于描述系统的不同方面和交互。
用例图(Use Case Diagram)用于表示系统的功能需求和与外部参与者的交互。
协作图(Collaboration Diagram,也称为通信图)用于显示对象之间的交互和消息传递。
活动图(Activity Diagram)用于显示系统中的操作、流程和活动。
用例视图 (UML是用例驱动的)
描述系统的功能需求
多媒体概述
媒体是承载信息的载体,即信息的表现形式。如文字、声音、图像、动画、视频等。
媒体分为感觉媒体、表示媒体、表现媒体、存储媒体和传输媒体。(可能会考选择题 记忆 软件设计师考过选择题)
多媒体系统的关键技术
1.视音频技术
1)视音频编码
编解码器指的是能够对一个信号或者一个数据流进行变换的设备或者程序。视音频编码的目的是对视音频数据进行传输和存储。
常见的视频文件格式 .mpg、.avi、.mov、.mp4、.rm、.ogg和.tta等
2)视音频压缩方法
视音频压缩方法可分为
无损压缩:解压缩后的数据和压缩前完全一致。多数无损压缩都采用RLE 行程编码算法。常见的格式有 WAV、PCM、TTA、
FLAC、AU、APE、TAK 和 WavPack (WV) 等;
有损压缩:解压缩后的数据与压缩前的数据不一致,压缩过程中要丢失一些人眼和耳不敏感的图像或音频信息,这些丢失的信息是不可恢复的。常见的格式有 MP3、WMA、Ogg Vorbis(OGG)等。
2.数据压缩技术
数据压缩分为以下 3 类:
即时压缩是在数据生成或传输过程中立即进行压缩操作。
即时压缩通常通过在数据生成的同时或数据传输的过程中,对数据进行压缩处理。
即时压缩可以实时减小数据的体积,有助于提高数据传输的效率和减少存储空间的占用。
即时压缩的缺点是可能会增加数据生成或传输的延迟,因为需要在数据产生或传输过程中处理压缩操作。
非即时压缩是在数据生成或传输之后,或者在数据存储之前,对数据进行批量压缩操作。
非即时压缩通常是在数据生成或传输完成后,通过调用压缩算法对数据进行压缩处理。
非即时压缩可以在合适的时间点进行压缩操作,例如在数据的空闲时间段进行批量压缩。
非即时压缩的优点是不会增加数据生成或传输的延迟,因为压缩操作是在数据的处理或存储过程之外进行的。
3.虚拟现实(VR)/增强现实(AR)技术
虚拟现实 (VR) 又称人工现实、临境等,是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,使用户沉浸到该环境中让人有种身临其境的感觉。
其概念包含 3 层含义:
增强现实(AR)技术是指把原本在现实世界的一定时间和空间范围内很难体验到的实体信息(视觉信息、声音、味道和触觉等),通过模拟仿真后,再叠加到现实世界中被人类感官所感知,从而达到超越现实的感官体验。增强现实的出现与计算机图形图像技术、空间定位技术和人文智能等技术的发展密切相关。
VR/AR 技术主要分为桌面式、分布式、沉浸式和增强式4种。
名称 | 定义 | 特点 |
---|---|---|
桌面式 VR | 利用计算机形成三维交互场景,通过鼠标、力矩球等输入设备交互,由屏幕呈现出虚拟环境 | 易实现、应用广泛、成本较低,但因会受到环境干扰而缺乏体验感 |
分布式 VR | 将 VR与网络技术相融合,在同一VR环境下,多用户之间可以相互共享任何信息 | 忽略地域限制因素,共享度高,同时研发成本极高,适合专业领域 |
沉浸式 VR | 借助各类型输入设备与输出设备,给予用户一个可完全沉浸,全身心参与的环境 | 良好的实时交互性和体验感,但对硬件配置、混合技术要求较高,开发成本高 |
增强式 VR(AR) | 将虚拟现实模拟仿真的世界与现实世界叠加到一起,用户无须脱离真实世界即可提高感知 | 体验更完美,但对混合技术要求更高,开发成本高,起步晚 |
系统工程概述
系统工程是为了最好地实现系统的目的,对系统的组成要素、组织结构、信息流、控制机构等进行分析研究的科学方法。它运用各种组织管理技术,使系统的整体与局部之间的关系协调和相互配合,实现总体的最优运行。(实现系统最优化管理工程技术)钱学森教授在1978年指出:"系统工程"是组织管理"系统"的规划、研究、设计、制造、试验和使用的科学方法,是一种对所有"系统"都具有普遍意义的科学方法。
系统工程方法
系统工程方法的特点:整体性、综合性、协调性、科学性和实践性。
常见的系统工程方法:
霍尔的三维结构
霍尔三维结构是指时间维、逻辑维和知识维。
时间维表示系统工程活动从开始到结束按时间顺序排列的全过程,分为规划、拟订方案、研制、生产、安装、运行、更新7个时间阶段。
逻辑维是指时间维的每个阶段内要进行的工作内容和应该遵循的思维程序,包括明确问题、确定目标、系统综合、系统分析、优化、决策、实施7个逻辑步骤。
知识维需要运用包括工程、医学、建筑、商业、法律、管理、社会科学、艺术等各种知识和技能。
切克兰德方法
P.切克兰德把霍尔方法论称为"硬科学"方法论,他自己的方法论
称为"软科学"方法论。切克兰德方法将工作过程分为 7 个步骤:
并行工程方法
并行工程是对产品及其相关过程(包括制造过程和支持过程)进行并行、集成化处理的系统方法和综合技术。它要求产品开发人员从设计开始就考虑产品生命周期的全过程,不仅要考虑产品的各项性能,如质量、成本和用户要求,还应考虑与产品有关的各工艺过程的质量及服务的质量。
具体做法:在产品开发初期,组织多种职能协同工作的项目组,使有关人员从一开始就获得对新产品需求的要求和信息,积极研究涉及本部门的工作业务,并将相应的要求提供给设计人员,使许多问题在开发早期就得到解决,从而保证了设计的质量,避免了大量的返工浪费。
综合集成法
1990年初,钱学森等首次把处理开放的复杂巨系统的方法命名为从定性到定量的综合集成法。综合集成是从整体上考虑并解决问题的方法论。根据组成子系统及子系统种类的多少和它们之间关联关系的复杂程度,把系统分为简单系统和巨系统两大类。
(1) 如果组成系统的子系统数量比较少,它们之间的关系比较单纯的系统称为简单系统,如一台测量仪器。
(2)如果子系统数量非常巨大(如成千上万),则称作巨系统。
(3)如巨系统中子系统种类不太多 (几种、几十种),且它们之间的关联关系又比较简单,就称作简单巨系统,如激光系统。
(4)如果子系统种类很多并有层次结构,它们之间的关联关系又很复杂,这就是复杂巨系统。如果这个系统又是开放的,就称作开放的复杂巨系统。
WSR系统方法
WSR 是物理 (Wuli)、事理 (Shili)、人理(Renli) 方法论的简称,它既是一种方法论,又是一种解决复杂问题的工具。WSR 是物理、事理和人理三者如何巧妙配置、有效利用以解决问题的一种系统方法论。“懂物理、明事理、通人理”就是 WSR 方法论的实践准则
WSR 方法论工作过程包括七步:理解意图、制定目标、调查分析、构造策略、选择方案、协调关系和实现构想。
这些步骤不一定严格依照顺序,协调关系始终贯穿于整个过程。
系统工程的生命周期
1.生命周期阶段
2.生命周期方法
1)计划驱动方法
计划驱动方法提供一种基础的框架,为生命周期流程(需求、设计、构建、测试、部署)提供规程。计划驱动方法的特征在于整个过程始终遵守规定流程的系统化方法。特别关注文档的完整性、需求的可追溯性以及每种表示的事后验证。
2)渐进迭代式开发
渐进迭代式开发(IID)方法允许为项目提供初始能力,随之提供连续交付以达到期望的系统。目标在于快速产生价值并提供快速响应能力。
当需求不清晰不确定或者客户希望在系统中引入新技术时,可使用 IID 方法。基于一系列最初的假设,开发候选的系统,然后对其评估以确定是否满足用户需求。若不满足,则启另一轮演进,并重复该流程,直到交付的系统满足利益攸关者的要求。IID 方法适用于较小的、不太复杂的系统。
3)精益开发
精益开发的目标是通过彻底消除生产线上的浪费、不一致性及不合理需求,高效率地生产出优质产品精益思想是一个动态的、知识驱动的、以客户为中心的过程,通过这一过程使特定企业的所有人员以创造价值为目标不断地消除浪费。
4)敏捷开发
敏捷联盟致力于开发迭代和敏捷的方法,寻求更快、更好的软件开发方法,挑战更多的传统模型。敏捷的关键目标在于灵活性,当风险可接受时允许从序列中排除选定的事件。
系统性能是一个系统提供给用户的所有性能指标的集合。它既包括硬件性能(如处理器主频、存储器容量、通信带宽等) 和软件性能(如上下文切换、延迟、执行时间等),也包括部件性能指标和综合性能指标。系统性能包含性能指标、性能计算、性能设计和性能评估四方面。
性能指标
1.计算机的性能指标
评价计算机的主要性能指标有时钟频率(主频)、运算速度、运算精度、内存的存储容量、存储器的存取周期、数据处理速率(PDR)、吞吐率、各种响应时间、各种利用率、RASIS特性(即可靠性(Reliability)、可用性(Availability)、可维护性(Serviceability)、完整性(Integrity)和安全性(Security))、平均故障响应时间、兼容性、可扩性和性能价格比。
2.路由器的性能指标
路由器的主要性能指标有设备吞吐量、端口吞吐量、全双工线速转发能力、背靠背帧数、路由表能力、背板能力、丢包率、时延、时延抖动、VPN 支持能力、内部时钟精度、队列管理机制、端口硬件队列数、分类业务带宽保证、RSVP、IP DiffServ、CAR 支持、冗余、热插拔组件、路由器冗余协议、网管、基于 Web 的管理、网管类型、带外网管支持、网管粒度、计费能力/协议、分组语音支持方式、协议支持、语音压缩能力、端口密度、信令支持。
3.交换机的性能指标
交换机性能指标有交换机类型、配置、支持的网络类型、最大ATM 端口数、最大SONET 端口数、最大FDDI端口数、背板吞吐量、缓冲区大小、最大 MAC 地址表大小、最大电源数、支持协议和标准、最大VLAN 数量、网管、支持网管类型、支持端口镜像、QoS、支持基于策略的第2层交换、每端口最大优先级队列数、支持基于策略的第3 层交换、支持基于策略的应用级 QOS、支持最小最大带宽分配、冗余、热交换组件(管理卡、交换结构、接口模块、电源、冷却系统)、支持端口链路聚集协议、负载均衡。
4.网络的性能指标
网络的性能指标有设备级性能指标、网络级性能指标、应用级性能指标、用户级性能指标和吞吐量。
5.操作系统的性能指标
操作系统的性能指标有系统上下文切换、系统响应时间、系统的吞吐率(量)、系统资源利用率、可靠性和可移植性。
6.数据库管理系统的性能指标
衡量数据库管理系统的主要性能指标包括数据库本身和管理系统两部分,包括数据库的大小、数据库中表的数量、单个表的大小、表中允许的记录(行)数量、单个记录(行)的大小、表上所允许的索引数量、数据库所允许的索引数量、最大并发事务处理能力、负载均衡能力、最大连接数等。
7.Web 服务器的性能指标
Web 服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量。
性能计算
1.性能指标计算的主要方法:
2.常用的性能指标计算方法:
(1)MIPS计算方法
MIPS 即 每秒处理的百万级的指令数。
(2)峰值计算
衡量计算机性能的一个重要指标就是计算峰值或者计算浮点峰值,它是指计算机每秒钟能完成的浮点计算最大次数。包括理论浮点峰值和实测浮点峰值。理论浮点峰值是该计算机理论上能达到的每秒钟能完成浮点计算最大次数,它主要是由 CPU 的主频决定。理论浮点峰值 = CPU 主频 * CPU 每个时钟周期执行浮点运算的次数 * 系统中 CPU 数。
(3)等效指令速度法
也称 Gibson (吉普森)法。通过统计各类指令在程序中所占比例进行折算。设某类指令i 在程序中所占比例为 wi,执行时间为 ti,则等效指令的执行时间为:T=w1 × t1 + w2×t2 + …+ wn × tn (n 为指令种类数)
性能设计
1.性能调整
为了优化系统的性能,有时需要对系统进行调整,这种调整也称为性能调整,它是性能管理相关的主要活动。性能调整是一项循环进行的工作,包括收集、分析、配置和测试四个反复的步骤。
2.阿姆达尔解决方案
系统中对某部件采用某种更快的执行方式,所获得的系统性能的改变程度,取决于这种方式被使用的频率,或所占总执行时间的比例。
阿姆达尔定律定义了采用特定部件所取得的加速比。
原来的机器使用了增强功能后,执行时间等于未改进部分的执行时间加上改进部分的执行时间:
总加速比等于两种执行时间之比:
例如,假如一个任务,浮点操作占整个操作时间的40%。现有一个新的设计,其浮点操作部分被加速了K倍,则总加速比为:
性能评估
性能评估是为了一个目的,按照一定的步骤,选用一定的度量项目,通过建模和实验,对个系统的性能进行各项检测,对测试结果做出解释,并形成一份文档的技术。性能评估的一个目的是为性能的优化提供参考。
1.基准测试程序
为测试新系统的性能,用户必须依靠评价程序来评价机器的性能。下面的4 种评价程序,它们评测的准确程度依次递减:真实的程
序、核心程序、小型基准程序和合成基准程序。把应用程序中用得最多、最频繁的那部分核心程序作为评价计算机性能的标准程序,称为基准测试程序(benchmark)。基准测试程序有整数测试程序、浮点测试程序、Whetstone 基准测试程序、SPEC 基准测试程序和TPC 基准程序。
2.Web服务器的性能评估
在 Web 服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等。常见的 Web 服务器性能评测方法有基准性能测试、压力测试和可靠性测试。
例:在Web服务器的测试中,反映其性能的指标不包括( ),常见的 Web服务器性能评测方法有基准性能测试、压力测试和( )。
A.链接正确跳转 B.最大并发连接数 C.响应延迟 D.吞吐量
A.功能测试 B.黑盒测试 C.白盒测试 D.可靠性测试
答案: A 、 D
3.系统监视
系统监视的方法:
例:进行系统监视三种形式,一是通过( )如PS,last;二是通过系统记录文件查阅系统运行状态;三是集成命令、文件记录和可视化技术、监视器图,如( )。
A.系统命令 B.系统调用 C.系统接口 D.系统功能
A.Windows netstat B.Linux iptables C. Windows perfmon D.Linux top
答案:A 、 C
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。