当前位置: 首页 > news >正文

系统架构设计师备考之架构设计基础

1.计算机系统基础知识

1.1.计算机系统概述

计算机系统的定义与组成

计算机系统是指用于数据管理的计算机硬件、软件及网络组成的系统。
计算机系统可划分为硬件和软件两部分。硬件由机械、电子元器件、磁介质和光介质等物理实体构成;
软件是一系列按照特定顺序组织的数据和指令,并控制硬件完成指定的功能。

 计算机系统分类

计算机系统的分类维度很多,也较为复杂,可以从硬件的结构、性能、规模上划分,亦可从软件的构成、特征上划分,或者从系统的整体用途、服务对象等进行分类

1.2. 计算机硬件基础知识

冯.诺依曼计算机结构

冯·诺依曼计算机结构将计算机硬件划分为运算器、控制器、存储器、输入设备、输出设备5个部分。
但在现实的硬件中,控制单元和运算单元被集成为一体,封装为通常意义上的中央处理器(CentralProcessing Unit,CPU)。

 典型的处理器系统

 专业处理器

除了通用的处理器,用于专用目的的专用处理器芯片不断涌现,常见的有图形处理器(Graphics Processing Unit,GPU)、信号处理器(Digital Signal Processor,DSP)以及现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)等。GPU 常有数百个或数千个内核,经过优化可并行运行大量计算;

DSP专用于实时的数字信号处理,常采用哈佛体系结构

指令集系统 

典型的处理器根据指令集的复杂程度可分为复杂指令集(Complex Instruction Set Computers,CISC)与精简指令集(Reduced Instruction Set Computers,RISC)两类。CISC以Intel、AMD的x86 CPU为代表,RISC以ARM和Power为代表。国产处理器目前有龙芯、飞腾、申威等品牌,常采用RISC-V、MIPS、ARM等精简指令集架构。

 存储器

存储器是利用半导体、磁、光等介质制成用于存储数据的电子设备。根据存储器的硬件结构可分为SRAM、DRAM、NVRAM、Flash、EPROM、Disk等。
按照与处理器的物理距离可分为4个层次:片上缓存、片外缓存、主存(内存)、外存。
其访问速度依次降低,而容量依次提高

总线 

总线(Bus)是指计算机部件间遵循某一特定协议实现数据交换的形式,即以一种特定格式按照规定的控制逻辑实现部件间的数据传输。
按照总线在计算机中所处的位置划分为内总线、系统总线和外部总线
目前,计算机总线存在许多种类,常见的有并行总线和串行总线。两者的区别见表

 接口

接口是指同一计算机不同功能层之间的通信规则。计算机接口有多种,
常见的有输入输出接口如HDMI、SATA、RS-232等;网络接口如RJ45、FC等;以及A/D转换接口等非标准接口。

外部设备 

外部设备也称为外围设备,是计算机结构中的非必要设备,但从功能上又常常不可缺少,例如键盘、鼠标、显示器等。虽然种类多样,但都是通过接口实现与计算机主体的连接,并通过指令、数据实现预期的功能。

1.3.计算机软件基础知识 

计算机软件

计算机软件是指计算机系统中的程序及其文档,是计算任务的处理对象和处理规则的描述。软件系统是指在计算机硬件系统上运行的程序、相关的文档资料和数据的集合。计算机软件可用来扩充计算机系统的功能,提高计算机系统的效率。按照软件所起的作用和需要的运行环境不同,通常将计算机软件分为系统软件和应用软件两大类。
(1)系统软件。为整个计算机系统配置的不依赖特定应用领域的通用软件,对计算机系统的硬件和软件资源进行控制和管理,并提供运行服务支持
(2)应用软件。是指为某类应用需要或解决某个特定问题而设计的软件,常与具体领域相关联,如教学软件。

 操作系统

操作系统是计算机系统的资源管理者,包含对系统软、硬件资源实施管理的一组程序。
操作系统的重要作用如下:
(1)管理计算机中运行的程序和分配各种软、硬件资源。
(2)为用户提供友善的人机界面。
(3)为应用程序的开发和运行提供一个高效率的平台。
操作系统具有并发性、共享性、虚拟性和不确定性的特征。
操作系统的分类:
(1)批处理操作系统,根据同时执行的作业数又分为单道批处理和多道批处理。一个作业由用户程序、数据和作业说明书(作业控制语言)3个部分组成。
(2)分时操作系统,将CPU的工作时间划分为许多很短的时间片,每个时间片分别为一个终端的用户提供服务或者执行一个作业。分时系统主要有4个特点:多路性、独立性、交互性和及时性
(3)实时操作系统,对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内快速做出反应,对可靠性要求很高,并且不强制要求用户交互。实时系统的应用非常广泛。
(4)网络操作系统,使联网计算机能有效地共享网络资源,为网络用户提供各种服务和接口。特征包括硬件独立性和多用户支持等。
(5)分布式操作系统,指为分布式计算机系统配置的操作系统。分布式操作系统是网络操作系统的更高级形式,它保持网络系统所拥有的全部功能,同时又有透明性、可靠性和高性能等特性。
(6)嵌入式操作系统,运行在嵌入式智能设备环境中,对整个智能硬件以及它所操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制,特点是微型化、可定制、可靠性和易移植性。常采用硬件抽象层(Hardware Abstraction Layer,HAL)和板级支撑包(Board Support Package,BSP)来提高易移植性。
常见的嵌入式实时操作系统有VxWorks、μClinux、PalmOS、WindowsCE、μC/OS-II和eCos等。

数据库 

数据库(DataBase,DB)是指长期存储在计算机内、有组织的、统一管理的相关数据的集合。数据是按一定格式存放的,具有较小的冗余度、较高的数据独立性和易扩展性,可为多个用户共享。
数据库可以分为:关系型数据库、键值(Key-Value)数据库、列存储数据库、文档数据库等

分布式数据库系统 

分布式数据库系统(Distributed DataBase System,DDBS)是针对地理上分散,而管理上又需要不同程度集中的需求而提出的一种数据管理信息系统。满足分布性、逻辑相关性、场地透明性和场地自治性的数据库系统被称为完全分布式数据库系统。分布式数据库系统的特点是数据的集中控制性、数据独立性、数据冗余可控性、场地自治性和存取的有效性。

文件系统 

文件(File)是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。文件系统是操作系统中实现文件统一管理的一组软件和相关数据的集合,是专门负责管理和存取文件信息的软件机构。
文件的类型如下:
(1)按性质和用途分类可将文件分为系统文件、库文件和用户文件。
(2)按信息保存期限分类可将文件分为临时文件、档案文件和永久文件。
(3)按保护方式分类可将文件分为只读文件、读/写文件、可执行文件和不保护文件。
(4)UNIX系统将文件分为普通文件、目录文件和设备文件(特殊文件)。 文件的存取方法:通常有顺序存取和随机存取两种方法。 文件组织方法:有连续结构、链接结构和索引结构,还有多重索引方式。 文件存储空间的管理知道存储空间的使用情况,空间管理的数据结构通常称为磁盘分配表(Disk Allocation Table),有空闲区表、位示图和空闲块链3种。位示图用每一位的0和1表示一个区块空闲或被占用,如图1.3所示。

网络协议 

常用的网络协议包括局域网协议(Local Area Network,LAN)、广域网协议(Wide Area Network,WAN)、无线网协议和移动网协议。互联网使用的是TCP/IP协议簇。

中间件 

中间件(Middleware)是应用软件与各种操作系统之间使用的标准化编程接口和协议,是基础中间件(分布式系统服务)软件的一大类,属于可复用软件的范畴。
常见中间件的分类如下:
(1)通信处理(消息)中间件,保证系统能在不同平台之间通信,例如MQSeries。
(2)事务处理(交易)中间件,实现协调处理顺序、监视和调度、负载均衡等功能,例如Tuxedo。
(3)数据存取管理中间件,为不同种类数据的读写和加解密提供统一的接口。
(4)Web服务器中间件,提供Web程序执行的运行时容器,例如Tomcat、JBOSS等。
(5)安全中间件,用中间件屏蔽操作系统的缺陷,提升安全等级。
(6)跨平台和架构的中间件,用于开发大型应用软件。
(7)专用平台中间件,为解决特定应用领域的开发设计问题提供构件库。
(8)网络中间件,包括网管工具、接入工具等。

软件构件 

构件又称为组件,是一个自包容、可复用的程序集,这个集合整体向外提供统一的访问接口,构件外部只能通过接口来访问构件,而不能直接操作构件的内部。构件的两个最重要的特性是自包容与可重用,利用软件构件进行搭积木式地开发。优点:易扩展、可重用、并行开发。缺点:需要经验丰富的设计师、快速开发与质量属性之间需要妥协、构件质量影响软件整体的质量。
商用构件的标准规范有:
(1)OMG的公共对象请求代理架构(Common Object Request Broker Architecture,CORBA)是一个纯粹的规范而不是产品,主要分为3个层次:对象请求代理(Object Request Broker,ORB)、公共对象服务和公共设施。采用IDL定义接口,并易于转化为具体语言实现。
(2)SUN的J2EE,定义了完整的基于Java语言开发面向企业分布的应用规范,其中EJB是J2EE 的构件标准,EJB中的构件称为Bean,可以分为会话Bean、实体Bean和消息驱动Bean。
(3)Microsoft 的 DNA 2000,采用DCOM/COM/COM+作为标准的构件。

1.4.计算机语言 

计算机语言分类

计算机语言(Computer Language)是指人与计算机之间用于交流的一种语言,主要由一套指令组成,而这套指令一般包括表达式、流程控制和集合三大部分内容。
计算机语言的分类有:
(1)机器语言。机器语言是第一代计算机语言,是计算机自身具有的“本地语”,由计算机所能直接理解和执行的所有指令组成。指令格式由操作码和操作数两部分组成。
(2)汇编语言。汇编语言在机器语言的基础上采用英文字母和符号串来表达指令,是机器语言的符号化描述。每条语句均由名字、操作符、操作数和注释4个字段(Fields)组成。伪指令语句包括数据定义伪指令DB、DW、DD,段定义伪指令SEGMENT,过程定义伪指令PROC等,编译后不产生机器代码。
(3)高级语言。高级语言比汇编语言更贴近于人类使用的语言,易于理解、记忆和使用。常见的高级语言包括C、C++、Java、Python等。
(4)建模语言。建模语言主要指的是统一建模语言(Unified Modeling Language,UML),UML由3个要素构成:UML的基本构造块(事物、关系)、图(支配基本构造块如何放置在一起的规则)和运用于整个语言的公用机制

 事物

UML中有4种事物:结构事物、行为事物、分组事物和注释事物。

结构事物 

名词、静态部分,用于描述概念或物理元素。结构事物包括类(Class)、接口(Interface)、协作(Collaboration)、用例(UseCase)、主动类(Active Class)、构件(Component)、制品(Artifact)和节点(Node),如图

行为事物

动词,描述了跨越时间和空间的行为。行为事物包括交互(Interaction)、状态机(State Machine)和活动(Activity),如图 

 分组事物

包是最常用的分组事物,结构事物、行为事物甚至其他分组事物都可以放进包内,如图

注释事物

注释即注解,用来描述、说明和标注模型的任何元素,如图 

关系 

UML中有4种关系:依赖、关联、泛化和实现

依赖关系

其中一个事物(独立事物)发生变化会影响另一个事物。依赖关系是一种使用的关系 

关联关系

是一种拥有的关系,关联提供了不同类的对象之间的结构关系,它在一段时间内将多个类的实例连接在一起。一般认为关联关系有2个特例:一个是聚合关系,另一个是组合关系。聚合关系表示类之间的整体与部分的关系,其含义是“部分”可能同时属于多个“整体”,“部分”与“整体”的生命周期可以不相同组合关系也是表示类之间的整体与部分的关系。与聚合关系的区别在于,组合关系中的“部分”只能属于一个“整体”,“部分”与“整体”的生命周期相同,“部分”随着“整体”的创建而创建,也随着“整体”的消亡而消亡。 

 

泛化关系

泛化是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。 

实现关系

在两种情况下会使用实现关系:一种是在接口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间 

 图

图是一组元素的图形表示,大多数情况下把图画成顶点(代表事物)和弧(代表关系)的连通图。
UML 2.0提供了14种图,分别是类图、对象图、用例图、序列图、通信图、状态图、活动图、构件图、部署图、制品图、组合结构图、包图、交互概览图和计时图(定时图)。序列图、通信图、交互概览图和计时图均被称为交互图。
类图如图1.9所示。类图展现了一组对象、接口、协作和它们之间的关系

用例图

用例图(Use Case Diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。用例之间有扩展关系(<<extend >>)和包含关系(<<include >>),参与者和用例之间有关联关系,用例与用例、参与者与参与者之间有泛化关系。包含关系的特点是当两个或多个用例中共用一组相同的动作时,可以将这组相同的动作抽出来作为一个独立的子用例,供多个基用例所共享;扩展关系则是对基用例的扩展,基用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。
UML中有5种视图(View):用例视图、逻辑视图、进程视图、实现视图、部署视图,其中的用例视图居于中心地位。
形式化方法和形式化语言。形式化方法是把概念、判断、推理转化成特定的形式符号后,对形式符号表达系统进行研究的方法。形式化方法有不同的分类方法。根据描述方式分,有模型描述和性质描述两类;根据表达能力分,有模型方法、代数方法、进程代数方法、逻辑方法和网络模型方法5类。形式化方法的开发过程贯穿软件工程的整个生命周期。
Z 语言是一种形式化语言,具有“状态—操作”风格,借助模式来表达系统结构。建立于集合论和数理逻辑的基础上,是一个强类型系统,可以使用自然语言 

 

1.5.多媒体技术

媒体与多媒体

媒体是承载信息的载体,即信息的表现形式(或者传播形式),如文字、声音、图像、动画和视频等。多媒体有4个重要的特征:
(1)多维化,即媒体的多样化。
(2)集成性,多媒体与设备集成,也与信息和表现集成。
(3)交互性,可向用户提供更有效的控制和使用信息的手段。
(4)实时性,音频和视频等信息具有很强的时间特性。
多媒体系统通常由硬件和软件组成,其中多媒体硬件主要包括计算机主要配置和外部设备以及与各种外部设备的控制接口;多媒体软件主要包括多媒体驱动软件、多媒体操作系统、多媒体数据处理软件、多媒体创作工具软件和多媒体应用软件等

多媒体系统的关键技术

(1)视、音频技术,视频技术包括视频数字化和视频编码技术两个方面;音频技术包括音频数字化、语音处理、语音合成及语音识别4个方面
(2)通信技术,是多媒体系统中的一项关键技术,通常包括数据传输信道技术和数据传输技术。
(3)数据压缩技术,包括即时压缩和非即时压缩、数据压缩和文件压缩、无损压缩与有损压缩等。
(4)虚拟现实(Virtual Reality,VR)/增强现实(Augmented Reality,AR)技术,虚拟现实又称人工现实、临境等,是一种可以创建和体验虚拟世界的计算机仿真系统,采用计算机技术生成一个逼真的视觉、听觉、触觉、味觉及嗅觉的感知系统与用户交互;增强现实技术是指把原本在现实世界的一定时间和空间范围内很难体验到的实体信息(视觉信息、声音、味道和触觉等),通过模拟仿真后,再叠加到现实世界中被人类感官所感知,从而达到超越现实的感官体验。VR/AR 技术主要分为桌面式、分布式、沉浸式和增强式4 种


2.嵌入式基础知识

2.1.嵌入式系统的组成及特点

定义

嵌入式系统(Embedded System)是以特定应用为中心、以计算机技术为基础,并将可配置与可裁剪的软、硬件集成于一体的专用计算机系统。嵌入式系统的组成结构是:
(1)嵌入式处理器,除满足低功耗、体积小等需求外,工艺可分为民用、工业和军用等三个档次,民用级器件的工作温度范围是0~70℃、工业级的是−40~85℃、军用级的是−55~150℃。其应用环境常常非常恶劣,比如有高温、寒冷、电磁、震动、烟尘等环境因素。
(2)相关支撑硬件,指除处理器以外的其他硬件,如存储器、定时器、总线等。
(3)嵌入式操作系统,与通用操作系统不同,嵌入式操作系统应具备实时性、可裁剪性和安全性等特征。
(4)支撑软件,其中的公共服务通常运行在操作系统之上,以库的方式被应用软件所引用。
(5)应用软件,是指为完成嵌入式系统的某一专用目标所开发的软件

 特点

(1)专用性强,常常面向特定应用需求,配备多种传感器。
(2)技术融合,将先进的计算机技术、通信技术、半导体技术和电子技术与各个行业的具体应用紧密结合难以拆分。
(3)软硬一体软件为主,在通用的嵌入式系统版本基础上裁剪冗余,高效设计。
(4)资源受限,由于低功耗、体积小和集成度高等要求,系统的资源非常少。
(5)程序代码固化在ROM中,以提高执行速度和系统可靠性。
(6)需专门开发工具和环境,见2.3节。
(7)体积小、价格低、工艺先进、性能价格比高、系统配置要求低、实时性强。
(8)对安全性和可靠性的要求高。

 2.2.嵌入式系统的分类

分类

根据不同用途可将嵌入式系统划分为嵌入式实时系统和嵌入式非实时系统两种。而实时系统又可分为强实时(Hard Real-Time)系统和弱实时(Weak Real-Time)系统。从安全性要求看,嵌入式系统还可分为安全攸关(Safety-Critical或Life-Critical)系统和非安全攸关系统

实时系统 

实时系统(Real-Time System,RTS)是指能够在规定的时间内完成系统功能和做出响应的系统

安全攸关系统 

安全攸关系统(Safety-Critical System)是指其不正确的功能或者失效会导致人员伤亡、财产损失等严重后果的计算机系统

2.3.嵌入式软件的组成及特点 

基本概念

大多数嵌入式系统都具备实时特征,这种嵌入式系统的典型架构可概括为两种模式,即层次化模式架构和递归模式架构。嵌入式系统的最大特点就是系统的运行和开发是在不同环境中进行的,通常将运行环境称为“目标机”环境,称开发环境为“宿主机”环境,宿主机与目标机之间通过串口、网络或JTAG接口连接。由于宿主机和目标机的指令往往是不同的,嵌入式系统的开发通常需要交叉平台开发环境支持,基本开发工具是交叉编译器、交叉链接器和源代码调试器。还需要注意实时性、安全性和可靠性、代码规模、软/硬件协同工作的效率和稳定性、特定领域的需求等

组成与特点 

从细节上看,嵌入式系统可以分为:
(1)硬件层,包括处理器、存储器、总线、I/O接口及电源、时钟等。
(2)抽象层,包括硬件抽象层(HAL),为上层应用(操作系统)提供虚拟的硬件资源;板级支持包(BSP),是一种硬件驱动软件,为上层操作系统提供对硬件进行管理的支持。
(3)操作系统层,由嵌入式操作系统、文件系统、图形用户接口、网络系统和通用组件等可配置模块组成。
(4)中间件层,是连接两个独立应用的桥梁,常用的有嵌入式数据库、OpenGL、消息中间件、Java 中间件、虚拟机(VM)、DDS/CORBA和Hadoop等。
(5)应用层,包括不同的应用软件。
嵌入式软件的主要特点有:
(1)可剪裁性:设计方法包括静态编译、动态库和控制函数流程实现功能控制等。
(2)可配置性:设计方法包括数据驱动、静态编译和配置表等。
(3)强实时性:设计方法包括表驱动、配置、静/动态结合、汇编语言等。
(4)安全性(Safety):设计方法包括编码标准、安全保障机制、FMECA(故障模式、影响及行低功耗设计。主要技术有编译优化技术、软硬件协同设计、算法优化。危害性分析)。
(5)可靠性:设计方法包括容错技术、余度技术和鲁棒性设计等。
(6)高确定性:设计方法包括静态分配资源、越界检查、状态机、静态任务调度等。
综上所述,嵌入式软件的开发也与传统的软件开发方法差异较大。在嵌入式系统设计时,要进行低功耗设计。主要技术有编译优化技术、软硬件协同设计、算法优化。

2.4.嵌入式系统硬件体系结构 

组成结构

传统的嵌入式系统主要由嵌入式微处理器、存储器、总线逻辑、定时/计数器、看门狗电路、I/O 接口和外部设备等部件组成。

嵌入式微处理器分类 

(1)微处理器(Microprocessor Unit,MPU):微处理器+专门设计的电路板,集成度低、可靠性高,主要有:Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM系列等。
(2)微控制器(Microcontroller Unit,MCU):又称单片机,把核心存储器和部分外设封装在片内。优点是单片化、体积小、功耗和成本下降,可靠性提高。包括 8501,P5IXA,MCS-251,MCS-96/196/296,C166/167,MC68HC05/11/12/16,68300 和数目众多的 ARM 系列。
(3)数字信号处理器(Digital Signal Processing,DSP):采用哈佛结构,对系统结构和指令进行了特殊设计,适合执行大量数据处理。包括 TMS320 系列(含 C2000、C5000、C6000、C8000系列)、DSP56000系列、实时DSP处理器等。
(4)图形处理器(Graphics Processing Unit,GPU):与CPU相比大幅加强了浮点运算能力和多核并行计算能力,因此常用于AI技术的深度学习的数据运算。
(5)片上系统(System on Chip,SoC):由多个具有特定功能的集成电路组合在一个芯片上形成的系统或产品,其中包含完整的硬件系统,如处理器、IP(Intellectual Property)核、存储器等及其承载的嵌入式软件,如操作系统和定制的用户软件。

存储器分类 

随机存取存储器(Random Access Memory,RAM)

工作需要持续电力提供,可随机读写。
1)动态随机存取存储器(Dynamic RAM,DRAM),采用电容存储信息,优点是集成度高、容量大、成本低,缺点是访问速度较慢、需要定期刷新。常作主存。
2)静态随机存取存储器(Static RAM,SRAM),采用多个晶体管自锁的方式保存状态,优点是访问速度快、不需要刷新,缺点是集成度低、容量小、成本高。常用作高速缓存。

只读存储器(Read Only Memory,ROM)

存储的数据不会因掉电而丢失,读取的速度比RAM快,常见的有以下几种:
1)掩膜型只读存储器(Mask Programmed ROM,MROM),优点是通过掩膜大批量制造、成本低,缺点是同批数据全部一致且不可修改,只适合大批量生产。
2)可编程只读存储器(Programmable ROM,PROM),可以用专用编程设备一次性烧录数据,适合少量制造。
3)可擦可编程只读存储器(Erasable Programmable ROM,EPROM),优点是写入的数据可以通过紫外线擦除重写。
4)电可擦可编程只读存储器(Electrically Erasable Programmable ROM,EEPROM),优点是写入的数据可以通过电压来清除,但是清除的速度很慢。
5)快闪存储器(Flash Memory),优点是可以联机擦写数据且擦写的次数多、速度快,缺点是读取的速度慢(相对其他ROM的速度而言)。 

内(外)总线逻辑

1)根据传输的信息种类分类,可分为以下几种。
①数据总线,用于传送需要处理或者需要存储的数据。
②地址总线,用于指定在RAM之中存储的数据的地址。
③控制总线,将微处理器控制单元的信号传送到周边设备。
2)根据连接部件分类,可分为以下几种。
①片内总线,连接芯片内部各元件。
②系统总线或板级总线,连接计算机系统的核心组件。
③局部总线,连接局部少数组件。
④通信总线,主机连接外设的总线。
各类总线在嵌入式系统的位置如图2.2所示。
3)按照数据传输的方向,总线可以分为单工总线和双工总线。单工总线只能从一端向另一端传输而不能反向;双工总线能在两个方向传输。双工总线又分为半双工总线和全双工总线。半双工总线只能轮流向两个方向传输;全双工总线可以同时在两个方向传输。
4)按照总线使用的信号类型,总线可以分为并行总线和串行总线。并行总线包含多位传输线,在同一时刻可以传输多位数据,但一致性要求高,传输距离较近;而串行总线只使用一位传输线,同一时刻只传输一位数据,但距离可以较远。 

看门狗电路

看门狗电路,是嵌入式系统必须具备的一种系统恢复能力,可防止程序出错或者死锁。主要由输入端、寄存器、计数器和狗叫模块构成。通过寄存器对看门狗进行基本设置,计数器计算狗叫时间,狗叫模块决定看门狗超时后发出的中断或复位方式。程序正常运行时MCU会在输入端定期“喂狗”,超时不“喂狗”就会触发狗叫模块,一般是重启MCU。 

 2.5.安全攸关软件的安全性设计

定义

IEEE 定义安全攸关软件是“用于一个系统中,可能导致不可接受的风险的软件”。

DO-178B标准 

该标准的目的是为制造机载系统和设备的机载软件提供指导,使其能够提供在满足符合适航要求的安全性水平下完成预期功能。DO-178B标准将软件生命周期分为“软件计划过程”“软件开发过程”和“软件综合过程”,其中软件开发过程细分为软件需求过程、软件设计过程、软件编码过程和集成过程4个子过程;软件综合过程细分为软件验证过程、软件配置管理过程、软件质量保证过程、审定联络过程4个子过程。DO-178B 根据软件在系统中的重要程度将软件的安全等级分为A~E五级,分别对应灾难级(A)、危害级(B)、严重级(C)、不严重级(D)和没有影响级(E)


3.计算机网络基础 

3.1.网络的基本概念

网络有关指标

(1)性能指标:从速率、带宽、吞吐量和时延等不同方面来度量计算机网络的性能。
(2)非性能指标:从费用、质量、标准化、可靠性、可扩展性、可升级性、易管理性和可维护性等来度量。

3.2.通信技术 

数据与信道

在通信中的数据包括模拟信号和数字信号,通过信道来传输,信息传输就是信源和信宿通过信道收发信息的过程。信道可分为逻辑信道和物理信道。逻辑信道是指在数据发送端和接收端之间存在的一条虚拟线路,可以是有连接的或无连接的,以物理信道为载体。信号在信源端和信宿端都需要经过信号变换,中间经过编码、交织、调制和解码等过程。

复用技术 

是指在一条信道上同时传输多路数据的技术,如TDM时分复用、FDM频分复用和CDM码分复用等。即一条路上行驶多辆货车。

多址技术 

是指在一条线上同时传输多个用户数据的技术,在接收端把多个用户的数据分离,如TDMA时分多址、FDMA频分多址和CDMA码分多址等。即一辆车上的货物属于不同用户。

5G通信网络 

作为新一代的移动通信技术,网络结构、网络能力和应用场景等都与过去有很大不同,具有高速率、低时延、接入用户数高等优点。

 3.3.网络技术

局域网(LAN)

是指在有限地理范围内将若干计算机通过传输介质互联成的封闭型的计算机网络。局域网有总线型、星型、树型、环型、网状五种拓扑结构,如图

以太网(Ethernet) 

是一种计算机局域网组网技术,由IEEE 802.3定义。以太网数据帧的最小长度必须不小于64字节,最大长度一般是1518字节。设置最小帧长是为了避免冲突,最小帧长是根据网络中检测冲突的最长时间来定的。

无线局域网(Wireless Local Area Networks,WLAN) 

利用无线技术在空中传输数据、话音和视频信号。WLAN采用IEEE 802.11标准,有a、b、g、n、ac等子标准,802.11n传输速率可达200Mb/s,802.11ac则可达1Gb/s。WLAN拓扑结构有点对点型、Hub型和完全分布型。

点对点型用于网络互联和延长;

HUB型用于终端接入;

完全分布型则处于理论探讨阶段无具体应用。

 广域网(WAN)

是一种将分布于更广区域的计算机设备联接起来的网络,需要使用路由器和网关设备。广域网由通信子网与资源子网组成。广域网可以分为公共传输网络、专用传输网络和无线传输网络3类。广域网相关技术有同步光网络(SONET)、同步数字体系(SDH)、数字数据网(DDN)、帧中继(FR)和异步传输技术(ATM)

 城域网(Metropolitan Area Network,MAN)

是在单个城市范围内所建立的计算机通信网,采用IEEE 802.6标准。通常分为3个层次:核心层、汇聚层和接入层

移动通信网 

其发展经历了1G模拟信号传输、2G数字通信技术、3G扩展频谱、4G快速发展繁荣、5G多业务、多技术融合等5代。5G网络的主要特征为服务化架构和网络切片
1)服务化架构(Service-Based Architecture,SBA)可以实现网络功能的灵活定制和按需组合,以及软件快速迭代和升级。
2)网络切片技术可以在单个物理网络中切分出多个分离的逻辑网络用于不同业务。5G还引入了基于灵活以太网(Flexible Ethernet,FlexE)的硬切片技术。

3.4.组网技术

网络设备及其工作层级 

(1)集线器(Hub)和中继器(Repeater)工作在物理层。
(2)网桥(Bridge)和交换机(Switcher)工作在数据链路层。
(3)路由器(Router)和防火墙(Firewall)主要工作在网络层。防火墙是网络中一种重要的安全设备,作为网络对外的门户。

网络协议 

OSI/RM七层模型见表

Internet协议的主要协议及其层次关系见表

 应用层协议

文件传输协议(File Transport Protocol,FTP)

是网络上两台计算机传送文件的协议,运行在TCP之上,是通过Internet将文件从一台计算机传输到另一台计算机的一种途径。FTP在客户机和服务器之间需建立两条TCP连接,一条用于传送控制信息(使用21号端口),另一条用于传送文件内容(使用20号端口)

简单文件传输协议(Trivial File Transfer Protocol,TFTP) 

是用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。TFTP建立在UDP之上,69号端口;提供不可靠的数据流传输服务,不提供存取授权与认证机制,使用超时重传方式来保证数据的到达。

超文本传输协议(Hypertext Transfer Protocol,HTTP)

是用于从WWW服务器传输超文本到本地浏览器的传送协议。HTTP建立在TCP之上,使用80号端口。 

安全超文本传输协议(Hypertext Transfer Protocol Secure,HTTPS)

是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS在HTTP的基础下加入安全套接层(Secure Socket Layer,SSL)或TLS,HTTPS使用的443号端口。 

动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)

通常被应用在大型的局域网络环境中,主要作用是集中地管理、分配IP地址,使网络环境中的主机动态地获得IP地址、网关地址、DNS服务器地址等信息,并能够提升地址的使用率。在网络范围内可能存在多个DHCP服务器,各自负责不同的网段,也可能由同一个DHCP服务器,负责多个不同网段的地址分配。如果网络中有多个DHCP服务器发送OFFER报文,客户端只根据第一个收到的OFFER报文,返回REQUEST报文。 

域名系统(Domain Name System,DNS)

DNS把主机域名解析为IP地址的系统,而PTR(Pointer Record)负责将IP地址映射到域名的解析。
DNS查询过程有两种方法,见表 

 传输层协议

传输控制协议(Transmission Control Protocol,TCP)

TCP是可靠的、面向连接的网络协议。具有差错校验和重传、流量控制、拥塞控制等功能。适用于数据量比较少,且对可靠性要求高的场合。

用户数据报协议(User Datagram Protocol,UDP)

UDP是不可靠的、无连接的网络协议。UDP适合数据量大,对可靠性要求不是很高,但要求速度快的场合。 

网络层协议 

IPv6被称为“下一代互联网协议”,IP数据报的目的地址有单播、多播/组播、任播。IPv4 to IPv6过渡技术主要有:双协议栈技术、隧道技术、NAT-PT 技术

 交换机

交换机功能包括集线功能、中继功能、桥接功能、隔离冲突域功能。交换机协议有:
(1)生成树协议(STP),可以很好地解决链路环路问题。
(2)链路聚合协议,可以提升与邻接交换设备之间的端口带宽和提高链路可靠性。

路由器 

路由功能由路由器(Router)来提供,包括异种网络互连、子网协议转换、数据路由、速率适配、隔离网络、报文分片和重组、备份和流量控制。路由器协议主要有:
(1)内部网关协议(Interior Gateway Protocol,IGP):指在一个自治系统(Autonomous System,AS)内运行的路由协议。
(2)外部网关协议(Exterior Gateway Protocol,EGP):指在 AS之间的路由协议。EGP是为简单的树型拓扑结构设计的。
(3)边界网关协议(Border Gateway Protocol,BGP):Internet的网络规模庞大,网络情况复杂,EGP已不适用,在EGP的经验之上制定了新的网关协议即BGP,也是Internet上唯一的网关协议。

3.5.网络工程 

网络建设工程

可分为网络规划、网络设计和网络实施3个环节。
(1)网络规划以需求为导向,兼顾技术和工程可行性。
(2)网络设计包括逻辑设计和物理设计,逻辑设计指网络结构设计、网络技术选型、IP地址和路由设计、网络冗余设计以及网络安全设计等;物理设计指布线设计、机房设计、设备选型等。网络冗余设计的目的就是避免网络组件单点失效造成应用失效;备用路径是在主路径失效时启用,其和主路径承担不同的网络负载;负载分担是网络冗余设计中的一种设计方式,其通过并行链路提供流量分担来提高性能;网络中存在备用链路时,可以考虑加入负载分担设计来减轻主路径负担。
(3)网络实施包括工程实施计划、网络设备验收、设备安装和调试、系统试运行和切换、用户培训等。

 分层设计

网络设计一般采用分层的方式,分为接入层、汇聚层、核心层

 接入层

直接面向用户连接或访问网络的部分,主要解决相邻用户之间的互访需求,并且为这些访问提供足够的带宽,接入层还应当适当负责一些用户管理功能(如地址认证、用户认证、计费管理等),以及用户信息收集工作(如用户的IP地址、MAC地址、访问日志等)

汇聚层

是核心层和接入层的分界面,完成网络访问策略控制、数据包处理、过滤、寻址,以及其他数据处理的任务。汇聚层的存在与否要视网络规模大小而定。 

核心层

网络主干部分称为核心层,核心层的主要目的在于通过高速转发通信,提供优化、可靠的骨干传输结构,因此,核心层交换机应拥有更高的可靠性、性能和吞吐量。核心层的设备采用双机冗余热备份是非常必要的,也可以使用负载均衡功能来改善网络性能。  

http://www.lqws.cn/news/556021.html

相关文章:

  • docker安装elasticsearch和kibana
  • bboss jobflow使用介绍
  • Java--面向对象基础--类与方法
  • GitHub 趋势日报(2025年06月27日)
  • spring spi源码
  • 恐怖黎明 决定版 中文 免安 离线运行版
  • 《卷积神经网络到Vision Transformer:计算机视觉的十年架构革命》
  • 【SpringBoot高级】SpringBoot与Kafka深度整合:从入门到企业级实战
  • zookeeper Curator(3):Watch事件监听
  • 使用 Socket.IO 和 TypeScript 由 WebSockets 驱动的聊天应用程序
  • JavaScript中的显式原型与隐式原型:深入理解原型链
  • 车辆车五项查询API: Python 示例
  • Stewart并联结构两自由度正逆解计算和工作空间仿真
  • Word之电子章制作——1
  • 探索钉钉生态中的宜搭:创建与分享应用的新视界
  • 服务器的维护技术都有哪些?
  • docker+n8n的工作流中无法使用本地ollama服务的问题
  • InnoDB的undo日志涉及的页结构
  • mmap映射物理内存之一cache与lock
  • GeoTools 结合 OpenLayers 实现属性查询
  • Stable Diffusion入门-ControlNet 深入理解 第四课:风格迁移与重绘控制模型——让AI也有“艺术天赋”!
  • Git安装避坑指南
  • 【编程实践】利用python在Blender生成三维模型
  • Kafka 消费者重平衡问题排查与优化实践
  • 在单片机中如何实现一个shell控制台
  • 阿里云-arms监控
  • zookeeper Curator(1):认识zookeeper和操作命令
  • 华为云鸿蒙应用入门级开发者认证 实验部分题目及操作步骤
  • 【龙泽科技】新能源汽车故障诊断仿真教学软件【吉利几何G6】
  • Qt:QCustomPlot库的QCPAxis