【软考-架构】1.2、指令系统-存储系统-cache
GitHub地址:https://github.com/tyronczt/system_architect
✨资料&文章更新✨
指令系统
计算机指令执行过程:取指令一一分析指令一一执行指令三个步骤,首先将程序计数器PC中的指令地址取出,送入地址总线,CPU依据指令地址去内存中取出指令内容存入指令寄存器IR;而后由指令译码器进行分析,分析指令操作码:最后执行指令,取出指令执行所需的源操作数。
CISC 是复杂指令系统,兼容性强,指令繁多、长度可变,由微程序实现;
RISC 是精简指令系统,指令少,使用频率接近,主要依靠硬件实现(通用寄存器、硬布线逻辑控制)。
考试真题
第一题
答案为:第一空选 A,第二空选 D。
以下是具体解析:
- Flynn 分类法的概念:Flynn 分类法是根据计算机在执行程序过程中指令流和数据流的不同组合,将计算机系统分为 4 类。其中,指令流是指机器执行的指令序列,数据流是指由指令流调用的数据序列,包括输入数据和中间结果,但不包括控制信息。
- Flynn 分类法的 4 类计算机
- 单指令流单数据流(SISD):这种计算机每次只执行一条指令,并且只对一个数据进行操作。传统的冯・诺依曼体系结构的计算机就属于 SISD 类型,如早期的个人计算机。
- 单指令流多数据流(SIMD):SIMD 计算机有多个处理单元,它们在同一个控制部件的控制下,执行相同的指令,但操作于不同的数据上。典型的应用场景是对大量数据进行相同的处理,如向量处理机、阵列处理机等。
- 多指令流单数据流(MISD):MISD 计算机具有多个处理单元,每个处理单元可以执行不同的指令,但都对同一个数据进行操作。这种结构在实际中应用较少,因为它的实用性相对较低,一个数据被多个不同的指令处理可能会导致数据处理的复杂性和不确定性增加。
- 多指令流多数据流(MIMD):MIMD 计算机中有多个处理单元,它们可以独立地执行不同的指令,并且操作于不同的数据上。当前主流的多核计算机就属于 MIMD 类型,每个核心都可以独立地处理不同的任务或程序,多个核心之间可以通过共享内存或其他通信机制进行协作,从而实现多任务并行处理,提高计算机的整体性能和效率。
第二题
正确选项是 D. 指令长度不固定,指令格式和寻址方式多。
复杂指令集计算机(CISC)设计的初衷是为了通过单条指令完成复杂的任务,从而减少程序的指令数量和提高程序的执行效率。以下是各选项的具体分析:
A. 只设置使用频度高的一些简单指令,不同指令执行时间差别很小 - 这个描述更符合精简指令集计算机(RISC)的特点,而非CISC。CISC包含了大量的复杂指令,包括一些不常用的指令,这些指令的执行时间可能会有很大差异。
B. CPU中设置大量寄存器,利用率低 - 这个描述并不准确。虽然CISC架构确实可能拥有较多的寄存器,但其主要特征并不是寄存器利用率低。实际上,寄存器的利用情况更多依赖于编译器优化和具体的应用场景。
C. 常采用执行速度更快的组合逻辑实现控制器 - 这一点也是RISC架构的一个特点,因为RISC倾向于使用硬连线控制来加速指令处理。而CISC系统通常更复杂,可能会使用微代码(microcode)来实现指令解码和执行。
D. 指令长度不固定,指令格式和寻址方式多 - 这确实是CISC的一个重要特征。CISC架构支持多种不同的寻址模式和指令格式,并且为了灵活性,指令长度通常是可变的。这使得CISC处理器能够处理各种复杂操作,尽管这也增加了指令解码的复杂性。
指令系统-流水线
流水线周期:指令分成不同执行段,其中执行时间最长的段为流水线周期。
流水线执行时间:1条指令总执行时间 +(总指令条数-1)* 流水线周期。
流水线吞吐率计算:吞吐率即单位时间内执行的指令条数。
公式:指令条数/流水线执行时间。
流水线的加速比计算:加速比即使用流水线后的效率提升度,即比不使用流水线快了多少倍,越高表明流水线效率越高,
公式:不使用流水线执行时间/使用流水线执行时间。
考试真题
第一题
流水线的吞吐率是指单位时间内流水线完成的任务数或输出的结果数。在流水线中,如果各段的操作时间不同,那么流水线的吞吐率将由耗时最长的那段决定,因为这将决定整个流水线完成一个任务所需的总时间。
在这个问题中,流水线有5段,其中1段的时间为2ns,另外4段的时间为1ns。由于流水线是并行工作的,所以完成一个任务的总时间将是各段时间中的最大值,即2ns。但是,这只是完成第一个任务的时间。从第二个任务开始,每个任务都只需要额外的2ns,因为流水线中的各个段可以同时处理不同的任务。
然而,这里有一个细节需要注意:当第一个任务进入流水线后,需要等待所有5段都完成后才能算作一个完整完成的任务。但从第二个任务开始,每进入一个新任务,只需要等待最慢的那一段(2ns)完成即可,因为其他段已经在处理前一个任务了。
因此,完成100个任务的总时间将是:
第一个任务的时间:2ns + 4 * 1ns = 6ns(所有段都完成第一个任务)
剩下99个任务的时间:99 * 2ns = 198ns(每个任务只需要最慢的那段时间)
总时间:6ns + 198ns = 204ns
但是,我们需要注意这里的单位。题目要求的是每秒的吞吐率,而我们的计算结果是以纳秒为单位的。所以,我们需要将总时间转换为秒:
204ns = 204 * 10^-9 s
然后,我们可以计算吞吐率:
吞吐率 = 完成的任务数 / 总时间
= 100 / (204 * 10^-9) ≈ 490 * 10^6 个/s
所以,利用此流水线完成100个任务的吞吐率约为490 * 10^6个/s,选项B是正确的。
第二题
答案:D C
第一空:单缓冲区时间计算
单缓冲区的关键限制在于读入缓冲区和传输至用户区必须串行执行。每个块的总时间由三个阶段组成:
- 第一块:读入缓冲区(15μs)→ 传输至用户区(5μs)→ 处理数据(1μs),共 21μs。
- 后续9块:由于缓冲区不可复用,每个块需等待前一块的读入和传输完成后才能开始,每块时间为 15μs(读入) + 5μs(传输) = 20μs。
总时间 = 21 + 9×20 = 201μs
对应选项 D
第二空:双缓冲区时间计算
双缓冲区的优势在于读入缓冲区与传输至用户区可并行:
- 第一块:读入缓冲区(15μs)→ 传输至用户区(5μs)→ 处理数据(1μs),共 21μs。
- 后续9块:读入缓冲区(15μs)可与前一块的传输和处理并行,因此每块仅需 15μs(读入)。
总时间 = 21 + 9×15 = 156μs
对应选项 C
第三题
第一空:完成n个连续任务的总时间
对于k段流水线,各段执行时间均为t,在理想情况下(任务连续输入且无阻塞),总时间的计算公式为:总时间 = (k + n - 1) × t
推导逻辑:
- 第一个任务需要完整经历k个阶段,耗时 k × t。
- 后续每个任务只需等待前一个任务完成一个阶段即可进入流水线,每个新增任务耗时 t,因此后续n-1个任务耗时 (n-1) × t 。
- 总时间为两者之和:k × t + (n-1) × t = (k + n - 1) × t。
对应选项 B。
第二空:流水线最大加速比
某5段浮点加法运算器的各段执行时间分别为6ns、7ns、8ns、9ns、6ns,计算其最大加速比:最大加速比 = 4
推导逻辑:
- 非流水线执行时间:每个任务需顺序执行所有阶段,总时间 6 + 7 + 8 + 9 + 6 = 36ns。
- 流水线周期:由最长的阶段时间决定,即 9ns。
- 流水线执行时间:处理n个任务的时间为 5 × 9 + (n - 1) × 9 = 9n + 36ns(当n→∞时,近似为 9n)。
- 加速比公式:
对应选项 A 。
存储系统
地址映射,由硬件自动完成映射,有三种方法:
- 直接映射
- 全相联映像
- 组组相连映像
考试真题
第一题
按照Cache地址映像的块冲突概率从高到低排列的顺序为:B. 直接映像→组相联映像→全相联映像
解析:
- 直接映像:主存中的每个块只能映射到Cache中唯一固定的块。若多个主存块映射到同一Cache块,则冲突概率最高。
- 组相联映像:将Cache分为若干组,组内全相联映射,组间直接映射。冲突概率介于直接映像和全相联之间,属于折中方案。
- 全相联映像:主存块可映射到Cache中任意块,冲突概率最低(仅当Cache满时才会冲突)。
排序逻辑:
直接映像的严格映射规则导致高冲突率,而全相联的灵活性最大程度减少了冲突,组相联通过分组部分缓解冲突,因此顺序为 直接映像 > 组相联映像 > 全相联映像。
第二题
关于Cache与主存间地址映射的正确叙述是:D. 由硬件自动完成Cache与主存之间的地址映射。
关键解析
- 硬件自动管理机制
Cache与主存的地址映射(包括直接映射、全相联映射、组相联映射)由计算机硬件逻辑电路实现,如地址转换部件、相联存储器(CAM)和比较器等。这些操作在CPU访存时实时完成,无需软件干预。 - 选项错误原因
- A. 操作系统负责管理:操作系统不参与实时地址映射,仅负责内存分配等高层管理,而非具体的Cache映射逻辑。
- B. 程序员编程处理:地址映射对程序员透明,无需通过代码控制,属于底层硬件功能。
- C. 应用软件调度:应用软件无法直接操作Cache映射规则,其运行依赖于硬件自动完成地址转换。
结论
Cache与主存的地址映射由硬件自动实现,确保高速访问和低延迟,与软件无关。正确答案为 D。
相关文章:
【软考-架构】1.2、指令系统-存储系统-cache
GitHub地址:https://github.com/tyronczt/system_architect ✨资料&文章更新✨ 指令系统 计算机指令执行过程:取指令一一分析指令一一执行指令三个步骤,首先将程序计数器PC中的指令地址取出,送入地址总线,CPU依据…...
Uniapp开发微信小程序插件的一些心得
一、uniapp 开发微信小程序框架搭建 1. 通过 vue-cli 创建 uni-ap // nodejs使用18以上的版本 nvm use 18.14.1 // 安装vue-cli npm install -g vue/cli4 // 选择默认模版 vue create -p dcloudio/uni-preset-vue plugindemo // 运行 uniapp2wxpack-cli npx uniapp2wxpack --…...
C++-第十八章:线程相关内容
目录 第一节:thread的主要内容 1-1.创建子线程 1-2.回收子线程 1-3.获得子线程的id 1-4.获得当前线程id 1-5.子线程传引用 1-6.线程的先创建后使用 第二节:mutex的主要内容 2-1.mutex的作用 2-2.智能锁 第三节:condition_variable的主要内…...
纯函数(Pure Function)概念
纯函数(Pure Function)概念 纯函数是函数式编程中的核心概念,满足以下两个条件: 确定性:相同的输入 永远得到相同的输出,不依赖外部状态或随机性。 无副作用:不会修改外部变量、参数、I/O设备或…...
【网络安全】敏感字段扫描工具(可用于漏洞挖掘、代码审计)
原创文章,禁止转载。 读者可对脚本进行二次创作,以适配个人需求。 文章目录 ScanSensitiveInfo.py效果图ScanSensitiveInfo.py 该脚本用于扫描敏感字段、代码中可能引入的第三方JS链接/服务以及可能涉及信息泄露的请求方法。 1、脚本采用单线程处理,避免多线程导致的混行问…...
介绍下pdf打印工具类 JasperPrint
JasperPrint 工具类深度解析 JasperPrint 是 JasperReports 框架中实现 PDF 打印的核心载体类,其本质是 填充数据后的可打印报表对象,承担着从模板编译、数据填充到格式输出的全流程控制。以下从 7 个维度展开深度解析: 一、核心定位与生命周…...
Deepseek Api Function Calling解析(tools、tool_calls)Deepseek函数调用流程图、Python代码示例
文章目录 Function Calling介绍**核心原理**1. **动态扩展模型能力**2. **JSON结构化交互** **实现步骤**(以支持Function Calling的模型为例)1. **定义可用函数**2. **模型匹配与生成**3. **开发者执行函数**4. **结果反馈给模型** **DeepSeek R1的当前…...
分享一套适合做课设的SpringBoot商城系统
开学季到了,不少同学都进入了学习的状态中去了,趁着今天有空来分享一套商城系统,这套代码实现了商城的前后台,整体界面和代码非常简洁,熟悉项目之后可以根据需求进行二次开发,也适合用来做毕设、课设&#…...
C语言自定义类型:联合和枚举
在C语言中,联合(Union)和枚举(Enum)是两种重要的的自定义数据类型。它们分别适用于不同的场景,能够提升代码的效率和可维护性。。本文将结合代码示例,详细讲解它们的声明、特点及使用方法。 一、…...
Redis SCAN 命令详解:安全遍历海量键的利器
一、SCAN 命令的核心价值 Redis 的 KEYS * 命令虽然可以遍历所有键,但在生产环境中直接使用可能导致服务阻塞(时间复杂度 O(n))。SCAN 命令通过游标分批次迭代,实现非阻塞式遍历,成为处理百万级键的安全选择。 二、命…...
文字滚动效果组件和按钮组件
今天和大家分享一个vue中好用的组件,是我自己写的,大家也可以自己改,就是文字的循环滚动效果,如下图,文字会向左移动,结束之后也会有一个循环,还有一个按钮组件,基本框架写的差不多了…...
Sqlserver安全篇之_TLS的证书概念
证书的理解 参考Sqlserver的官方文档https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/certificate-overview?viewsql-server-ver16 TLS(Transport Layer Security)传输层安全和SSL(Secure Sockets Layer)安全套接字层协议位于应用程序协议层和TCP/…...
VS Code 如何搭建CC++开发环境
VS Code 如何搭建C/C开发环境 文章目录 VS Code 如何搭建C/C开发环境1. VS Code是什么2. VS Code的下载和安装2.1 下载和安装2.2 环境的介绍 3. VS Code配置C/C开发环境3.1 下载和配置MinGW-w64编译器套件3.2 安装C/C插件3.3 重启VS Code 4. 在VS Code上编写C语言代码并编译成功…...
计算机网络之传输层(传输层的功能)
一、数据分段与重组 传输层从会话层接收数据,并将其分割成较小的数据段,以适应网络层的最大传输单元(MTU)限制。在目的端,传输层负责将这些数据段重新组合成原始数据,确保数据的完整性和正确性。 二、端口…...
中科大计算机网络原理 1.5 Internt结构和ISP
一、互联网的层次化架构 覆盖范围分层 主干网(Tier-1级) 国家级或行业级核心网络,承担跨区域数据传输和全球互联功能。例如中国的四大主干网(ChinaNET、CERNET等)以及跨国运营商(如AT&T、Deuts…...
【网络安全 | 渗透工具】小程序反编译分析源码 | 图文教程
未经许可,禁止转载。 本文仅供学习使用,严禁用于非法渗透测试,笔者不承担任何责任。 文章目录 1、下载Proxifier2、下载反编译工具unveilr3、寻找小程序文件包4、对文件包进行反编译5、对源码进行分析6、渗透思路6.1、查找敏感信息泄露6.2、解析加解密逻辑6.3、枚举 API 接口…...
在鸿蒙HarmonyOS手机上安装hap应用
一、下载工具 安装hap包需要用到小工具 。 二、解压到目录后,进入该文件夹,打开命令行,如下图 三、将下载好的hap包放入刚才解压的文件夹内(假设hap包文件名为app.hap) 四、连接好手机和电脑,手机需要打…...
SQLAlchemy系列教程:SQLAlchemy快速入门示例项目
SQLAlchemy是与数据库交互的Python开发人员不可或缺的库。这个强大的ORM允许使用python结构进行简单的数据库操作。设置过程很简单,并且允许可扩展的数据库应用程序开发。本文通过入门项目完整介绍SQLAlchemy的应用过程,包括安装依赖包,创建连…...
【大模型系列篇】DeepSeek开源周,解锁AI黑科技
🔥 Day1:FlashMLA —— GPU推理加速器 专为处理长短不一的AI推理请求而生,就像给Hopper GPU装上了智能导航,让数据在芯片上跑出3000GB/s的"磁悬浮"速度。✅ 已支持BF16格式|580万亿次浮点运算/秒FlashMLA G…...
【Java 基础(人话版)】Java SE vs Java EE
Java SE vs Java EE:有什么区别? 最近在学习 Java 的时候,总是会看到 Java SE 和 Java EE 这两个概念。刚开始有点迷糊,后来查了资料、做了一些实验,终于弄清楚了它们的区别。这里记录一下,希望对以后复习…...
Nmap使用指南
Nmap使用指南 Nmap (网络映射器) 是一款强大的应用网络扫描和安全核查工具,适合于网络管理和安全专家。本文将介绍Nmap的基本使用方法,包括基本命令和常用功能。 1. 基本使用方式 Nmap的基本命令格式如下: nmap [选项] 目标地址目标地址 可…...
C#-委托
Action 无返回值,多线程常用 Action<string> action1 (name) > Console.WriteLine($"hello {name}"); action1("tom"); Func 有返回值,扩展方法常用,最后一个参数是输出参数 Func<int, int, double>…...
Qt中如果槽函数运行时间久,避免阻塞主线程的做法
Qt中如果槽函数运行时间久,避免阻塞主线程的做法 一、解决步骤 创建一个工作线程类:继承自QObject,并在其中实现槽函数的逻辑。将工作线程类的实例移动到单独的线程中:通过moveToThread()方法将对象移动到新线程。启动线程&…...
SQLark 数据迁移|断点续迁已上线(Oracle-达梦)
数据迁移是 SQLark 最受企业和个人用户欢迎的功能之一,截止目前已帮助政府、金融、能源、通信等 50 家单位完成从 Oracle、MySQL 到达梦的全量迁移,自动化迁移成功率达 96% 以上。 在 Oracle 到达梦数据库迁移过程中,SQLark V3.3 新增 断点续…...
【学术会议论文投稿】Spring Boot实战:零基础打造你的Web应用新纪元
第七届人文教育与社会科学国际学术会议(ICHESS 2024)_艾思科蓝_学术一站式服务平台 更多学术会议请看:https://ais.cn/u/nuyAF3 目录 一、Spring Boot简介 1.1 Spring Boot的诞生背景 1.2 Spring Boot的核心特性 二、搭建开发环境 2.1…...
【Multipath网络层协议】MPTCP工作原理
常见网络层多路径协议介绍 MPTCP(Multipath TCP) MPTCP 是在传统 TCP 基础上进行扩展的协议,它允许在源端和目的端之间建立多个 TCP子流,这些子流可以通过不同的网络路径传输数据。 例如,一台笔记本电脑同时连接了 W…...
【网络安全】从NA到P1,我是如何扩大思路的?
未经许可,不得转载。 本文涉及漏洞均已修复。 文章目录 正文正文 在这篇文章中,我将向大家展示一个我发现的漏洞,该漏洞利用了一个硬编码的 Basic 认证头,获取了管理员权限。 首先,假设公司域名为“target.com”。 第一步是使用多种工具(如 Amass、subfinder、findoma…...
使用 Postman 访问 Keycloak 端点
1. 引言 在本教程中,我们将首先快速回顾 OAuth 2.0、OpenID 和 Keycloak。然后,我们将了解 Keycloak REST API 以及如何在 Postman 中调用它们。 2. OAuth 2.0 OAuth 2.0 是一个授权框架,它允许经过身份验证的用户通过令牌向第三方授予访问…...
[AI机器人] Web-AI-Robot机器人前瞻版--比奇堡海之霸凯伦
文章目录 简述开源Web-AI-Robot 项目-比奇堡-海之霸-凯伦 技术架构效果预览 简述 本项目配合前端项目bikini_bottom_karen_ui运行,来源于柒杉工作室(截止2025.2,目前我自己)。 打造一个只需要在浏览器上运行的AI智能机器人&#…...
FastAPI 学习笔记
简介: FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 并基于标准的 Python 类型提示。 关键特性: 快速:可与 NodeJS 和 Go 并肩的极高性能(归功于 Starlette 和 Pydantic&…...
CineMaster: 用于电影文本到视频生成的 3D 感知且可控的框架。
CineMaster是一种 3D 感知且可控的文本到视频生成方法允许用户在 3D 空间中联合操纵物体和相机,以创作高质量的电影视频。 相关链接 论文:cinemaster-dev.github.io 论文介绍 CineMaster是一种用于 3D 感知和可控文本到视频生成的新型框架。目标是让用…...
Linux上用C++和GCC开发程序实现两个不同PostgreSQL实例下单个数据库中多个Schema稳定高效的数据迁移到其它PostgreSQL实例
设计一个在Linux上运行的GCC C程序,同时连接三个不同的PostgreSQL实例,其中两个实例中分别有两个数据库中多个Schema的表结构分别与第三实例中两个数据库中多个Schema个结构完全相同,同时复制两个实例中两个数据库中多个Schema里的所有表的数…...
【Qt】ffmpeg照片提取、视频播放▲
目录 一、图像的成像原理: RGB成像原理: YUV成像原理: 二、多线程 三、ffmpeg解码(照片提取) 1.准备工作 (1)在工程文件夹里面新建三个文件夹 (2)在main函数中加…...
大语言模型中的 Token:它们是什么,如何工作?
引言 如果你使用过 ChatGPT 这样的 AI 工具,你可能会好奇:它是如何理解并生成文字的?大语言模型(LLM,Large Language Model)并不是直接处理整个句子或文章,而是拆分成一个个 Token(…...
如何评估所选择的PHP后端框架的性能?
大家在选择PHP后端框架的时候,如果想评估其性能如何,能不能扛得住你的项目?可以根据以下几点进行分析,帮助大家选择到更符合自己心目中的PHP后端框架。 1. 基准测试 基准测试是评估框架性能的基础方法,主要通过模拟高…...
从UNIX到Linux:操作系统进化史与开源革命
从UNIX到Linux:操作系统进化史与开源革命 一、操作系统:数字世界的基石 1.1 什么是操作系统? 操作系统(OS)是计算机系统的核心管理者,承担着三大核心使命: 硬件指挥官:直接管理C…...
神经网络 - 激活函数(Sigmoid 型函数)
激活函数在神经元中非常重要的。为了增强网络的表示能力和学习能力,激活函数需要具备以下几点性质: (1) 连续并可导(允许少数点上不可导)的非线性函数。可导的激活函数可以直接利用数值优化的方法来学习网络参数. (2) 激活函数及其导函数要尽可能的简单࿰…...
【AD】3-10 原理图PDF导出
文件—智能PDF 多页原理图导出 导出设置时选择工程,可自行选择导出一页或多页原理图,一般PCB不用导出...
Linux上用C++和GCC开发程序实现两个不同MySQL实例下单个Schema稳定高效的数据迁移到其它MySQL实例
设计一个在Linux上运行的GCC C程序,同时连接三个不同的MySQL实例,其中两个实例中分别有两个Schema的表结构分别与第三实例中两个Schema个结构完全相同,同时复制两个实例中两个Schema里的所有表的数据到第三个实例中两个Schema里,使…...
C进阶 自定义类型
目录 前言 一 结构体 二 结构体的存储 三 位段 四 枚举 五 联合体 总结 前言 我们之前学习的int char double ......都是内置类型,但是我们今天所学习的是自定义类型,比如联合体,结构体,枚举 一 结构体 结构体是一…...
010 rocketmq批量消息
文章目录 批量消息BatchProducer.javaBatchConsumer.java 批量消息 批量发送可以提⾼发送性能,但有⼀定的限制: topic 相同 waitStoreMsgOK 相同 (⾸先我们建设消息的iswaitstoremsgoktrue(默认为true), 如果没有异常,我们将始终收到"O…...
【华三】从零开始掌握SR技术:原理、架构与应用全解析
【华三】从零开始掌握SR技术:原理、架构与应用全解析 一、初识SR:路由技术的新革命1.1 传统网络的困扰:从真实案例看技术瓶颈1.1.1 企业网络运维之痛问题2:流量工程实现困难问题3:网络智能化缺失 1.2 SR的诞生意义&…...
安全模块设计:token服务、校验注解(开启token校验、开启签名校验、允许处理API日志)、获取当前用户信息的辅助类
文章目录 引言pom.xmlI 校验注解ApiValidationII token服务TokenService获取当前用户信息的辅助类III 域登录接口响应数据登陆用户信息引言 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/PO…...
考虑复杂遭遇场景下的COLREG,基于模型预测人工势场的船舶运动规划方法附Matlab代码
考虑复杂遭遇场景下的COLREG,基于模型预测人工势场的船舶运动规划方法附Matlab代码 一、引言 1.1、研究背景和意义 随着全球航运业的迅猛发展,船舶交通密度不断增大,海上交通事故频发,严重威胁到海上航行的安全。国际海上避碰规…...
构建高效系统:API接口设计规范详解
在当今的数字化时代,应用程序接口(API,Application Programming Interface)已成为连接不同软件系统和服务的桥梁,是推动数字化转型的关键技术之一。无论是企业内部系统集成、第三方服务接入,还是面向开发者…...
【文献阅读】A Survey Of Resource-Efficient LLM And Multimodal Foundation Models
发表时间:二〇二四年九月二十三日 摘要 大型基础模型,包括大语言模型(LLMs)、视觉Transformer(ViTs)、扩散模型以及基于大语言模型的多模态模型,正在革新整个机器学习的生命周期,…...
mysql 全方位安装教程
下载 MySQL 【官网下载地址】 注意要选择较大的哪个安装包,小的安装包是一个安装器。 我们不用登录,直接下载 直接运行下载好的安装包 MySQL如果是 安装包安装, 可以图形化界面自主配置 如果是压缩包解压, 可以配置 配置文件, 可以解压安装到指定的…...
【Linux】Linux的进程控制
目录 1. 学习思维导图 2.进程创建(fork) 2.1 fork创建进程失败 3.进程终止 3.1 进程退出情况 3.1.1main函数 3.1.2 退出码 3.2 exit/_exit函数 1. exit() 函数 2. _exit() 函数 4.进程等待 4.1 实现进程等待的方法 wait/waitpid方法 区别&a…...
金融支付行业技术侧重点
1. 合规问题 第三方支付系统的平稳运营,严格遵循《非银行支付机构监督管理条例》的各项条款是基础与前提,其中第十八条的规定堪称重中之重,是支付机构必须牢牢把握的关键准则。 第十八条明确指出,非银行支付机构需构建起必要且独…...
Django模型管理器/QuerySet 常见的方法
模型管理器/QuerySet 常见的方法 get([**kwargs]) 方法 用途:获取满足条件的唯一对象。参数:关键字参数,指定查询条件。返回值:模型对象。异常:如果找到多个对象或未找到对象,将分别抛出 MultipleObjects…...