【软考-架构师】一、结构设计基础

一、计算机系统基础知识

1、计算机系统概述

  • 定义:计算机系统是指用于数据管理的计算机硬件、软件及网络组成的系统。它是按人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。
  • 分类:计算机系统可划分为硬件子系统和软件子系统两部分。硬件由机械、电子元器件、磁介质和光介质等物理实体构成;软件是一系列按照特定顺序组织的数据和指令,控制硬件完成指定的功能。

2、计算机硬件基础

  • 硬件组成:根据冯·诺依曼结构,计算机硬件主要包括运算器、控制器、存储器、输入设备和输出设备五个部分。其中,控制单元和运算单元通常被集成为中央处理器(CPU)。
  • 处理器(CPU)
    • 组成:CPU由算术逻辑单元(ALU)、累加寄存器(AC)、数据缓存寄存器(DR)、状态条件寄存器(PSW)、程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)及时序部件等组成。
    • 类型:包括GPU(图形处理器)、DSP(数字信号处理器)、SoC(片上系统)、FPGA(现场可编程逻辑门阵列)、MPU(微处理器)、MCU(微控制单元,即单片机)等。
    • 指令集:分为CISC(复杂指令集)和RISC(精简指令集)两种。CISC以Intel、AMD的x86为代表,RISC以ARM和Power为代表,且RISC已成为计算机指令集发展的趋势。
  • 存储器
    • 类型:包括ROM(只读存储器)、SRAM(静态随机存取存储器)、DRAM(动态随机存取存储器)、NVRAM(非易失性随机访问存储器)、Flash、EPROM(可擦可编程只读存储器)、Disk(磁盘)等。
    • 分级存储体系:按与处理器的物理距离可分为片上缓存、片外缓存、主存和外存四个层次。
    • 性能优化:Cache的使用是突破冯·诺依曼瓶颈(CPU与存储速度不匹配问题)的关键,依据是程序的局部性原理(时间局部性和空间局部性)。

3、计算机软件基础

  • 软件分类:根据功能和用途的不同,软件可分为系统软件和应用软件两大类。系统软件包括操作系统、数据库管理系统、编译系统等,而应用软件则是为了解决特定问题而开发的软件。
  • 编程语言:包括低级语言(如机器语言和汇编语言)和高级语言(如C、C++、Java、Python等)。高级语言更接近人类自然语言,易于编写和理解,但需要编译或解释成机器语言才能执行。
  • 操作系统:是计算机系统的核心软件,负责管理硬件和软件资源。掌握操作系统的基本原理和常见操作系统的特点及应用场景是架构师必备的技能之一。

4、计算机网络基础

  • 网络体系结构:包括OSI模型和TCP/IP协议栈等。OSI模型将网络划分为七层,而TCP/IP协议栈则简化为四层。了解这些模型的结构和每层的功能对于理解网络通信过程至关重要。
  • 网络设备:包括路由器、交换机、防火墙等。这些设备在网络中扮演着不同的角色,共同实现数据的传输和控制。
  • 网络协议:是网络通信的基础,规定了数据传输的格式、顺序、错误检测与纠正等机制。常见的网络协议包括IP协议、TCP协议、UDP协议等。

5、其他相关知识

  • 数据结构与算法:是计算机科学的基础,掌握常见的数据结构和算法对于提高程序性能和解决复杂问题具有重要意义。
  • 性能评估与优化:了解系统性能评估的方法和指标(如MIPS、MFLOPS等),以及性能优化的策略和技术(如缓存优化、并行处理等)。

二、嵌入式基础知识

1、嵌入式系统概述

  • 定义:嵌入式系统是一种以应用为中心,以计算机技术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。它通常由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。

2、硬件架构

  • 嵌入式处理器:是嵌入式系统的核心部件,负责执行程序代码和控制整个系统的运行。常见的嵌入式处理器包括ARM、MIPS、PowerPC等。这些处理器通常具有低功耗、高性能、体积小等优点,能够满足嵌入式系统对处理器性能的特殊要求。
  • 存储系统:包括ROM(只读存储器)、RAM(随机存取存储器)、Flash等。这些存储器用于存储程序代码、数据和运行结果等。嵌入式系统的存储系统通常具有容量小、速度快、可靠性高等特点。
  • 外围设备:包括I/O接口、定时器、中断控制器、DMA(直接内存访问)控制器等。这些外围设备为嵌入式系统提供了与外部世界交互的接口,能够实现对外部设备的控制和管理。

3、软件架构

  • 嵌入式操作系统:是嵌入式系统的关键组成部分,负责管理硬件和软件资源,提供任务调度、中断处理、内存管理等功能。常见的嵌入式操作系统包括Linux、μC/OS-II、FreeRTOS等。这些操作系统通常具有可移植性、可配置性、实时性等特点,能够满足嵌入式系统对操作系统的特殊要求。
  • 支撑软件:包括编译器、调试器、模拟器等。这些支撑软件为嵌入式系统的开发和调试提供了必要的工具和环境,能够提高开发效率和系统性能。
  • 应用软件:是嵌入式系统的最终表现形式,用于实现系统的特定功能。应用软件的开发需要基于嵌入式操作系统和硬件平台进行,同时需要考虑系统的实时性、可靠性、安全性等要求。

4、开发环境与工具

  • 开发环境:包括交叉编译器、集成开发环境(IDE)等。交叉编译器能够在宿主机上编译出针对目标机的可执行代码;IDE则提供了代码编辑、编译、调试等一站式开发服务,能够提高开发效率。
  • 调试工具:包括JTAG调试器、仿真器等。这些调试工具能够实现对嵌入式系统的在线调试和故障排查,是嵌入式系统开发过程中不可或缺的工具。

5、应用领域

嵌入式系统广泛应用于各个领域,包括消费电子、汽车电子、工业自动化、航空航天、医疗电子等。随着物联网、人工智能等技术的不断发展,嵌入式系统的应用领域还将不断拓展和深化。

三、计算机网络基础知识

1、计算机网络概述

  • 定义:计算机网络是计算机技术与通信技术相结合的产物,它通过通信线路和通信设备将地理位置不同的、功能独立的多个计算机系统互连起来,以功能完善的网络软件实现网络中资源共享和信息传递的系统。
  • 功能:计算机网络的主要功能包括数据通信、资源共享、分布式处理以及提高系统的可靠性和可用性。

2、网络体系结构

  • OSI模型:开放系统互连参考模型(OSI模型)将网络划分为七层,从低到高分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。每一层都建立在下一层提供的服务之上,并为上一层提供服务。
  • TCP/IP协议栈:TCP/IP协议栈是互联网的基础协议栈,它将网络划分为四层,分别是网络接口层、网际层、传输层和应用层。TCP/IP协议栈与OSI模型在层次划分上有所不同,但两者在功能上大致对应。

3、网络协议

重要协议:

  • IP协议:网络层协议,负责数据包的路由和转发。
  • TCP协议:传输层协议,提供面向连接的、可靠的、基于字节流的数据传输服务。
  • UDP协议:传输层协议,提供无连接的、不可靠的、基于数据报的数据传输服务。
  • HTTP协议:应用层协议,用于Web浏览器和服务器之间的通信。
  • DHCP协议:动态主机配置协议,用于自动分配IP地址给网络中的设备。
  • DNS协议:域名系统协议,用于将域名解析为IP地址。

4、网络设备

主要设备:

  • 路由器:连接不同网络的设备,根据IP地址进行路由选择和数据转发。
  • 交换机:在局域网内部进行数据交换的设备,可以提高网络传输效率。
  • 防火墙:用于保护网络安全,防止未经授权的访问和数据泄露。
  • 网关:连接不同网络的设备,通常具有路由和转换协议的功能。

5、网络技术

  • 无线网络技术:包括Wi-Fi、蓝牙、Zigbee等,用于实现无线设备之间的通信和数据传输。
  • 虚拟网络技术:如VLAN(虚拟局域网),用于在物理网络上划分多个逻辑网络,提高网络的安全性和管理效率。
  • 云计算与虚拟化技术:云计算通过虚拟化技术将计算资源、存储资源和网络资源封装成一个独立的虚拟环境,为用户提供按需服务。

6、网络管理

  • 网络管理功能:包括网络配置管理、性能管理、故障管理、安全管理和计费管理等。
  • 网络管理工具:如SNMP(简单网络管理协议)和CMIP(公共管理信息协议)等,用于实现网络设备的远程监控和管理。

7、网络安全

  • 安全威胁:包括病毒、木马、黑客攻击、拒绝服务攻击等。
  • 安全措施:包括加密技术、防火墙技术、入侵检测技术、访问控制技术等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/48519.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫自己做的

1.urllib 1.1基本使用 1.2 下载(图片,页面,视频) 1.3 get 1.3.1 quote 中文变成对应uncode编码 当url 的wd中文时 quote是将中文变成对应uncode编码 然后拼接成完整的url 1.3.2urlencode方法 wd有多个参数 1.3.3ajas get实例 …

Connecting weaviate with langflow across docker containers

题意:在Docker容器之间连接Weaviate与Langflow 问题背景: I am trying to build a local RAG application using Langflow. For my vectore store, I want to use a local Weaviate instance, hosted in a separate docker container on the same netwo…

KAFKA搭建教程

KAFKA搭建教程 期待您的关注 KAFKA学习笔记 帮助更多人 目录 KAFKA搭建教程 1.下载Kafka并解压 2.添加环境变量 3.修改 server.properties 文件 4.将kafka复制到其它节点 5.修改node1、node2节点的broker.id 6.将master的环境变量同步到node1、 node2 7.启动zookeeper…

SQL中的游标是什么?

在 SQL 中,游标(Cursor)是一种用于遍历结果集的数据库对象。它允许开发者在 SQL 查询的结果集中逐行或逐批处理数据。 具体来说,SQL 中的游标通常用于以下目的: 遍历结果集:当一个 SQL 查询返回多行结果时…

BDD实践指南:Xcode中的行为驱动开发之道

BDD实践指南:Xcode中的行为驱动开发之道 在软件开发领域,行为驱动开发(Behavior Driven Development, BDD)是一种鼓励协作和需求理解的敏捷开发方法。BDD专注于用户行为和期望结果,通过具体的用例来指导开发过程。Xco…

Python 热门面试题(七)

Python中如何拷贝对象?浅拷贝和深拷贝的区别是什么? 在Python中,拷贝对象是一个常见的需求,尤其是当你需要修改一个对象但又不想影响原始对象时。Python提供了几种拷贝对象的方法,其中最重要的是浅拷贝(sh…

昇思25天学习打卡营第21天|RNN实现情感分类

Mindspore框架循环神经网络RNN模型实现情感分类 Mindspore框架循环神经网络RNN模型实现情感分类|(一)数据集准备 Mindspore框架循环神经网络RNN模型实现情感分类|(二)RNN模型 Mindspore框架循环神经网络RNN模型实现情感分类|&…

C++ versions less than C++14/11 are not supported.报错

点个关注吧! 安装TFHE遇见以下报错 TFHE报错C versions less than C14 are not supported. 1.进入TFHE文件夹 2.找到并进入src文件夹 3.打开CMAKELists.txt 4.在文件中添加以下两条命令 set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON)

PostgreSQL 中如何解决因大量并发删除和插入操作导致的索引抖动?

🍅关注博主🎗️ 带你畅游技术世界,不错过每一次成长机会!📚领书:PostgreSQL 入门到精通.pdf 文章目录 PostgreSQL 中如何解决因大量并发删除和插入操作导致的索引抖动一、理解索引抖动二、索引抖动的影响三…

js之深入对象和内置构造函数

这里写目录标题 一级目录二级目录三级目录 一、深入对象1.创建对象三种方式2.构造函数3.实例成员4.静态成员 二、内置构造函数1.Object2.Array3.String4.Number 一级目录 二级目录 三级目录 一、深入对象 1.创建对象三种方式 利用对象字面量创建对象 利用new Object创建对…

obj导入u3d

导入OBJ模型到‌Unity步骤 将无人机/船扫描的模型,生成obj格式; 将文件直接拷贝到asset文件夹,为了后期方便管理,最好起个名字 通过模型直接拖拽到场景即可;坐标系可能不一样,需要特殊处理

SpringBoot应用从jar包部署改为war包部署要做哪些修改

吾名爱妃,性好静亦好动。好编程,常沉浸于代码之世界,思维纵横,力求逻辑之严密,算法之精妙。亦爱篮球,驰骋球场,尽享挥洒汗水之乐。且喜跑步,尤钟马拉松,长途奔袭&#xf…

Ubuntu 20安装JDK17和MySQL8.0

一.jdk 安装JDK 第一步:更新软件包:sudo apt update 第二步:安装JDK:sudo apt install openjdk-17-jdk 第三步:检测JDK: java -version 卸载JDK: 第一步:移除JDK包:apt-get purg…

nginx通过nginx_upstream_check_module实现后端健康检查

1、简介说明 nginx是常用的反向代理和负载均衡服务,具有强大并发能力、稳定性、丰富的功能集、低资源的消耗。 nginx自身是没有针对后端节点健康检查的,但是可以通过默认自带的ngx_http_proxy_module 模块和ngx_http_upstream_module模块中的相关指令来完…

【Langchain大语言模型开发教程】基于文档问答

🔗 LangChain for LLM Application Development - DeepLearning.AI Embedding: https://huggingface.co/BAAI/bge-large-en-v1.5/tree/main 学习目标 1、Embedding and Vector Store 2、RetrievalQA 引包、加载环境变量 import osfrom dotenv import…

Vue中的事件修饰符?

在Vue.js中,事件修饰符提供了一种简洁的方式来处理DOM事件中的常见问题,如阻止事件冒泡、阻止默认行为等。Vue的事件修饰符以.开头,可以串联使用多个修饰符。以下是一些常用的事件修饰符: 1.stop: 阻止事件冒泡。等同于在原生事件…

python多进程库(multiprocessing)

multiprocessing本身是Python的多进程库,用来处理与多进程相关的操作。但是由于进程与进程之间不能直接共享内存和堆栈资源,而且启动新的进程开销也比线程大得多,因此使用多线程来爬取比使用多进程有更多的优势。multiprocessing下面有一个du…

【BUG】已解决:OSError: [Errno 22] Invalid argument

已解决:OSError: [Errno 22] Invalid argument 目录 已解决:OSError: [Errno 22] Invalid argument 【常见模块错误】 错误原因: 解决方法如下: 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&…

240720_图像语义分割中数据集原图与标签对比查漏

240720_图像语义分割中数据集原图与标签对比查漏 核对原图和标签是否一一对应的工作是必要的,不然在训练过程中可能会发生已经训练了好几个epoch了,突然给你报xx.png找不到,然后你去删除掉了对应的jpg,但是在重新运行几个epoch之…

快速认识EA(Enterprise Architecture)

前言 企业架构,英文是:Enterprise Architecture,简称:EA,是承接企业战略规划与IT建设之间的桥梁,是企业信息化的核心,主要包括业务架构和IT架构。 架构的本质是管理和解决系统的复杂性&#x…