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

微机原理与接口技术-第七章输入输出接口

文章目录

  • I/O接口概述
      • I/O接口的典型结构
      • 基本功能
    • I/O端口的编址
      • 独立编址
      • 统一编址
    • 输入输出指令
      • I/O寻址方式
      • I/O数据传输量
      • I/O保护
    • 16位DOS应用程序
      • DOS平台的源程序框架
      • DOS功能调用
  • 无条件传送和查询传送
    • 无条件传送
      • 三态缓冲器
      • 锁存器
      • 接口电路
    • 查询传送
      • 查询输入端口
      • 查询输出端口
  • 中断控制系统
    • 中断传送
    • 中断源识别
    • 中断优先权排队
    • 中断嵌套
    • IA-32的中断系统
      • 内部中断
      • 外部中断
      • 中断和异常的响应过程
      • 中断描述符和中断向量表
    • 内部中断服务程序
      • 特点
    • 中断控制器
      • 8259A的寄存器
      • 8259A的工作方式
    • 外部中断服务程序

I/O接口概述

I/O接口的典型结构

  • 内部结构
    I/O接口电路实际是比较复杂的,但从应用角度,我们可以简化为3类可编程的寄存器,分别对应3类信号。
  1. 数据寄存器:保存处理器和外设之间交换的数据,可以分为数据输入寄存器和数据输出寄存器
  2. 状态寄存器:保存外设或其接口电路当前的工作状态信息
  3. 控制寄存器:保存处理器控制接口电路和外设操作的有关信息
  • 外部特性
    接口电路位于处理器和外设之间,起着桥梁作用
  1. 面向处理器一侧的信号与处理器总线或系统总线类似,有数据信号、地址信号、控制信号,以方便与处理器连接
  2. 面向外设一侧的信号与外设有关,以便与外设连接,由于外设种类太多,面向外设的一侧也各不相同。

基本功能

  1. 数据缓冲
  2. 信号变换

I/O端口的编址

独立编址

独立编址是将I/O端口单独编排地址,独立于存储器地址。

  • 优点
    1. 不占用存储器空间
    2. 专门的I/O指令比较清晰
  • 缺点:I/O指令功能简单,寻址方式没有存储器丰富
    80x86采用独立编址方式,只使用最低16位地址信号,对应64K个8位I/O端口,这64K地址空间补需要分段管理,只能使用指令输入指令IN,和输出指令OUT访问

统一编址

统一编址是将I/O端口和存储器地址统一编排,共享一个地址空间。

  • 优点
    1. 不需要设计专门的I/O指令和引脚
    2. 具有和存储器寻址一样丰富的寻址方式
  • 缺点
    1. 占用存储地址空间
    2. 通过指令不易辨认是I/O操作

输入输出指令

  • 输入指令IN AL/AX/EAX, i8/DX
  • 输出指令OUT i8/DX, AL/AX/EAX

I/O寻址方式

IA-32处理器的I/O寻址方式只有两种,直接寻址和通过DX间接寻址

  • 直接寻址:由I/O指令直接提供8位I/O地址,只能寻址最低256个I/O地址(00-FFH)
  • 间接寻址:用DX寄存器保存访问的I/O地址,能访问的地址(0000-FFFFH)

I/O数据传输量

IN/OUT指令只允许通过累加寄存器EAX与外设交换数据。8位I/O指令使用AL,16位I/O指令使用AX,32位I/O指令使用EAX

  • IN指令:外设数据进入处理器的AL/AX/EAX
  • OUT指令:处理器数据通过AL/AX/EAX送出
in al, 21h ;从地址为21H的I/O端口读一个字节数据到AL
mov dx, 300h ;DX指向300H端口
out dx, al ;将AL中的字节数据送到地址为300H(DX)的I/O端口

I/O保护

对于输入输出指令INOUTINSOUTS,还有中断标志设置指令CLISTI的执行涉及I/O端口,称之为I/O敏感指令。
标志寄存器EFLAGS有一个IOPL字段,表示程序具有的I/O特权级,只有程序的当前特权级低于或等于I/O特权级,I/O敏感指令才可以执行

16位DOS应用程序

DOS平台的源程序框架

; eg0700.asm in DOSinclude io16.inc	;包含16位输入输出文件.data 	;定义数据段代填....code	;定义代码段
start:mov ax, @datamov ds, ax.....exit 0	;程序正常执行结束.....end start	;汇编结束

eg:输出Hello World

	include io16.inc.data
msg	byte 'Hello, Assembly!', 13, 10, 0	;定义要显示的字符串.code
start:mov ax,@datamov ds,axmov eax, offset msgcall dispmsgexit 0end start

DOS功能调用

DOS利用软件中断方式提供系统功能。IA-32处理器支持256个中断,每个中断用一个中断编号区别,即中断0~中断255号,中断调用指令是INT N,其中N表示调用的中断号。
DOS系统调用一般有如下四个步骤:

  1. 在AH寄存器中设置系统功能调用号
  2. 在指定寄存器中设置入口参数
  3. 用中断调用指令(INT N)执行功能调用
  4. 根据出口参数分析功能调用的执行情况
    1、3这两个步骤是一定需要的,2、4只是某些指令会用到
    DOS功能调用的终端号主要是21H,利用AH寄存器区别各种子功能
    image
    dispmsg子程序
dispmsg	procpush eaxpush ebxpush edxmov ebx, eax
dispm1:	mov al, [ebx] ;取一个字符test al, al	;判断是否结尾(0)jz	dispmsg2mov ah, 2	;AH=2,显示一个字符的DOS功能mov dl, al	;设置入口参数int	21h		;调用DOS(INT 21H)系统功能inc ebxjmp	dispm1
dispm2: pop edxpop ebxpop eaxret
dispmsg	endp

无条件传送和查询传送

I/O接口的主要功能之一就是实现外设和主机的数据传送。数据传送可以通过处理器执行I/O指令完成,分为无条件传送、查询传送、中断传送。外设数据传送还可以以硬件为主加快传输速度,如直接存储器存取(DMA)、使用专门的I/O处理器

无条件传送

有些设备状态很少变化,可以认为总是处于就绪状态,随时可以进行数据传送,这就是无条件传送,有时也称为立即传送或同步传送
用于无条件传送的I/O接口电路十分简单,接口中只考虑数据缓冲,不考虑信号联络

三态缓冲器

三态指的是01高阻值
image

锁存器

在输出接口电路中,一般会安排一个锁存环节(锁存器),以便将数据总线的数据暂时锁存,使较慢的设备有足够的时间进行处理,此时处理器可以利用系统总线完成其他工作。

接口电路

  • 74LS244:为输入端口
  • 74LS273:为输出端口
  • D0~D7:数据总线
  • A0~A15:地址线
  • 74LS06反相驱动器:相当于8个非门

image

mov dx, 8000h ;dx向输入端口
in al, ax 	;从输入端口读取开关状态
not al		;将开关取反
out dx, al	;送入输出端口
call delay	;调用子程序Dalay进行延时

查询传送

查询传送也称为异步传送。当处理器需要与外设交换数据时,首先查询外设的工作状态,只有在外设准备就绪的情况下才进行数据传送。
image

查询输入端口

image

		mov dx, 5001h	;dx指向状态端口
status:	in al, dx		;读取端口的状态test al, 01		;查询状态是否九旬jz status		;D0=0状态未就绪继续查询dec dx			;D0=1状态已就绪,dx指向5000hin al, dx		;从数据端口读数据

查询输出端口

image

  • 8位锁存器:构成数据输出寄存器(数据端口),一侧连接系统的输出总线,一侧连接输出设备
  • 1位三态缓冲器和1位锁存器构成状态寄存器(状态端口):I/O译码地址位5001H

当处理器想要输出数据到外设时,首先应该查询状态端口,图上电路设计D7=0时0,表示外设已经准备就绪可以接收数据。此时处理器可以将数据写入数据端口,写入信号也作为D触发器的控制信号将D触发器置位为1,以便通知外设接收数据。当外设取走数据后~ACK会将D触发器重新置位为0,这时外设就又处于可以接收数据的状态了

		mov dx, 5001h
status:in al, dxtest al, 80hinz statusdec dxmov al, bufout dx, al

中断控制系统

中断传送

image

  • 中断请求:中断请求是外设向处理器提出的,对处理器来说它是随机发生的,但处理器的响应只会在每条指令的最后一个时钟周期区采样中断请求的输入引脚,所以外设提出的中断请求必须维持到得到响应
  • 中断响应:中断响应是有一定条件的
    1. 处理器只在每条指令执行完时才会去检测中断输入引脚,才可能响应
    2. 对可屏蔽中断,处理器应处在允许可屏蔽中断响应的状态
    3. 在中断请求时,处理器优先响应优先级更高的中断
    4. 中断请求应保持到响应他为止
    5. 如果遇到处理器正在执行中断返回、开中断等指令,则它必须在执行完现行指令后再接着执行一条其他指令,然后才能响应新的中断。这么做的目的是隔离两个中断
  • 关中断:处理器在响应中断后会关闭中断即不在响应其他中断,如果允许中断服务程序也被中断(中断嵌套),需要用户编程再次打开中断
  • 断点保护:保护断点地址和标志寄存器
  • 中断源识别:微机系统可能有多个发生中断的原因,处理器首先识别出是哪个中断源提出请求
  • 保护现场:一般是保护寄存器
  • 中断服务:处理器执行响应的中断服务程序
  • 恢复现场:恢复原来的工作环境
  • 开中断:处理器响应中断后,一般都会自动关闭中断。如果用户不将它打开,在整个中断过程中处理器不会再响应其他新的中断,至少在中断返回前将中断打开
  • 中断返回IRET指令,相较于RET指令会进行更多的恢复工作,如恢复标志寄存器

中断源识别

中断源识别主要采用中断向量

中断优先权排队

中断优先权排队是系统设计者事先为每个中断源确定优先处理顺序

中断嵌套

当处理器正在为某个中断进行服务时,又有新的中断处理原则:

  1. 新的中断请求优先权低于或等于当前正在服务的中断,则不予处理或待当前中断完成后再处理
  2. 新的中断请求优先权高于或等于当前正在服务的中断,处理器暂停当前工作,先服务级别更高的中断

IA-32的中断系统

IA-32的中断系统采用向量中断机制,能处理255个中断,用中断向量号0~255,其中可屏蔽中断还需要借助外部中断控制器实现优先权管理

内部中断

内部中断是由于处理器内部的执行程序出现异常引起的程序中断,也称异常,例如执行除法指令出现的除法错误异常(向量号0),用于程序调试的异常(向量号1)和断点异常(向量号3)等

  1. 除法错异常
    在执行指令DIV或IDIV时,若除数为0或商超过了寄存器所能表达的范围,则产生一个向量号为0的内部终端,称为除法错异常
; ata
msg	byte 0dh, 0ah,'No divide overflow!',0
; .codecall readuiwmov bl, 1div blmov eax, offset msg ;没有除法错误显示信息call dipmsg
  1. 溢出异常
    在执行溢出中断指令INTO时,若溢出标志OF为1,则产生一个向量号为4的内部中断,称为溢出中断
; .ata
msg byte 0dh, 0ah, 'NO overflow !', 0
; .codecall readuib	;输入一个无符号整数all al, 100		jno noflow		;没有产生溢出,则输出未产生溢出信息into			;有溢出产生溢出中断jmp done		
noflow:mov eax, offset msgcall dispmsg
done:

外部中断

外部中断时由于处理器外部提出中断请求引起的程序中断。相对于处理器来说,外部中断时随机产生的,索引这里外部中断才是真正意义上的中断。外部中断分为两种,一种是可屏蔽中断,另一种是不可屏蔽中断

  • 不屏蔽中断:
    外部通过不可屏蔽中断(NMI)请求信号向处理器提出中断请求,处理器在当前指令执行结束就予以响应,这个终端就是不可屏蔽中断,IA-处理器给不可屏蔽中断分配的向量号是2,主要用于处理系统的意外或故障,如电源掉电、存储器读写错误
  • 可屏蔽中断
    对来自外部可屏蔽中断请求信号,在当前指令结束执行后予以响应,同时输出可屏蔽中断响应信号~INTA
    除了要求当前指令执行结束外,对可屏蔽中断请求,处理器是否响应还取决于中断标志的状态。在IA-处理器中,若IF=1,则处理器是开中断的,可以响应,若IF=0,则处理器是关中断的,不能响应。

中断和异常的响应过程

image

中断描述符和中断向量表

  • 中断描述符保护方式下,每个中断服务程序由一个中断描述符指向,中断描述符中保存着中断服务程序的16位段选择器、32位偏移地址和中断特权层,中断描述符保存在系统的中断描述符表中,由中断描述符表地址寄存器IDTR给出其地址。系统最多有256个中断,每个中断描述符包含8个字节,所以中断描述符表最大2KB(256*8),以中断描述符表所在的地址为基础,中断向量号乘以8就对用其中断描述符

  • 中断向量表实地址方式下使用中断向量表直接保存中断服务程序的入口地址。中断服务程序的地址含有16位段基地址CS(高字部分)和16位偏移地址IP(低字部分),共4个字节,按照低对低、高对高的小端存储方式保存在中断向量表中。中断向量表被处理器固定地安排在以物理地址最低端00000H开始,从中断向量号0依次安排在每个中断服务程序地址,256个中断占用1KB区域,向量号为N的中断服务程序地址要从物理地址=N*4取得
    image

内部中断服务程序

特点

  1. 与编写子程序类似,都是利用过程定义伪指令PROC和ENDP
  2. 进入中断服务程序后通常要执行STI指令开放可屏蔽中断
  3. 最后执行IRET指令返回
  4. 内部中断服务程序通常采用寄存器传递参数

eg:编写80H号中断服务程序,使其具有显示以0结尾字符串的功能。字符串缓冲区首地址为入口参数,利用DS和DX传递其段地址和偏移地址

;.data
intoff	word	?
intseg	word	?
intmsg	byte	'A Instruction Interrupt!',13,10,0
;.codemov ax,3580h	;获取系统的原80H中断向量表项int 21h			mov intoff,bx	;保存偏移地址mov intseg,es	;保存段基地址push dsmov dx,offset new80hmov ax,seg new80hmov ds,axmov ax,2580h	;设置本程序的80H中断向量表项int 21hpop ds;mov dx, offset intmsg	;设置入口参数DS和DXint 80h			;调用80H中断服务程序,显示字符串;mov dx,intoffmov ax,intsegmov ds,axmov ax,2580hint 21h;80H内部中断服务程序:显示字符串(以0结尾);DS:DX=缓冲区首地址
new80h	proc		;过程定义sti			;开中断push ax		;保护寄存器push bxpush simov si,dx
new1:	mov al,[si]		;获取想要显示的字符cmp al,0		;为0结束jz new2mov bx,0mov ah,0ehint 10hinc sijmp new1
new2:	pop sipop bxpop	axiret		;中断返回
new80h	endp		;中断服务程序结束

image

中断控制器

8259A的寄存器

8259A主要为用户提供了3个8位可读可写的寄存器

  • 中断请求寄存器:保存8个外界中断请求信号IR0~IR7的请求状态。Di位为1表示IRi引脚有中断请求;Di位为0表示IRi引脚无请求
  • 中断服务寄存器:保存正在被8259A服务的中断状态。Di位为1表示IRi中断正在服务中,Di位为0表示IRi中断没有被服务
  • 中断屏蔽寄存器:保存对中断请求信号IR的屏蔽状态。Di位为1表示IRi中断被屏蔽(禁止),Di位为0表示允许IRi中断。IMR对各个中断的屏蔽是相互独立的,对较高优先权的中断请求实现屏蔽,并不影响较低优先权的中断请求

8259A的工作方式

外部中断服务程序

相关文章:

微机原理与接口技术-第七章输入输出接口

文章目录 I/O接口概述I/O接口的典型结构基本功能 I/O端口的编址独立编址统一编址 输入输出指令I/O寻址方式I/O数据传输量I/O保护 16位DOS应用程序DOS平台的源程序框架DOS功能调用 无条件传送和查询传送无条件传送三态缓冲器锁存器接口电路 查询传送查询输入端口查询输出端口 中…...

YoloV8改进策略:独家原创,LSKA(大可分离核注意力)改进YoloV8,比Transformer更有效,包括论文翻译和实验结果

文章目录 摘要论文:《LSKA(大可分离核注意力):重新思考CNN大核注意力设计》1、简介2、相关工作3、方法4、实验5、消融研究6、与最先进方法的比较7、ViTs和CNNs的鲁棒性评估基准比较8、结论YoloV8官方结果改进一:测试结果摘要 本文给大家带来一种超大核注意力机制的改进方…...

7天易语言从入门到实战(一)

1.1易语言简介 易语言是一门有着伟大理想的语言。公司用的少,开发者也很少,并不影响国人对他的热情。曾经的多玩LOL,朗读女,都是陪伴再那个国产PC应用匮乏的时代。 2001年1月 吴涛研发了中国自主知识产权的的中文编程语言——易语…...

redis缓存问题

缓存击穿 缓存击穿是指某个热点数据存储在redis中,该数据在高并发的场景下,当该key过期时就会有大量的请求去查询数据库,对数据库的压力非常大,可能会导致数据库压垮。 解决方案 1.不为热点的key设置过期时间。 2.使用分布式锁…...

mysql创建自定义函数报错

mysql创建自定义函数报错:This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declarat… 这是我们开启了bin-log,我们就必须指定我们的函数是否是 1.DETERMINISTIC 不确定的 2.NO SQL没有sql语句,当然也不会修改数…...

Docker 的数据管理与网络通信以及Docker镜像的创建

目录 Docker的数据管理 1、数据卷 2、数据卷容器 3、端口映射 4、容器互联 二、Docker网络 1、Docker网络实现原理 2、Docker的网桥模式 1)Host 2)Container 3)none 4)bridge 5)自定义网络 3、创建自定义…...

linux系统查看bash的history

要输出最近的20条命令,可以使用history命令。在Bash终端中,输入以下命令即可获取最近的20条命令历史记录: history 20这将显示你最近执行的20条命令及其相应的行号。 要将最近的20条命令写入到一个名为 “command.txt” 的文本文件中&#…...

【T+】畅捷通T+增加会计科目提示执行超时已过期。

【问题描述】 在畅捷通T软件中, 增加会计科目的时候提示: 通过DataTable插入ext扩展表出错:执行超时已过期。 完成操作之前已超时或服务器未响应。 操作已被用户取消。 语句已终止。 【解决方法】 【方法一】 注销用户登录,回到软件登录界面…...

0基础学习VR全景平台篇第111篇:全景图拼接和编辑 - PTGui Pro教程

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 前情回顾:上节,我们将源图像导入了PTGui,也设置好了各项参数。 下面我们就开始拼接全景图,并且在编辑器里进行一系列检查错位和设…...

Dynamics 365 使用ILMerge 合并CRM开发后的DLL

很久以前写过一篇博文,关于用ILMerge 命令合并DLL,当时时纯敲命令行的,现在有了更简单的方式,只需要在NuGet下载如下两个包 另外插件引用第三方dll的新方案Preview来了,不久的将来就不需要使用ILMerge了...

SpringBoot Web请求响应

目录 前言请求PostmanPostman使用 简单参数原始方式接收普通参数SpringBoot方式接收普通参数参数名不一致问题 实体参数简单实体参数复杂实体对象 数组集合参数数组参数集合参数 日期参数JSON参数路径参数 响应ResponseBody统一响应结果请求响应案例案例需求与准备工作案例实现…...

Jenkins CLI二次开发工具类

使用Jenkins CLI进行二次开发 使用背景 公司自研CI/DI平台,借助JenkinsSonarQube进行代码质量管理。对接版本 Jenkins版本为:Version 2.428 SonarQube版本为:Community EditionVersion 10.2.1 (build 78527)技术选型 Java对接Jenkins有第…...

2. 计算WPL

题目 Huffman编码是通信系统中常用的一种不等长编码,它的特点是:能够使编码之后的电文长度最短。 更多关于Huffman编码的内容参考教材第十章。 输入: 第一行为要编码的符号数量n 第二行~第n1行为每个符号出现的频率 输…...

筹备三年,自动驾驶L3标准将至,智驾产业链的关键一跃

‍作者|张祥威 编辑|德新 多位知情人士告诉HiEV,智能网联汽车准入试点通知,乐观预计将在一个月内发布。试点的推动,意味着国家层面的自动驾驶L3标准随之到来。 「L3标准内容大部分与主机厂相关,由工信部牵头,找了几家…...

【Python】Python使用Switch语句

这里写目录标题 1.使用字典(Dictionary)2.使用if-elif-else 1.使用字典(Dictionary) 在 Python 中,没有内置的 switch 语句,但可以使用其他方式来实现类似的功能。以下是两种常见的方法: 使用…...

一年一度的1024程序员节

前言 1024 程序员节是中国程序员的节日,于每年的 10 月 24 日庆祝。这个节日旨在纪念和表彰程序员对科技和社会发展所做的贡献。 1024 程序员节最早由中国互联网公司 CSDN(中国软件开发者网)发起,自然而然地成为了中国程序员社区…...

第十七章 数据库操作

数据库基础 和JDBC概论和常用类和接口就不过多的说了 直接来到 数据库的操作 一开始是在数据库中插入了四个类型 两个int 两个varchar类型 再分别插入 名字 序号 号码 性别 然后再在java中操作增删改查 这几个操作 全部代码如下 package 第十七章; import j…...

RTI-DDS代码分析使用介绍

DDS(Data Distribution Service数据分发服务)是对象管理组织OMG的有关分布式实时系统中数据发布的规范。 DDS规范采用了发布/订阅体系结构,但对实时性要求提供更好的支持。DDS是以数据为中心的发布/订阅通信模型。 以下工程基于rti_connext_dds-7.2.0 hello_world.…...

ant-design-vue 3 a-table保留选中状态

业务需求需要保留选中状态 <a-table class"satistic-table" :row-selection"{ selectedRowKeys: selectedRowKeys, onSelect:onSelect,onSelectAll:onSelectAll }" :row-key"(row)>{ return row.customerId}" :columns"columns"…...

golang 工程组件:grpc-gateway option自定义http规则

option自定义http规则和http body响应 简介 本篇接上文 golang 工程组件&#xff1a;grpc-gateway 环境安装默认网关测试 默认网关配置终究是难用&#xff0c;本篇介绍一下proto里采用option自定义http规则以及让网关返回http响应而不是我们定义的grpc响应 option定义http…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

ZYNQ学习记录FPGA(一)ZYNQ简介

一、知识准备 1.一些术语,缩写和概念&#xff1a; 1&#xff09;ZYNQ全称&#xff1a;ZYNQ7000 All Pgrammable SoC 2&#xff09;SoC:system on chips(片上系统)&#xff0c;对比集成电路的SoB&#xff08;system on board&#xff09; 3&#xff09;ARM&#xff1a;处理器…...

文件上传漏洞防御全攻略

要全面防范文件上传漏洞&#xff0c;需构建多层防御体系&#xff0c;结合技术验证、存储隔离与权限控制&#xff1a; &#x1f512; 一、基础防护层 前端校验&#xff08;仅辅助&#xff09; 通过JavaScript限制文件后缀名&#xff08;白名单&#xff09;和大小&#xff0c;提…...

AWS vs 阿里云:功能、服务与性能对比指南

在云计算领域&#xff0c;Amazon Web Services (AWS) 和阿里云 (Alibaba Cloud) 是全球领先的提供商&#xff0c;各自在功能范围、服务生态系统、性能表现和适用场景上具有独特优势。基于提供的引用[1]-[5]&#xff0c;我将从功能、服务和性能三个方面进行结构化对比分析&#…...

GB/T 43887-2024 核级柔性石墨板材检测

核级柔性石墨板材是指以可膨胀石墨为原料、未经改性和增强、用于核工业的核级柔性石墨板材。 GB/T 43887-2024核级柔性石墨板材检测检测指标&#xff1a; 测试项目 测试标准 外观 GB/T 43887 尺寸偏差 GB/T 43887 化学成分 GB/T 43887 密度偏差 GB/T 43887 拉伸强度…...

[特殊字符] Spring Boot底层原理深度解析与高级面试题精析

一、Spring Boot底层原理详解 Spring Boot的核心设计哲学是约定优于配置和自动装配&#xff0c;通过简化传统Spring应用的初始化和配置流程&#xff0c;显著提升开发效率。其底层原理可拆解为以下核心机制&#xff1a; 自动装配&#xff08;Auto-Configuration&#xff09; 核…...