NO.2计算机基础

一、概述

计算机系统(Computer System )是指用于数据管理的计算机硬件、软件及网络组成的系统。它是按人的要求接收和存储信息, 自动进行数据处理和计算,并输出结果信息的机器系统。

二、计算机硬件

冯·诺依曼计算机结构将计算机硬件划分为5 部分,但在现实的硬件构成中,控制单元和运算单元被集成为一体,封装为通常意义上的处理器(但处理器并不是只有上述两部分);输入设备和输出设备则经常被设计者集成为一体,按照传输过程被划分为总线、接口和外部设备。

1、处理器CPU

为计算机系统运算和控制的核心部件。处理器的指令集按照其复杂程度可分为复杂指令集(CISC )与精简指令集(RISC)两类。CISC 以Intel 、AMD的x86CPU 为代表,RISC 以ARM 和Power为代表。常见的有图形处理器(GPU)处理器、信号处理器(DSP)以及现场可编程逻辑门阵(FPGA)等。GPU 是一种特殊类型的处理器,具有数百或数千个内核,经过优化可并行运行大量计算,因此近些年在深度学习和机器学习领域得到了广泛应用。DSP 专用于实时的数字信号处理。

2、存储器

存储器是利用半导体、磁、光等介质制成用于存储数据的电子设备。根据存储器的硬件结构可分为SRAM、 DRAM、 NVRAM, Flash、 EPROM、 Disk 等。计算机系统中的存储器通常采用分层的体系(Memory Hierarc饰)结构,按照与处理器的物理距离可分为4 个层次。

(1 ) 片上缓存:在处理器核心中直接集成的缓存,SRAM 结构,容量小,速度快。

(2 ) 片外缓存:在处理器核心外的缓存,需要经过交换互联开关访问,由SRAM结构,容量较片上缓存略大,可以为2561(B-4MB 。按照层级被称为L2Cache 或 L3Cache,或者称为平台Cache (Platform Cache) 。

(3 ) 主存(内存):用DRAM 结构,以独立的部件/芯片存在,通过总线与处理器连接。DRAM 依赖不断充电维持其中的数据,容量在数百 MB至数十GB ,内存条主要提供的是主存。

(4 ) 外存:可以是磁带、磁盘、光盘和各类Flash 等介质器件,这类设备访问速度慢,但容量大,且在掉电后能够保持其数据。

层次化存储结构:计算机中全部信息包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。存储器包括:主存、辅存、通用寄存器、Cache四类。

cache是为了解决高速运行的cpu与主存储器之间速度不匹配的问题。cache中存放的是主存的部分拷贝(副本)。它是按照程序的局部性原理选取出来的最常使用或不久将来仍将使用的内容。

  • 在计算机的存储系统体系中,Cache是访问速度最快的层次。(如果题目中有寄存器选寄存器,如果无选Cache)

  • Cache在改善性能的依据是:程序的局部性原理

1. 时间局部性

  • 程序中的某条指令一旦执行,不久以后该指令可能再次执行。

  • 例子:程序中存在着大量的循环操作。

  1. 空间局部性
  • 一旦程序访问了某个存储单元,不久以后,其附近的存储单元也被访问,即程序在一段时间内所访问的地址可能集中在一定的范围内。

  • 例子:顺序执行或数组等

CPU在访问内存时,首先判断所要访问的内容是否在Cache中,如果在,就称为"命中",此时CPU直接从Cache中调用该内容;否则,就称为"不命中",CPU只好去内存中调用所需的子程序或指令了。CPU不但可以直接从Cache中读出内容,也可以直接往其中写入内容。由于Cache的存取速率相当快,使得CPU的利用率大大提高,进而使整个系统的性能得以提升。如果以h为代表对Cache的访问命中率,t1为Cache的存取时间,t2为主存的访问时间,

则Cache的平均访问时间ta为 :ta=h* t1 +(1-h)*t2

例题:

解析:

磁盘:常用的外存有磁带存储器、硬盘存储器、磁盘阵列和光盘存储器。以下介绍机械磁盘:

(1)磁盘标称的容量是格式化容量,计算公式如下:格式化存储容量=n×t×s×b其中:n为保存数据的总记录面数,t为每面磁道数,s为每道的扇区数,b为每个扇区存储的字节数。

(2)非格式化:记录面数*(内直径周长*位密度)*内外半径的磁道数

(3)硬盘存取时间:寻道时间+等待时间+读/写时间,其中读/写时间可忽略不计,平均寻道时间+平均等待时间

磁盘移臂调度算法

  • 先来先服务(FCFS)

  • 最短寻道时间优先(SSTF)

  • 扫描算法(SCAN)

  • 循环扫描(SCAN)算法

例题:

例题:

磁盘阵列RAID

把多个相对便宜的磁盘组合起来,组成一个磁盘组,配合数据分散排列的设计,提升数据的安全性和整个磁盘系统效能。

  • 利用多磁盘来提高数据传输率;

  • 通过数据冗余与校验实现可靠性

RAID级别 类型 描述
RAID0 无冗余和无校验的数据分块 最高的 I/O 性能和最高的磁盘空间利用率,利用率为100%
RAID1 磁盘镜像阵列 由磁盘对组成,每一个工作盘都有其对应的镜像盘,上面保存着与工作盘完全相同的数据拷贝,具有最高的安全性,磁盘空间利用率只有 50%,适合存放一些重要的文件
RAID2 采用纠错海明码的磁盘阵列 采用了海明码纠错技术,用户需增加校验盘来提供单纠错和双验错功能。适合大数据量不适合小数据。
RAID3和RAID4 采用奇偶校验码的磁盘阵列 把奇偶校验码存放在一个独立的校验盘上。RAID 3 采用位交叉奇偶校验码,RAID 4 采用块交叉奇偶校验码。RAID 3 适用于大型文件且 I/O 需求不频繁的应用,RAID4适用于大型文件的读取。
RAID5 奇偶校验码磁盘阵列 没有独立的校验盘,校验信息分布在组内所有盘上,对于大批量和小批量数据的读写性能都很好。利用率为n-1/n
RAID6 具有独立的数据硬盘与两个独立的分布式校验方案 在 RAID 6 级的阵列中设置了一个专用的、可快速访问的异步校验盘。该盘具有独立的数据访问通路,但其性能改进有限,价格却很昂贵。利用率为n-2/n。
RAID10 高可靠性与高性能的组合 建立在 RAID 0 和 RAID 1 基础上。RAID 1 是一个冗余的备份阵列,而 RAID 0 是负责数据读写的阵列,因此又称为 RAID 0+1。由于利用了 RAID 0 极高的读写效率和 RAID 1 较高的数据保护和恢复能力,使 RAID 10成为了一种性价比较高的等级。

例题:

页式存储:页式存储:将程序与内存划分成同样大小的块,以页为单位将程序调入内存。

优点:利用率高,碎片小,分配及管理简单 缺点:增加了系统开销,可能产生抖动现象

例题:

例题:

答案是:C、D。解析:第一空求出逻辑页,然后对照A页表。第二个空物理页8共享。

页面淘汰算法例题:

淘汰原则优先级:

  1. 首先淘汰未被访问过的页面(局部性原理)

  2. 当都被访问过时,应淘汰未修改的过的页面

  3. 未修改的页面与辅存内容一致,所以代价较小

所以选择3页面号

段式存储:分段式存储管理系统中,为每个段分配一个连续的分区,而进程中的各个段可以离散地分配到主存的不同分段中。在系统中为每个进程建立一张段映射表,简称为"段表"。每个段在表中占有一个表项,在其中记录了该段在主存中的起始地址(又称为"基址")和段的长度。进程在执行时,通过查段表来找到每个段所对应的主存区。

分段存储管理:

① 逻辑地址=段号+偏移量(段内地址)

② 段号和段表长度比较,看是否越界

③ 段表的段表起始地址找到段号

④ 段长和段内偏移量第二次比较---是否越界

⑤ 找到基址用基址+偏移量=物理地址的位置

例题:

段页式存储管理

基本原理:是段式和页式的结合体,先将用户程序分成若干段,再把每个段分成若干页,并为每个段赋予一个段名。每个页的大小相同,但是每个段的大小不同。

地址结构:段号+段内页号+页内地址

优点:空间浪费小,存储共享容易,存储保护容易、能动态连接

缺点:由于管理软件的增加、复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降。

段页式管理:

① 逻辑地址:段号+页号+页内地址

② 段号----在段表寄存器中找到段表段表长度,比较判断是否越界。

③ 然后找到段表的始址比较并找到相应的位置

④ 通过读取段表找到页表的始址

⑤ 用页号和页表长度做判断看是否越界

⑥ 页号在页表中的位置,然后读出块的地址

⑦ 块的地址+页内地址=物理地址

例题:

3、总线

总线(Bus)是指计算机部件间遵循某一特定协议实现数据交换的形式,即以一种特定格式按照规定的控制逻辑实现部件间的数据传输。按照总线在计算机中所处的位置划分为内总线、系统总线和外部总线:

(1) 内总线用于各类芯片内部互连,也可称为片上总线(On-Chip Bus)或片内总线.

(2) 系统总线是指计算机中CPU、主存、 I/O 接口的总线。

(3) 外部总线是计算机板和外部设备之间,或者计算机系统之间互联的总线,又称为通信总线。

总线的性能指标常见的有总线带宽、总线服务质量QoS、总线时延和总线抖动等。

计算机总线存在许多种类,常见的有并行总线和串行总线。并行总线主要包括PCI,PCIe fn ATA(IDE )等, 串行总线主要包括USB, SATA, CAN、 RS-232、 RS-485, RapidIO和以太网等。

4、接口

接口是指同一计算机不同功能层之间的通信规则。显示类接口(HDMI, DVI和VGA等),音频输入输出类接口 (TRS , RCA、 XLR 等),网络类接口(RJ45, FC 等) ,PS/2 接口 ,USB 接口, SATA 接口, LPT 打印接口和RS-232 接口等。

5、外部设备

常见的外部设备包括键盘、鼠标、显示器、扫描仪、摄像头、麦克风、打印机、光驱、各型网卡和各型存储卡/盘等。在移动和穿戴设备中,常见的包括加速计、GPS、陀螺仪、感光设备和指纹识别设备等。在工业控制、航空航天和医疗等领域,还存在更多种类的外部设备,例如测温仪、测速仪、轨迹球、各型操作面板、红外/NIFC 等感应设备、各种场强测量设备、功率驱动装置、各型机械臂、各型液压装置、油门杆和驾驶杆,等等。

三、计算机软件

1、软件系统

软件系统是指在计算机硬件系统上运行的程序、相关的文档资料和数据的集合。计算机软件用来扩充计算机系统的功能,提高计算机系统的效率。按照软件所起的作用和需要的运行环境的不同,通常将计算机软件分为系统软件和应用软件两大类。

系统软件是为整个计算机系统配置的不依赖特定应用领域的通用软件。这些软件对计算机系统的硬件和软件资源进行控制和管理,并为用户使用和其他应用软件的运行提供服务。

应用软件是指为某类应用需要或解决某个特定问题而设计的软件,如图形图像处理软件、财务软件、游戏软件和各种软件包等。

2、操作系统

1、操作系统组成:操作系统由操作系统内核(Kernel)和其他许多附加的配套软件所组成,包括图形用户界面程序、常用的应用程序等以及为支持应用软件开发和运行的各种软件构件(如应用框架、编译器和程序库等)。 操作系统内核指的是能提供进程管理(任务管理)、存储管理、文件管理和设备管理等功能那些软件模块,它们是操作系统中最基本的部分,用于为众多应用程序访问计算机硬件提供服务。内核驻留在内存中,它以CPU的最高优先级运行,能执行指令系统中的特权指令,具有直接访问各种外设和全部主存空间的特权,负责对系统资源进行管理和分配。

2、操作系统的作用

(1)管理计算机中运行的程序和分配各种软硬件资源。

(2)为用户提供友善的人机界面。

(3)为应用程序的开发和运行提供一个高效率的平台。操作系统还具有辅导用户操作(帮助功能)、处理软硬件错误、监控系统性能、保护系统安全等许多作用。

3、操作系统的特征

(1) 并发性:在多道程序环境下,并发性是指在一段时间内,宏观上有多个程序同时运行,但实际上在单CPU的运行环境,每一个时刻只有一个程序在执行。

(2) 共享性:共享是指操作系统中的资源被多个并发执行的进程共同使用,而不是被一个进程所独占。

(3) 虚拟性:是指把一个物理实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术。

(4) 不确定性:是指在多道程序环境中,允许多个进程并发执行,但由于资源有限,在多数情况下进程的执行不是一贯到底的,而是"走走停停"。

4、操作系统的分类

(1)批处理操作系统:分为单道批处理和多道批处理。

· 单道批处理:用户可以向系统提交多个作业,一次只有一个作业装入内存执行。一个结束另一个开始。

· 多道批处理:允许一次多个作业装入内存执行,在任意一个时刻,作业都处于开始点和终止点之间。多道批处理系统主要有3个特点: 多道、宏观上并行运行和微观上串行运行

(2)分时操作系统:是将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务。分时系统主要有4个特点:多路性、独立性、交互性和及时性。

(3)实时操作系统:分为实时控制系统和实时信息系统。实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。实时系统对交互能力要求不高,但要求可靠性有保障。

(4)网络操作系统:方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合。网络操作系统的特征包括硬件独立性和多用户支持等。硬件独立性是指网络操作系统可以运行在不同的网络硬件上,可以通过网桥或路由器与其他网络连接; 多用户支持,应能同时支持多个用户对网络的访问,应对信息资源提供完全的安全和保护功能;

(5)分布式操作系统:由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息。是网络操作系统的更高级形式,它保持网络系统所拥有的全部功能,同时又有透明性、可靠性和高性能等特性。

(6)微型计算机操作系统:微型计算机操作系统简称微机操作系统,常用的有Windows、 Mac OS、Linux。

(7)嵌入式操作系统:嵌入式操作系统运行在嵌入式智能设备环境中,对整个智能硬件以及它所操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制,其主要特点如下:

· 微型化 :从性能和成本角度考虑,希望占用的资源和系统代码量少,如内存少、字长短运行速度有限、能源少(用微小型电池) 。

· 可定制 :从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构与功能上的配置,以满足不同应用需要。

· 实时性 :嵌入式操作系统主要应用于过程控制、数据采集、传输通信、多媒体信息及关键要害领域需要迅速响应的场合,所以对实时性要求较高。

· 可靠性 :系统构件、模块和体系结构必须达到应有的可靠性,对关键要害应用还要提供容错和防故障措施。

· 易移植性:为了提高系统的易移植性,通常采用硬件抽象层(Hardware Abstraction Level,HAL)和板级支撑包(Board Support Package,BSP )的底层设计技术。

5、进程

进程有3种状态:

  • 高级调度(作业调度)批处理系统有作业调度因为作业进入时候先驻留外存进入内存需要作业调度。分时和实时操作系统不需要。

  • 中级调度(内存到外存兑换挂起五态模型)

  • 低级调度(进程调度)三种状态

例题:

6、信号量

1、基本概念 进程间两种形式的制约关系:

(1)间接相互制约关系:源于资源共享(临界资源)

(2)直接相互制约关系:源于进程合作(进程之间的顺序或逻辑关系)

临界资源:把一段时间内只允许一个进程访问的资源称为临界资源或独占资源所以进程间需要互斥地访问共享的资源,如打印机

2、信号量的应用 信号量:用来管理公用资源的有效手段,是一种特殊的变量,是一个整数,当信号量大于等于0时候,代表可供并发的进程使用的资源数量,当信号量小于0时,代表处于阻塞状态的个数。在java的实现中可以理解为对象锁lock。

  • 利用信号量进行进程互斥

  • 利用信号量进行进程同步

  • 利用信号量进行进程前驱关系

互斥:同类资源的竞争关系;同步:速度有差异,一定情况下停下等待,进程间的协作关系.

互斥

  1. P操作是先加锁申请资源,然后自减1,判断信号量是否小于0(阻塞的操作)

  2. V操作是释放资源,增量操作S=S+1,然后唤醒阻塞列表的等待进程。

  3. PV操作必须成对出现,但是没有严格的先后顺序。

例题:

同步

  • 运行条件不满足时,能让进程暂停(在关键操作之前执行P操作)

  • 运行条件满足时,能让进程继续(在关键操作之后执行V操作)

例题:

前驱

前驱图是一个有向无循环图,由节点和有向边组成,节点代表各程序段的操作,而节点间的有向边表示两个程序段操作之间存在的前趋关系。

用于这种图可以描述多个程序或进程之间的执行顺序关系。

例题:

死锁产生的四个必要条件

① 保持和等待:一进程在请求新的资源的同时,保持对已分配资源的占用。

② 不可剥夺:进程已经获得的资源,在未使用前不能被剥夺,只能使用完成自己释放。

③ 环路等待:发生死锁时,必然存在一个进程,资源的环形链。

④ 互斥:临界资源的访问,即一段时间内某个资源只有一个进程占用,如果此时还有其他进程请求该资源,则请求者只能等待,直到占有该资源的进程完全释放。

例题:

以上题目也可以理解为:3个进程中任意一个运行达到条件5R都可以不发生死锁,所以是3*4R+1=13R

3、数据库

数据库(DataBase,DB)是指长期存储在计算机内、有组织的、统一管理的相关数据的集合。早期数据库种类有3种,分别是层次式数据库、网络式数据库和关系型数据库。目前最常见的数据库种类是关系型数据库和非关系型数据库。根据数据库存储体系分类,还可分为关系型数据库、键值(Key-Value)数据库、列存储数据库、文档数据库和搜索引擎数据库等类型。

1、关系型数据库 --二维表(如:MySQL、Oracle)

2、键值数据库--将数据存储为键值对集合,其中键作为唯一标识符。(如:Redis)

3、列存储数据库--表中数据的存储形式的为列。

4、文档数据库 --可存放并获取文档,可以是XML. JSON. BSON 等格式。(如:MongoDB)

5、搜索引擎数据库是应用在搜索引擎领域的数据存储形式,由于搜索引擎会爬取大量的数据,并以特定的格式进行存储,这样在检索的时候才能保证性能最优。(如:Elasticsearch)

4、文件

文件(File)是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。文件系统是操作系统中实现文件统一管理的一组软件和相关数据的集合,是专门负责管理和存取文件信息的软件机构。 文件的结构和组织:

(1)文件的逻辑结构:文件的结构是指文件的组织形式。从用户角度看到的文件组织形式称为文件的逻辑结构,文件系统的用户只要知道所需文件的文件名就可以存取文件中的信息,而无须知道这些文件究竟存放在什么地方。为两大类:一是有结构的记录式文件,它是由一个以上的记录构成的文件;二是无结构的流式文件,它是由一串顺序字符流构成的文件。

(2)文件的物理结构:从实现的角度看,文件在文件存储器上的存放方式称为文件的物理结构。

(3)连续结构:也称顺序结构,它将逻辑上连续的文件信息(如记录)依次存放在连续编号的物理块上。只要知道文件的起始物理块号和文件的长度,就可以很方便地进行文件的存取。

(4)链接结构:也称串联结构,它是将逻辑上连续的文件信息(如记录)存放在不连续的物理块上,每个物理块设有一个指针指向下一个物理块。因此,只要知道文件的第1个物理块号,就可以按链指针查找整个文件。

(5)索引结构:在采用索引结构时,将逻辑上连续的文件信息(如记录)存放在不连续的物理块中,系统为每个文件建立一张索引表。索引表记录了文件信息所在的逻辑块号对应的物理块号,并将索引表的起始地址放在与文件对应的文件目录项中。

(6)多个物理块的索引表:索引表是在文件创建时由系统自动建立的,并与文件一起存放在同一文件卷上。根据一个文件大小的不同,其索引表占用物理块的个数不等,一般占一个或几个物理块。多个物理块的索引表可以有两种组织方式:链接文件和多重索引方式。

5、文件存储管理

标准的索引节点(0-12)如果题目有明确的就按题目中规定的

索引分配:使得文件的存储容量增加。包括单级索引、多级索引和混合索引。

· 0-9位直接物理盘块

· 10号存物理盘块的地址索引内容

例题:

6、文件系统

(1)文件的存取方法

文件的存取方法是指读/写文件存储器上的一个物理块的方法。通常有顺序存取和随机存取两种方法:

  • 顺序存取方法:对文件中的信息按顺序依次进行读/写;

  • 随机存取方法:对文件中的信息可以按任意的次序随机地读/写。

(2)文件存储空间的管理

常用的空闲空间管理方法有空闲区表、位示图和空闲块链3种。

(1)空闲区表。将外存空间上的一个连续的未分配区域称为"空闲区"。适用于连续文件结构。

(2)位示图。这种方法是在外存上建立一张位示图(Bitmap),记录文件存储器的使用情况。每一位对应文件存储器上的一个物理块,取值0空闲和1占用。

例题:

(3)空闲块链。每个空闲物理块中有指向下一个空闲物理块的指针,所有空闲物理块构成一个链表,链表的头指针放在文件存储器的特定位置上(如管理块中),不需要磁盘分配表,节省空间。每次申请空闲物理块只需根据链表的头指针取出第1个空闲物理块,根据第一个空闲物理块的指针可找到第2个空闲物理块,依此类推。

(4)成组链接法。UNIX系统采用该方法。例如,在实现时系统将空闲块分成若干组,每100个空闲块为一组,每组的第1个空闲块登记了下一组空闲块的物理盘块号和空闲块总数。假如某个组的第1个空闲块号等于0,意味着该组是最后一组,无下一组空闲块。

(3)文件共享和保护

1、文件共享是指不同用户进程使用同一文件,它不仅是不同用户完成同一任务所必须的功能,还可以节省大量的主存空间,减少由于文件复制而增加的访问外存次数。

(1)硬链接。文件的硬链接是指两个文件目录表目指向同一个索引结点的链接,该链接也称基于索引结点的链接。换句话说,硬链接是指不同文件名与同一个文件实体的链接。

(2)符号链接。符号链接建立新的文件或目录,并与原来文件或目录的路径名进行映射,当访问一个符号链接时,系统通过该映射找到原文件的路径,并对其进行访问。

(4)文件的保护

文件系统对文件的保护常采用存取控制的方式进行。所谓存取控制,就是规定不同的用户对文件的访问有不同的权限,以防止文件被未经文件主同意的用户访问。

① 存取控制矩阵。按个人划分权限。但是太大。

② 存取控制表。按用户分类做权限控制。

③ 用户权限表。改进存取控制矩阵的另一种方法是以用户或用户组为单位将用户可存取的文件集中起来存入表中,这称为用户权限表。

④ 密码。在创建文件时,由用户提供一个密码,在文件存入磁盘时用该密码对文件的内容加密。

(5)文件路径

文件树形: R:只读文件属性 A:存档属性 S:系统文件 H:隐藏文件

绝对路径:从盘符开始的路径 相对路径:是从当前路径开始的路径

例题:若当前为D1,求F2的路径 绝对路径为:/D1/W2/F2 相对路径为:W2/F2

(6)输入和输出

7、中间件

中间件处在操作系统、网络和数据库之上, 网络、数据库应用软件的下层。按照中间件在分布式系统中承担的职责不同,可以划分以下几类中间件产品:

①通信处理(消息)中间件:建网和制定出通信协议,以保证系统能在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输

②事务处理(交易)中间件:大量事务在多台应用服务器上能实时并发运行,并进行负载平衡的调度,实现与昂贵的可靠性机和大型计算机系统的同等功能

③数据存取管理中间件:为在网络上虚拟缓冲存取、格式转换、解压等带来方便

④Web服务器中间件

⑤安全中间件

⑥跨平台和架构的中间件

⑦专用平台中间件

⑧网络中间件:它包括网管、接入、网络测试、虚拟社区和虚拟缓冲等

8、软件构件

构件又称为组件,是一个自包容、可复用的程序集。构件是一个程序集,或者说是一组程序的集合。这个集合可能会以各种方式体现出来,如源程序或二进制的代码。这个集合整体向外提供统一的访问接口,构件外部只能通过接口来访问构件,而不能直接操作构件的内部。构件的两个最重要的特性是自包容与可重用。

构件是独立的、自包容的,因此架构的开发也是独立的,构件之间通过接口相互协作。

构件组装模型的优点如下:构件的自包容性让系统的扩展变得更加容易;设计良好的构件更容易被重用,降低软件开发成本;构件的粒度较整个系统更小,因此安排开发任务更加灵活,可以将开发团队分成若干组,并行地独立开发构件。

构件组装模型也有明显的缺点:对构件的设计需要经验丰富的架构设计师,设计不良的构件难以实现构件的优点,降低构件组装模型的重用度;在考虑软件的重用度时,往往会对其他方面做出让步,如性能等;使用构件组装应用程序时,要求程序员能熟练地掌握构件,增加了研发人员的学习成本;第三方构件库的质量会最终影响到软件的质量,而第三方构件库的质量往往是开发团队难以控制的。

主流的商用构件标准规范包括对象管理组织(Object Management Group,OMG)的CORBA、Sun的J2EE和Microsoft的DNA。

1、公共对象请求代理架构(Common Object Request Broker Architecture,CORBA)主要分为3个层次:对象请求代理公共对象服务公共设施 。最底层的对象请求代理 (Object Request Broker,ORB)规定了分布对象的定义(接口)和语言映射,实现对象间的通信和互操作,是分布对象系统中的"软总线";在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务;最上层的公共设施则定义了构件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。

CORBA CCM(CORBA Component Model)构件模型是OMG组织制定的一个用于开发和配置分布式应用的服务器端构件模型规范,它主要包括如下3项内容:

①抽象构件模型:用以描述服务器端构件结构及构件间互操作的结构。

②构件容器结构:用以提供通用的构件运行和管理环境,并支持对安全、事务、持久状态等系统服务的集成。

③构件的配置和打包规范:CCM使用打包技术来管理构件的二进制、多语言版本的可执行代码和配置信息,并制定了构件包的具体内容和文档内容标准。

2、J2EE。EJB的Bean可以分为会话Bean实体Bean,前者维护会话,后者处理事务,通常由Servlet负责与客户端通信,访问EJB,并把结果通过JSP产生页面传回客户端。

四、嵌入式系统及软件

嵌入式系统(Embedded System)是为了特定应用而专门构建且将信息处理过程和物理过程紧密结合为一体的专用计算机系统。它对功能、可靠性、成本、体积、功耗、环境等综合性能要求严格。

嵌入式软件是指可运行在嵌入式系统中的程序代码和帮助这些软件开发所用的工具或环境软件的总称。

1、嵌入式系统的组成

(1) 嵌入式处理器;

(2) 相关支撑硬件;

(3) 嵌入式操作系统;

(4) 支撑软件;

(5) 应用软件

2、嵌入式系统的特点

①专用性强。面向特定应用需求;

②技术融合;

③软硬一体软件为主;

④比通用计算机资源少。由于嵌入式系统通常只完成少数几个任务。设计时考虑到其经济性,不能使用通用CPU,这就意味着管理的资源少,成本低,结构更简单;

⑤程序代码固化在非易失存储器中。为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存在磁盘中;

⑥需专门开发工具和环境。嵌入式系统本身不具备开发能力,即使设计完成以后,用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发;

⑦体积小、价格低、工艺先进、性能价格比高、系统配置要求低、实时性强;

⑧对安全性和可靠性的要求高。

3、嵌入式系统的分类

根据不同用途可将嵌入式系统划分为:

  • 嵌入式实时系统

    ① 强实时(Hard Real-Time)系统

    ② 弱实时(WeakReal-Time)系统

  • 嵌入式非实时系统

从安全性要求,嵌入式系统可分为:

① 安全攸关系统(Safety-Critical或 Life-Critical)

② 非安全攸关系统

(1) 实时系统(Real-Time System ,RTS)。实时系统是指能够在指定或者确定的时间内完成系统功能和外部或内部、同步或异步时间做出响应的系统。也就是说,系统计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统错误。

(2)安全枚关系统(Safety-Critical System)。安全枚关系统也称为安全关键系统或者安全 。生命关键系统(Life -Critical System),是指其不正确的功能或者失效会导致人员伤亡、财产损失等严重后果的计算机系统。

4、嵌入式软件的组成

嵌入式系统软件组成架构采用层次化结构,并且具备可配置、可剪裁能力。从现代嵌入式系统观看,把嵌入式系统分为硬件层、抽象层、操作系统层、中间件层和应用层。

(1 ) 硬件层。硬件层主要是为嵌入式系统提供运行支撑的硬件环境,其核心是微处理器、存储器(ROM 、 SDRAM 、 Flash 等)I/O接口(A /D . D/A 、 I/O 等)和通用设备以及总线、电源、时钟等。

(2 ) 抽象层。在硬件层和软件层之间为抽象层,主要实现对硬件层的硬件进行抽象(HAL),为上层应用(操作系统)提供虚拟的硬件资源;板级支持包(BSP)是一种硬件驱动软件,它是面向硬件层的硬件芯片或电路进行驱动,为上层操作系统提供对硬件进行管理的支持

(3 ) 操作系统层。操作系统层主要由嵌入式操作系统、文件系统、图形用户接口、网络系统和通用组件等可配置模块组成。

(4)中间件层

(5)应用层

5、嵌入式软件特点

① 可剪裁性。嵌入式软件能够根据系统功能需求,通过工具进行适应性功能的加或减,删除掉系统不需要的软件模块,使得系统更加紧凑。

② 可配置性。嵌入式软件需要具备根据系统运行功能或性能需要而被配置的能力,使得嵌入式软件能够根据系统的不同状态、不同容量和不同流程,对软件工作状况进行能力的扩展、变更和增量服务。

③ 强实时性。嵌入式系统中的大多数都属于强实时性系统,要求任务必须在规定的时限(Deadline )内处理完成,因此,嵌入式软件采用的算法优劣是影响实时性的主要原因。

④ 安全性(Safety)。安全性是指系统在规定的条件下和规定的时间内不发生事故的能力。

⑤ 可靠性。可靠性是指系统在规定的条件下和规定的时间周期内程序执行所要求的功能的能力。

⑥ 高确定性。预先设计规划好的,其行为不能随时间、状态的变迁而变化。

6、安全攸关软件的安全性设计

美国电气和电子工程协会(IEEE)将安全攸关软件定义为:"用于一个系统中,可能导致不可接受的风险的软件"。在航空航天、轨道交通和核工业等领域中,其系统的安全性保障是至关重要的是DO-178B标准。目标、过程和数据三个因素是DO-178B的精髓,它贯穿在整个软件生命周期各个过程之中。

1、目标

等级 失效状态 简要说明 目标数量
A级 灾难性的 软件异常会导致的后果是:航空器无法安全飞行和着陆 66
B级 危害性的 软件异常会导致的后果是:严重降低了航空器或机组在克服不利运行情况时的能力 65
C级 严重的 软件异常会导致的后果是:显著降低了航空器或机组在克服不利运行情况时的能力 56
D级 不严重的 软件异常会导致的后果是:轻微降低了航空器或机组在克服不利运行情况时的能力 28
E级 没有影响的 软件异常会导致的后果是:不会影响航空器或机组任何能力 0

2、过程。DO-178B标准把软件生命周期分为"软件计划过程""软件开发过程"和"软件综合过程",其中软件开发过程和软件综合过程又分别被细分成4个子过程。

软件开发过程包括:软件需求过程、软件设计过程、软件编码过程和集成过程4个子过程。

软件综合过程包括:软件验证过程、软件配置管理过程、软件质量保证过程、审定联络过程4个子过程。

3、数据。DO-178B把软件生命周期中产生的文档、代码、报表、记录等所有产品统称为软件生命周期数据。

五、计算机网络

1、计算机网络的功能

1.数据通信;

2.资源共享;

3.管理集中化;

4.实现分布式处理;

5.负载均衡

2、网络有关指标

(1)性能指标

① 速率。网络速率指的是连接在计算机网络上的主机或通信设备在数字信道上传送数据的速率,速率的单位是 b/s 。

② 带宽。"带宽"有两种不同的意义。指一个信号具有的频带宽度。如,在传统的通信线路上传送的电话信号的标准带宽是 3.1kHz。单位是赫兹。表示网络通信线路传送数据的能力,单位时间内从一个结点到另一个结点所能通过的"最高数据率"。

③ 吞吐量。表示单位时间内通过某个网络(或信道、接口)的数据量。吞吐量受网络的带宽或网络额定速率的限制。

④时延。时延是指数据(报文、分组)从网络(链路)的一端传送到另一端所需的时间。网络中的时延由以下部分组成:

  • 发送时延:又称为传输时延,指从数据块的第一个比特开始发送算起,到最后一个比特发送完毕所需的时间。

  • 传播时延:电或光信号在传输介质传播一定距离所花费的时间。

  • 处理时延:检查分组首部和决定将分组导向何处所需要的时间。

  • 排队时延:在队列中,分组在等待传输时,它经受排队时延。

⑤往返时间。往返时间(RTT)也是一个重要的网络性能指标,它表示从发送方发送数据开始,到发送方收到来自接收方的确认(接受方收到数据后便立即发送确认)总共经历的时间。

⑥利用率。利用率有信道利用率和网络利用率两种。信道利用率指信道被利用的概率(即有数据通过),通常以百分数表示。完全空闲的信道利用率是零。网络利用率是全网络的信道利用率的加权平均值。

(2)非性能指标

① 费用;

②质量;

③标准化;

④可靠性;

⑤ 可扩展性和可升级性;

⑥易管理和维护性。

3、通信技术

计算机网络是利用通信技术将数据从一个结点传送到另一结点的。通信技术是计算机网络的基础。信道可分为物理信道和逻辑信道:

  • 物理信道由传输介质和设备组成,根据传输介质的不同,分为有线信道和无线信道。

  • 逻辑信道是指在数据发送端和接收端之间存在的一条虚拟线路,可以是有连接的或无连接的。逻辑信道以物理信道为载体。

1.香农公式

信道容量就是信道的最大传输速率,可通过香农公式计算得到。

  • C代表信道容量,单位是 b/s

  • B代表信号带宽,单位是 Hz

  • S代表信号平均功率,单位是 W

  • N代表噪声平均功率,单位是 W

  • S/N代表信噪比,单位是 dB(分贝)

2.发信机进行的信号处理包括信源编码、信道编码、交织、脉冲成形和调制。相反地,收信机进行的信号处理包括解调、采样判决、去交织、信道译码和信源译码

1)信源编码

将模拟信号进行模数转换,再进行压缩编码(去除冗余信息),最后形成数字信号。例如GSM(全球移动通信系统)先通过PCM(脉冲编码调制)编码将模拟语音信号转化成二进制数字码流,再利用RPE-LPT(规则脉冲激励-长期预测编码)算法对其进行压缩。

2)信道编码

信道编码通过增加冗余信息以便在接收端进行检错和纠错,解决信道、噪声和干扰导致的误码问题,一般只能纠正零星的错误,对于连续的误码无能为力。

3)交织

为了解决连续误码导致的信道译码出错问题,通过交织将信道编码之后的数据顺序按照一定规律打乱,到了接收端在信道译码之前再通过交织将数据顺序复原,这样连续的误码到了接收端就变成了零星误码,信道译码就可以正确纠错了。

4)脉冲成形

为了减小带宽需求,需要将发送数据转换成合适的波形,这就是脉冲成形。矩形脉冲要求的信道会很宽,主要原因是矩形脉冲的竖边是垂直的,想要达到这一点要很高的频率,脉冲成形并不要求是垂直的,所以频率要求降低了。

5)调制

调制是将信息承载到满足信号要求的高频载波信号的过程。

3.复用技术和多址技术

1、复用技术是指在一条信道上同时传输多路数据的技术,如 TDM 时分复用、FDM 频分复用和 CDM 码分复用等。ADSL 使用了 FDM 的技术,语音的上行和下行占用了不同的带宽。

2、多址技术是指在一条线上同时传输多个用户数据的技术,在接收端把多个用户的数据分离(TDMA 时分多址、FDMA 频分多址和 CDMA 码分多址)。

4. 5G 通信网络

1)基于 OFDM 优化的波形和多址接入

2)实现可扩展的 OFDM 间隔参数配置

3)OFDM 加窗提高多路传输效率

4)灵活框架设计

5)大规模 MIMO(Multiple-Input Multiple-Output)

6)毫米波

7)频谱共享

8)先进的信道编码设计。

5.网络概论

网络通常按照网络的覆盖区域和通信介质等特征来分类,可分为局域网(LAN)、无线局域网(WLAN)、城域网(MAN)、广域网(WAN)和移动通信网等。

1、局域网(LAN)

局域网(Local Area Network,LAN)是指在有限地理范围内将若干计算机通过传输介质互联成的计算机组(即通信网络),通过网络软件实现计算机之间的文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。

局域网专用性非常强,具有比较稳定和规范的拓扑结构。常见的局域网拓扑结构有星状结构、树状结构、总线结构和环形结构。

①星型结构中,中心结点是控制中心,任意两个结点间的通信最多只需两步,传输速度快、网络构简单、建网容易、便于控制和管理。这种结构的缺点是可靠性低,网络共享能力差,并且一旦中心结点出现故障则导致全网瘫痪。

②树形结构网络成本低,结构简单,结点扩充方便、灵活,方便寻查链路路径。除叶结点及其相连的链路外,任何一个工作站或链路产生故障都会影响整个网络系统的正常运行。

③总线结构。总线结构网络是将各个结点设备和一根总线相连,网络中所有的结点设备都是通过总线进行信息传输的。在总线结构中,作为数据通信必经的总线的负载能力是有限度的,这是由通信媒体本身的物理性能决定的。总线作为连接各结点设备通信的枢纽,它的故障将影响总线上每个结点的通信。

④环形结构。将网络中各结点通过一条首尾相连的通信链路连接起来,形成一个闭合环形结构网。环形结构的网络中各结点设备的地位相同,信息按照固定方向单向流动,两个节点之间仅有一条通路,系统中无信道选择问题,任一结点的故障将导致物理瘫痪。由于环路是封闭的,所以环形结构的网络不便于扩充,系统响应延时长,且信息传输效率相对较低。

⑤网状结构。网状网络中的任何结点彼此之间均存在一条通信链路,任何结点故障不会影响其他结点之间的通信。但这种拓扑结构的网络布线较为烦琐,且建设成本高,控制方法复杂。

以太网技术 。以太网(Ethernet)是一种计算机局域网组网技术。IEEE制定的IEEE 802.3标准给出了以太网的技术标准。

(1)以太网结构

最大帧长为1518字节(最大的数据帧为1500字节),最小帧长为64字节,如果不足则需要加入填充位。

帧头设有32位用于进行CRC32校验,参与校验的是帧头中除前导字段和帧起始符之外的部分。

DMAC代表目的终端的MAC地址,SMAC代表源MAC地址,而Length/Type字段长度是2字节,若该字段的值大于1500,则代表该数据帧的类型(比如该帧是属于哪个上层协议的数据单元);若该字段的值小于1500,则代表该数据帧的长度。DATA/PAD代表具体数据,以太网数据帧的最小长度必须不小于64字节(根据半双工模式下最大距离计算获得的),如果数据长度加上帧头不足64字节,需要在数据部分增加填充内容。当Length/Type取值大于1500的时候,MAC子层可以根据Length/Type的值直接把数据帧提交给上层协议,由上层协议进行分帧处理。这种结构为当前较为流行的ETHERNET_II协议,大部分计算机都支持这种结构。FCS则是帧校验字段,用于判断该数据帧是否出错。

(2)最小帧长。由于CSMA/CD算法限制,以太网帧的最小长度为64字节。

(3)最大传输距离。以太网的最大传输距离没有严格限制,由线路质量、信号衰减程度等因素决定。

(4)流量控制。当通过交换机端口流量过大,超过了它的处理能力时,就会发生端口阻塞。

2、无线局域网(WLAN)

无线局域网是以无线通信为传输方式的局域网,是实现移动计算机网络的关键技术之一。

无线局域网以微波、激光与红外线等无线电波作为传输介质,来部分或全部代替传统局域网中的有线传输介质。架设无线局域网需要无线网卡和访问接入点AP。

与有线网络相比,无线局域网具有安装便捷、使用灵活、经济节约、易于扩展等优点。

3、广域网(WAN)

广域网是一种将分布于更广区域(如一个城市、一个国家甚至国家间)的计算机设备联接起来的网络。由通信子网与资源子网组成。

  • 通信子网由通信结点设备和连接这些设备的链路组成。

  • 资源子网主要指网络资源设备,如业务服务器、用户计算机、网络存储系统、网络上运行的各种软件资源、数据资源等。

广域网的特点:

主要提供面向数据通信的服务,支持用户使用计算机进行远距离的信息交换。

覆盖范围广,通信的距离远,广域网没有固定拓扑结构。由电信部门或公司负责组建、管理和维护,向全社会提供有偿服务。

4、城域网(MAN)

在单个城市范围内所建立的计算机通信网,覆盖范围介于局域网和广域网之间。

城域网的主要技术是DQDB(分布式队列双总线),即IEEE802.6。DQDB是由双总线构成的,所有的计算机都连接在上面。

5、移动通信网

移动通信技术经历了五个发展时期:

  1. 第一代移动通信系统是模拟通信,采用的是FDMA(频分多址)调制技术,其频谱利用率低;

  2. 第二代移动通信系统是数字通信系统,采用的是TDMA(时分多址)的数字调制方式,对系统的容量限制较大;

  3. 第三代移动通信技术(3G)则采用了CDMA(码分多址)数字调制技术,能够提供大容量、高质量、综合业务、软切换的要求;

  4. 第四代移动通信技术(4G)。包括TD-LTE和FDD-LTE两种制式。

  5. 第五代移动通信技术(5G)。

1)第五代移动通信(5G)

5G是具有高速率、低时延和大连接特点的新一代宽带移动通信技术,是实现人机物互联的网络基础设施。

与4G相比,5G可以提供小于1ms的端到端时延,以及99.9999%的可靠性,极大地丰富了网络应用场景。5G的三大类应用场景:

  • 增强移动宽带(eMBB),面向移动互联网流量爆炸式增长,为移动互联网用户提供更加极致的应用体验;

  • 超高可靠低时延通信(uRLLC),面向工业控制、远程医疗、自动驾驶等对时延和可靠性具有极高要求的垂直行业应用需求;

  • 海量机器类通信(mMTC),面向智慧城市、智能家居、环境监测等以传感和数据采集为目标的应用需求。

2)网络切片

5G网络切片可在同一物理网络基础设施上划分为多个逻辑独立的虚拟网络。每个网络切片都是一个隔离的端到端网络,包含自己独特的延迟、吞吐量、安全性和带宽特性,可以灵活应对不同的需求和服务。

4、网络协议

(1)开放系统互连模型(OSI七层模型,口诀:物数网传会表应)

1.网络设备及其工作层级

常见的网络互联设备有集线器、中继器、网桥、交换机、路由器和防火墙。

1)集线器

集线器是在物理层中最简单的网络设备。在集线器中,从一个端口收到的数据被转送到所有其他端口,无论与端口相连的系统是否准备好。集线器还有一个端口被指定为上联端口,用来将该集线器连接到其他集线器或路由设备等以便形成更大的网络。

2)中继器

中继器是局域网互连设备,工作于OSI体系结构的物理层,它接收并识别网络信号,然后再生信号,将其发送到网络的其他分支上。为了保证中继器正常工作,需要保证每一个分支中的数据包和逻辑链路协议相同。此外,中继器可以用来连接不同物理介质,并在各种物理介质中传输数据包。

3)网桥

网桥工作于OSI体系的数据链路层。OSI模型数据链路层以上各层的信息对网桥来说是透明的。网桥包含了中继器的功能和特性,不仅可以连接多种介质,还能连接不同的物理分支,如以太网、令牌网,能将数据包在更大的范围内进行传送。

4)交换机

交换机是一种工作在OSI七层协议中的数据链路层,为接入交换机的任意两个网络结点提供独享的转发通路,将从一个端口接收的数据通过内部处理转发到指定端口。交换机具备自动寻址和交换的功能,同时具有避免端口冲突、提高网络吞吐(Throughput)的能力。数据在网络中转发通常离不开交换机。人们日常使用的计算机通常就是通过交换机接入网络的。交换机功能包括:

① 集线功能。提供大量可供线缆连接的端口达到部署星状拓扑网络的目的。

② 中继功能。在转发帧时重新产生不失真的电信号。

③ 桥接功能。在内置的端口上使用相同的转发和过滤逻辑。

④ 隔离冲突域功能。将部署好的局域网分为多个冲突域,而每个冲突域都有自己独立的带宽,以提高交换机整体宽带利用效率。

基本交换原理:

① 转发路径学习。根据收到数据帧中的源MAC 地址建立该地址同交换机端口的映射, 写入MAC 地址表中。

② 数据转发。如果交换机根据数据帧中的目的MAC 地址在建立n好的 MAC 地址表中查询到了,就向对应端口进行转发。

③ 数据泛洪。如果数据帧中的目的MAC 地址不在MAC 地址表中,则向所有端口转发,也就是泛洪。广播帧和组播帧向所有端口(不包括源端口)进行转发。

④ 链路地址更新。MAC 地址表会每隔一定时间(如300s)更新一次。

交换机协议:

在交换机组网中,为保证链路的可靠性通常会采用一条以上的物理链路来连接设备,因此,如果在一个交换网络中两台设备之间连接多条链路时就会产生环路。而环路的出现会导致数据转发异常,影响交换机的正常工作。而生成树协议(STP)就可以很好解决链路环路问题。另外,为提高链路可靠性,或提升与邻接交换设备之间端口带宽,可采用链路聚合协议,如802.3ad。

5)路由器

路由器工作在OSI体系结构中的网络层,它可以在多个网络上交换和路由数据包。路由器可通过在相互独立网络中交换路由信息以生成路由表来达到数据包的路径选择。路由表包含网络地址,连接信息、路径信息和发送代价等属性。路由器通常用于广域网或广域网与局域网的互连。

路由技术:

路由器工作在OSI体系结构中的网络层,它可以在多个网络上交换和路由数据包。路由器会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。路由表包含网络目的地址、端口、下一跳地址和发送代价等属性。路由器通常用于广域网或广域网与局域网的互连。

内部网关协议(IGP)

① RIP-1、RIP-2(路由信息协议) 基于距离矢量算法的路由协议,利用跳数来作为计量标准。

② IGRP (内部网关路由协议)距离矢量算法,思科的专有协议

③ EIGRP(增强型 IGRP)当拓扑结构变化时才发送路由更新

④ IS-IS(中间系统到中间系统)基于链路状态路由协议

⑤ OSPF(开放式最短路径优先)属于链路状态路由协议。提出了区域(area)的概念

外部网关协议(EGP)目前使用的是BGP协议。

6)防火墙(Firewall)

防火墙硬件是网络层中一种重要设备,它通常作为网络的门户,为网络的安全运行提供保障。通过在防火墙设置若干安全规则实现对进出网络的数据进行监视和过滤。

在网络中通常采用硬件防火墙。硬件防火墙是指把防火墙程序做到芯片里面,由硬件执行这些功能,能减少CPU的负担,使路由更稳定。它的安全和稳定,直接关系到整个网络的安全。

(2)TCP/IP协议(4层:应用层、传输层、网络层、网络接口层)

(3)IPv6

与IPv4相比,IPv6的优势:

地址空间 - 有更大的地址空间,扩大了2的96次方倍。IPv6为128位。
报文头部格式 - 灵活的IP报文头部格式。且做到了简化报文格式。
服务类型 - 支持更多的服务类型。
协议演变 - 允许协议继续演变,增加新的功能,使之适应未来技术的发展。
安全性 - 具有更高的安全性,身份认证和隐私权是IPv6的关键特性。Ipsec是强制的。

IPv4/IPv6 过渡技术有:

(1)双协议栈技术:双栈技术通过节点对 IPv4 和 IPv6 双协议栈的支持,从而支持两种业务的共存。

(2)隧道技术:隧道技术通过在 IPv4 网络中部署隧道,实现在 IPv4 网络上对 IPv6 业务的承载,保证业务的共存和过渡。具体的隧道技术包括:6to4 隧道;6over4 隧道;ISATAP 隧道。

(3)NAT-PT 技术:NAT - PT 使用网关设备连接 IPv6 和 IPv4 网络。当 IPv4 和 IPv6节点互相访问时,NAT - PT 网关实现两种协议的转换翻译和地址的映射。

IPV6压缩0问题:

IPV6下一代IP地址,共128位,以16位为一段,共为8段,每段的16位转换为一个4位的十六进制数,每段之间用":"分开。

例如,2001:0da8:d001:0001:0000:0000:0000:0001,还可以表示为:2001:da8:d001:1:0:0:1与2001:da8:d001:1::1

IPV6地址的压缩0处理问题,只能出现一次两个以上的冒号情况。

规则:

  1. 高位0可省略很多次。

  2. 中间段的0可以用一个0表示多次。

  3. 连续多段0用::代替一次。

  4. 只能出现一次两个以上的冒号情况。

主要目的是区分多段同时简化操作。

IPV6地址类型:

IPV6有三种地址类型分别为单播、多播(组播)、任意播

① 单播:单播地址唯一标识一个IPV6节点的接口,用单个接口的标识符,通常位点对点通信。

② 多播(组播):一对多的通信,标识一组IPV6节点的接口,多播前缀为11111111

③ 任意播:指派多个节点的接口,发送往任意播的数据报只会传递给其中一个接口,一般为最近的接口;任意播前缀固定,其余位置为0。

可聚合全球单播地址:前缀为001

本地单播地址:

  • 链路本地:前缀为1111111010

  • 站点本地:前缀为1111111011

(4)协议及端口号

(5)DNS

1.DNS域名系统服务器在名称解析中的正确顺序

(1)浏览器输入域名

解析顺序为:HOSTS文件 → 本地DNS缓存 → 本地DNS服务器 → 根域名服务器 → 顶级域名服务器 → 权限域名服务器。

(2)主域名服务器输入域名请求

解析顺序为:本地缓存记录 → 区域记录 → 转发域名服务器 → 根域名服务器。

2.迭代查询与递归查询

  • 迭代查询:服务器收到一次查询就返回一次结果,且这个结果不一定是目标IP与域名的映射。

  • 递归查询:服务器必须回答目标IP与域名的映射关系。

例题:

5、网络工程

网络建设工程可分为网络规划、网络设计和网络实施三个环节。

  1. 网络规划:包括网络需求分析、可行性分析以及对现有网络的分析(需对现有网络进行优化升级时)。

  2. 网络设计:是在网络规划基础上设计一个能解决用户问题的方案。网络设计包括网络总体目标确定、总体设计原则确定以及通信子网设计,设备选型,网络安全设计等。

  3. 网络实施:是依据网络设计结果进行设备采购、安装、调试和系统切换(改造升级时)等。网络实施包括工程实施计划、网络设备验收、设备安装和调试、系统试运行和切换、用户培训等。

6、网络规划设计

逻辑结构设计

在逻辑网络设计阶段,需要描述满足用户需求的网络行为及性能,详细说明数据是如何在网络上传输的,此阶段不涉及网络元素的具体物理位置。

此阶段最后应该得到一份逻辑网络设计文档,输出的内容包括以下几点:

① 逻辑网络设计图;

② IP 地址方案;

③ 安全方案;

④ 具体的软件、硬件、广域网连接设备和基本的服务;

⑤ 雇佣和培训新网络员工的具体说明;

⑥ 初步对软件、硬件、服务、网络雇佣员工和培训的费用估计。

物理结构设计

物理网络设计是对逻辑网络设计的物理实现,通过对设备的具体物理分布、运行环境等的确定,确保网络的物理连接符合逻辑连接的要求。在这一阶段,网络设计者需要确定具体的软硬件、连接设备、布线和服务。

如何购买和安装设备,由网络物理结构这一阶段的输出作指导,所以网络物理设计文档必须尽可能详细、清晰,输出的内容如下:

① 物理网络图和布线方案;

② 设备和部件的详细列表清单;

③ 软件、硬件和安装费用的估计;

④ 安装日程表,用以详细说明实际和服务中断的时间及期限;

⑤ 安装后的测试计划;

⑥ 用户培训计划。

分层设计

核心层----主要是高速数据交换,高速数据传输、出口路由,常用冗余机制

汇聚层----主要是网络访问策略路由控制、数据包处理和过滤、寻址、策略路由、广播域定义 等功能。

接入层----主要是用户接入、计费管理、MAC地址认证或过滤、收集用户信息

网络冗余设计

网络冗余设计的目的就是避免网络组件单点失效造成应用失效;有两种方式一个是备用路径;一个是负载分担。

  • 备用路径是在主路径失效时启用,其和主路径承担不同的网络负载:

  • 负载分担是网络冗余设计中的一种设计方式,其通过并行链路提供流量分担来提高性能;网络中存在备用链路时,可以考虑加入负载分担设计来减轻主路径负担。

六、计算机语言

1、计算机语言的分类

计算机语言分成机器语言、汇编语言和高级语言三大类,

  1. 机器语言

    机器语言是用二进制代码表示的,计算机能直接识别和执行的语言,由操作码和操作数两部分组成。

    优点是可以被计算机直接理解和执行,执行速度快、占用内存少。

    缺点是难于记忆、编程困难、可读性差。机器语言是面向机器的可移植性极差。

  2. 汇编语言

    汇编语言是用助记符来表示各个基本操作的程序设计语言。如用 ADD 表示加法操作,MOV 表示数据传递等。汇编语言大大减少了程序编写、阅读、修改方面的工作量,但汇编语言也是一种面向机器的语言,计算机不能直接执行,通用性和可移植性差,必须经过汇编程序翻译成机器语言程序后才能在计算机上执行,需要程序员对计算机内部结构非常了解。

  3. 高级语言

    高级语言是一种用接近自然语言和数学语言的语法、符号描述基本操作的程序设计语言。简单易学、编程效率高、可移植性好。但需用专门的翻译程序将其转换成机器语言程序后才能执行。高级语言种类繁多,风格迥异,各有所长。常见的高级语言有 C、C++、Visual Basic、Java、JSP、PHP、C#、Python等。

2、UML(统一建模语言)是一个支持模型化和软件系统开发的图形化语言,UML 是面向对象设计的建模工具,独立于任何具体程序设计语言。它不仅支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。

UML 成为 "标准" 建模语言的原因之一在于与程序设计语言无关。其中关系:

依赖关系:依赖是两个事物间的语义关系,其中一个事物 (独立事物) 发生变化会影响另一个事物 (依赖事物) 的语义。

实现关系:是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。两种情况下会使用实现关系:一种是在接口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。

关联关系:是一种结构关系,它描述了一组链,链是对象之间的连接。关联提供了不同类之间的对象可以相互作用的连接。

还有组合关系、聚合关系、泛化关系。

常见的图有:

视图:对于同一个系统,不同人员所关心的内容并不一样,按照图本身具有的特点,可以把图形划分为5 类视图,分别是用例视图、逻辑视图、进程视图、 实现视图和部署视图,其中的用例视图居于中心地位。

视图 要点描述 图形表示 关心人员
用例视图 描述系统的功能需求,系统功能模型 用例图 客户、分析者、设计者、开发者和测试者
逻辑视图 描述如何实现系统内部的功能,系统的静态结构和因发送消息而出现的动态协作关系 类图和对象图、状态图、顺序图、合作图和活动图 系统分析和设计人员
进程视图 描述系统的并发性,并处理这些线程间的通信和同步;它将系统分割成并发执行的控制线程及处理这些线程的通信和同步 状态图、顺序图、合作图、活动图、构件图和配置图 开发者和系统集成者
实现视图 描述系统代码构件组织和实现模块及它们之间的依赖关系 构件图 设计者、开发者和测试者
部署视图 定义系统中软硬件的物理体系结构及连接、哪个程序或对象驻留在哪台计算机上执行 配置图 开发者、系统集成者和测试者

七、多媒体

媒体是承载信息的载体,即信息的表现形式。如文字、声音、图像、动画、视频等。媒体分为感觉媒体、表示媒体、表现媒体、存储媒体和传输媒体。

① 感觉媒体:指用户接触信息的感觉形式,直接作用于人的感官,产生感觉(视、听、嗅、味、触觉)的媒体,如视觉、听觉、触觉。

② 表示媒体:是指信息的表示形式。如图像、声音、视频等。感觉媒体转换成表示媒体后,能够在计算机上进行加工处理和传输。(技巧:表示是展示形式)

③ 表现媒体:也称为显示媒体,是表现和获取信息的物理设备。如键盘、鼠标、扫描仪、话筒、数码相机、摄像机为输入表现媒体,显示器、打印机、音箱、投影仪为输出表现媒体。(技巧:表现是要现金买的)

④ 存储媒体:指用于存储表示媒体的物理介质。如硬盘、软盘、光盘、ROM及RAM等。

⑤ 传输媒体:是指传输表示媒体(即数据编码)的物理介质。如电缆、光缆、电磁波等。

(1)视音频技术

① 视音频编码

编解码器指的是能够对一个信号或者一个数据流进行变换的设备或者程序。视音频编码的目的是对视音频数据进行传输和存储。常见的视频文件格式 .mpg、.avi、.mov、.mp4、.rm、.ogg和.tta等。

② 视音频压缩方法

无损压缩:解压缩后的数据和压缩前完全一致。多数无损压缩都采用RLE行程编码算法。常见的格式有WAV、PCM、TTA、FLAC、AU、APE、TAK和WavPack(WV)等;

有损压缩:解压缩后的数据与压缩前的数据不一致,压缩过程中要丢失一些人眼和耳不敏感的图像或音频信息,这些丢失的信息是不可恢复的。常见的格式有MP3、WMA、Ogg Vorbis (OGG)等。

(2)虚拟现实(VR)/增强现实(AR)技术

虚拟现实(VR)又称人工现实、临境等,是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,使用户沉浸到该环境中让人有种身临其境的感觉。其概念包含3层含义:

① 虚拟实体是用计算机生成的一个逼真的实体。

② 用户可以通过人的自然技能(头部转动、眼动、手势或其他身体动作)与该环境交互。

③ 要借助一些三维传感设备来完成交互动作,常用的有头盔立体显示器、数据手套、数据服装和三维鼠标等。

增强现实(AR)技术是指把原本在现实世界的一定时间和空间范围内很难体验到的实体信息(视觉信息、声音、味道和触觉等),通过模拟仿真后,再叠加到现实世界中被人类感官所感知,从而达到超越现实的感官体验。增强现实的出现与计算机图形图像技术、空间定位技术和人文智能等技术的发展密切相关。

八、系统工程

系统工程是为了最好地实现系统的目的,对系统的组成要素、组织结构、信息流、控制机构等进行分析研究的科学方法。它运用各种组织管理技术,使系统的整体与局部之间的关系协调和相互配合,实现总体的最优运行。

系统工程是从整体 出发,合理开发、设计、实施和运用系统科学的工程技术。它根据总体协调的需要,综合应用自然科学和社会科学中有关的思想、理论和方法,利用电子计算机作为工具,对系统的结构、要素、信息和反馈等进行分析,以达到最优规划、最优设计、最优管理和最优控制的目的。

系统工程从系统观念 出发,以最优化方法求得系统整体最优的、综合化的组织、管理、技术和方法的总称。

系统工程方法是一种现代的科学决策方法。

系统工程方法的特点是整体性、综合性、协调性、科学性和实践性。

系统工程方法包括整体观念、综合观念、科学观念和创新观念等。

1、系统工程方法

(1)霍尔的三维结构

描述要点:霍尔三维结构是指时间维、逻辑维和知识维。

  1. 时间维表示系统工程活动从开始到结束按时间顺序排列的全过程,分为规划(调研)、拟订方案(提出具体计划方案)、研制(完成研制方案及生产计划)、生产(生产零部件及提出安装计划)、安装(安装完毕,完成系统的运行计划)、运行(系统按照预期的用途开展服务)、更新(改进原有系统、或消亡原有系统)7个时间阶段。

  2. 逻辑维是指时间维的每个阶段内要进行的工作内容和应该遵循的思维程序,包括明确问题、确定目标、系统综合、系统分析、优化、决策、实施7个逻辑步骤。

  3. 知识维:专业科学知识。应用于组织和管理大型工程建设项目。

(2)切克兰德方法

描述要点:P. 切克兰德把霍尔方法论称为"硬科学"方法论,他自己的方法论称为"软科学"方法论。其核心不是最优化,而是"比较"与"探寻"。

切克兰德方法将工作过程分为7个步骤:认识问题、根底定义、建立概念模型、比较及探寻、选择、设计与实施、评估与反馈。

(3)并行工程方法

描述要点:对产品及其相关过程(包括制造过程和支持过程)进行并行、集成化处理的系统方法和综合技术。并行工程强调以下3点:

  1. 在产品的设计开发期间,以最快的速度按要求的质量完成。

  2. 各项工作由与此相关的项目小组完成。对出现的问题协调解决。

  3. 依据适当的信息系统工具。

(4)综合集成法

描述要点:把系统分为简单系统和巨系统两大类。开放的复杂巨系统的一般基本原则与一般系统论的原则相一致:一是整体论原则;二是相互联系的原则;三是有序性原则;四是动态原则。

(5)WSR系统方法

描述要点:WSR是物理(Wuli)-事理(Shili)-人理(Renli)方法论的简称。"懂物理、明事理、通人理"就是WSR方法论的实践准则。WSR方法论工作过程包括七步:理解意图、制定目标、调查分析、构造策略、选择方案、协调关系和实现构想。这些步骤不一定严格依照顺序,协调关系始终贯穿于整个过程。

2、系统工程生命周期

  1. 探索性研究阶段------是识别利益攸关者的需求,探索创意和技术。

  2. 概念阶段------细化利益攸关者的需求,探索可行概念,提出有望实现的解决方案。

  3. 开发阶段------细化系统需求,创建解决方案的描述,构建系统,验证并确认系统。包括详细计划、开发和验证与确认(v&v)活动。完全自主地选择开发模型,并不局限于瀑布或其他计划驱动的方法。

  4. 生产阶段------生产系统并进行检验和验证。

  5. 使用阶段------运行系统以满足用户需求。

  6. 保障阶段------提供持续的系统能力。

  7. 退役阶段------存储、归档或退出系统。

3、生命周期方法

计划驱动方法------系统化方法,需求、设计、构建、测试、部署范式。

渐进迭代式开发------渐进迭代式开发(IID)方法允许为项目提供初始能力,随之提供连续交付以达到期望的系统。目标在于快速产生价值并提供快速响应能力。

当需求不清晰不确定或者客户希望在系统中引入新技术时,可使用IID方法。基于一系列最初的假设,开发候选的系统,然后对其评估以确定是否满足用户需求。若不满足,则启另一轮演进,并重复该流程,直到交付的系统满足利益攸关者的要求。IID方法适用于较小的、不太复杂的系统。

精益开发------聚焦于向客户交付最大价值并使浪费活动最小化。精益思想是一个动态的、知识驱动的、以客户为中心的过程,通过这一过程使特定企业的所有人员以创造价值为目标不断地消除浪费。

敏捷开发------关键目标在于灵活性。

4、基于模型的系统工程

基于模型的系统工程(Mpdel-Bated Sztuent Eogioeesiog,MBSE,此处应为Model-Based Systems Engineering)的定义:MBSE是建模方法的形式化应用,以使建模方法支持系统需求、分析、设计、验证和确认等活动,这些活动从概念性设计阶段开始,持续贯穿到设计开发以及后来的所有生命周期阶段。

系统工程过程的三个阶段分别产生三种图形:

  • 在需求分析阶段,产生需求图、用例图及包图;

  • 在功能分析与分配阶段,产生顺序图、活动图及状态机(State Machine)图;

  • 在设计综合阶段,产生模块定义图、内部块图及参数图等。

MBSE的三大支柱分别是建模语言、建模工具和建模思路。

5、阿姆达尔解决方案

系统中对某部件采用某种更快的执行方式,所获得的系统性能的改变程度,取决于这种方式被使用的频率,或所占总执行时间的比例。

阿姆达尔定律定义了采用特定部件所取得的加速比。

九、系统性能

1、基准测试程序

为测试新系统的性能,用户必须依靠评价程序来评价机器的性能。

  • 下面的4种评价程序,它们评测的准确程度依次递减:真实的程序 > 核心程序 > 小型基准程序 > 合成基准程序(口诀:真心小合)。

  • 把应用程序中用得最多、最频繁的那部分核心程序作为评价计算机性能的标准程序,称为基准测试程序(benchmark)。

  • 基准测试程序有整数测试程序、浮点测试程序、Whetstone基准测试程序、SPEC基准测试程序和TPC基准程序。

2、Web服务器的性能评估

在Web服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等。

常见的Web服务器性能评测方法有基准性能测试、压力测试和可靠性测试。

3、系统监视

系统监视的方法:

  • 通过系统本身提供的命令,如UNIX/Linux中的w、ps、last,Windows中的netstat等。

  • 通过系统记录文件,查阅系统在特定时间的运行状态。

  • 集成命令、文件记录和可视化技术,如Windows的Perfmon应用程序。

4、硬件性能指标

硬件性能指标 指标
计算机 时钟频率(主频)、运算速度、运算精度、内存的存储容量、存储器的存取周期、数据处理速率、吞吐率、各种响应时间、各种利用率、RASIS特性(即可靠性、可用性、可维护性、完整性和安全性)、平均故障响应时间、兼容性、可扩充性和性能价格比。
网络 设备级性能指标、网络级性能指标、应用级性能指标、用户级性能指标和吞吐量。
操作系统 系统上下文切换、系统响应时间、系统的吞吐率(量)、系统资源利用率、可靠性和可移植性。
数据库管理系统 数据库的大小、数据库中表的数量、单个表的大小、表中允许的记录(行)数量、单个记录(行)的大小、表上所允许的索引数量、数据库所允许的索引数量、最大并发事务处理能力、负载均衡能力、最大连接数等。
WEB服务器 最大并发连接数、响应延迟和吞吐量。
路由器 设备吞吐量、端口吞吐量、全双工线速转发能力、背靠背帧数、路由表能力、背板能力、丢包率、时延、时延抖动、VPN支持能力、内部时钟精度、队列管理机制、端口硬件队列数、分类业务带宽保证、RSVP、IP DifIServ、CAR支持、冗余、热插拔组件、路由器冗余协议、网管、基于Web的管理、网管类型、带外网管支持、网管粒度、计费能力/协议、分组语音支持方式、协议支持、语音压缩能力、端口密度、信令支持。
交换机 有交换机类型、配置、支持的网络类型、最大ATM端口数、最大SONET端口数、最大FDDI端口数、背板吞吐量、缓冲区大小、最大MAC地址表大小、最大电源数、支持协议和标准、路由信息协议(RIP),RIP2、开放式最短路径优先第2版、边界网关协议(BGP)、无类别域间路由(CIDR)、互联网成组管理协议(IGMP)、距离矢量多播路由协议(DVMRP)、开放式最短路径优先多播路由协议(MOSPF)、协议无关的多播协议(PIM)、资源预留协议(RSVP). 802.1p优先级标记,多队列、路由、支持第3层交换、支持多层(4 - 7层)交换、支持多协议路由、支持路由缓存、可支持最大路由表数、VLAN、最大VLAN数量、网管、支持网管类型、支持端口镜像、QoS、支持基于策略的第2层交换、每端口最大优先级队列数、支持基于策略的第3层交换、支持基于策略的应用级QoS、支持最小/最大带宽分配、冗余、热交换组件(管理卡、交换结构、接口模块、电源、冷却系统)、支持端口链路聚集协议、负载均衡。

5、性能调整

当系统性能降到最基本的水平时,性能调整由查找和消除瓶颈组成。

① 对于数据库系统,性能调整主要包括CPU/内存使用状况、优化数据库设计、优化数据库管理以及进程/线程状态、硬盘剩余空间、日志文件大小等;

② 对于web应用系统,性能调整主要包括应用系统的可用性、响应时间、并发用户数以及特定应用的系统资源占用等。

③ 在开始性能调整之前,必须做的准备工作有识别约束、指定负载、设置性能目标。

④ 在建立了性能调整的边界和期望值后,就可以开始调整了,这是一系列重复的、受控的性能试验,循环的调整过程为收集、分析、配置和测试。

相关推荐
微学AI2 小时前
内网穿透的应用-告别局域网束缚!MonkeyCode+cpolar 解锁 AI 编程新体验
linux·服务器·网络
呉師傅3 小时前
东芝3525AC彩色复印机CC219测试页打印方法【实际操作】
运维·网络·windows·计算机外设·电脑
开开心心就好4 小时前
音频编辑工具,多端支持基础剪辑易操作
java·网络·windows·java-ee·电脑·maven·excel
GeekyGuru4 小时前
TCP/IP协议栈深度解析:从分层原理到内核实现与调优
网络·网络协议·tcp/ip
txinyu的博客5 小时前
MAC 地址
服务器·网络·macos
googleccsdn5 小时前
ENSP Pro Lab笔记:配置BGP VXLAN双栈(3)
网络·笔记
百***78756 小时前
【实操】一步API对接GPT-5.2全流程(多语言示例+高并发优化+避坑指南)
网络·gpt
科技块儿6 小时前
【场景:识别C2通信】评估出站IP是否为已知恶意地址,方法:IP离线库+威胁情报融合
网络·网络协议·tcp/ip
2401_841495646 小时前
具身智能:从理论到现实,人工智能的下一场革命
人工智能·算法·机器人·硬件·具身智能·通用智能·专用智能