ITS是什么
ITSInterrupt Translation Service是ARM Generic Interrupt Controller v3 (GICv3)架构中的一个硬件模块主要作用是把设备产生的 MSI/MSI-X 中断转换成 GIC 能处理的 LPI 中断。一句话理解MSI (PCIe设备) │ ▼ ITS 翻译 (DeviceID , EventID) │ ▼ LPI │ ▼ CPUITS 本质就是MSI → LPI 的中断翻译引擎。一、为什么需要 ITS在传统 GIC例如 GICv2中中断主要是类型说明SGICPU 之间的软件中断PPICPU 私有外设SPI系统共享外设SPI 最大大约≈ 1000 个但现代设备NVMe SSD高速网卡GPURDMA需要几十到几百个 MSI 中断。例如NVMe 64 queue → 64 中断如果系统有很多设备SPI 完全不够所以 GICv3 引入LPI (Locality-specific Peripheral Interrupt)而ITS 就负责生成这些 LPI。二、ITS 在系统中的位置系统结构PCIe Device │ MSI write │ PCIe Root Complex │ SoC interconnect (AXI / NoC) │ ITS │ LPI │ Redistributor │ CPUITS 位于GIC 子系统中通常和DistributorRedistributor一起构成完整 GIC。三、ITS 的核心功能ITS 主要做三件事情。1 中断翻译Translation设备触发 MSI 时Address MSI address Data MSI data RID Requester IDITS 将其解释为DeviceID RID EventID MSI Data然后查表(DeviceID , EventID) │ ▼ LPI例如DeviceID 0x0200 EventID 5 │ ▼ LPI 82052 中断路由RoutingITS 决定中断送到哪个 CPU。例如NVMe Queue0 → CPU0 NVMe Queue1 → CPU1 NVMe Queue2 → CPU2这样可以避免锁竞争提升性能3 中断虚拟化VirtualizationITS 支持SR-IOVVM 直通设备Guest MSI在GICv4中甚至可以PCIe device → Guest VM interrupt无需 Hypervisor 参与。四、ITS 的核心数据结构ITS 主要依赖三个表。1 Device Table记录DeviceID → Interrupt Table每个设备对应一个中断表。2 Interrupt Translation Table (ITT)记录EventID → LPI例如EventID 0 → LPI 8200 EventID 1 → LPI 8201 EventID 2 → LPI 82023 Collection Table记录LPI → CPU用于决定中断送到哪个 CPU。五、完整工作流程假设 NVMe 触发 MSIStep1 设备写 MSIPCIe Device │ MSI write (Address , Data)Step2 ITS 捕获ITS 得到DeviceID RequesterID EventID MSI DataStep3 查表(DeviceID , EventID) │ ▼ LPIStep4 发送中断ITS │ Redistributor │ CPU六、为什么 ITS 这么重要因为 ITS 让系统可以支持几十万中断而不是传统的≈1000 SPI这对以下设备非常关键NVMe100G/200G 网卡GPURDMA七、一句话总结ITS 的本质就是MSI (PCIe) │ (DeviceID , EventID) │ ITS 翻译 │ LPI │ CPU所以ITS MSI → LPI 翻译器

相关新闻

保险企业局域网如何用Java保障理赔材料文件夹的断点续传防篡改?

保险企业局域网如何用Java保障理赔材料文件夹的断点续传防篡改?

《大文件传输系统开发手记:一个老程序员的求生指南》 一、项目背景 最近接了个"地狱级"外包:客户要我用原生JS实现20G文件夹上传/下载,还要兼容IE9!我摸着所剩无几的头发,看着100元预算,陷入了沉…

2026/7/4 3:36:38 阅读更多 →
【2026年滴滴春招-3月8日-第一题(100分)- 方格世界】(题目+思路+JavaC++Python解析+在线测试)

【2026年滴滴春招-3月8日-第一题(100分)- 方格世界】(题目+思路+JavaC++Python解析+在线测试)

题目内容 方格世界中所有方格的长宽高均为111米。方格世界中有nnn个方格堆,编号依次为1,2...n1,2...n1

2026/7/4 15:46:37 阅读更多 →
【MYSQL】连接报错Public Key Retrieval is not allowed

【MYSQL】连接报错Public Key Retrieval is not allowed

要解决此问题,可以采取以下几种方法之一: 方法 1: 修改 JDBC URL 如果您正在使用 Java 的 JDBC 连接,可以在连接字符串中添加 allowPublicKeyRetrievaltrue 参数。这将允许驱动程序从服务器检索公钥以进行身份验证。 示例 JDBC URL&#xff1…

2026/7/5 16:37:39 阅读更多 →

最新新闻

FXTest数据库架构深度解析:SQLite与MySQL双引擎支持的设计原理

FXTest数据库架构深度解析:SQLite与MySQL双引擎支持的设计原理

FXTest数据库架构深度解析:SQLite与MySQL双引擎支持的设计原理 【免费下载链接】FXTest 接口自动化测试平台——pythonflask版,支持http协议,java 版本开发完毕https://github.com/liwanlei/plan 项目地址: https://gitcode.com/gh_mirrors/fx/FXTest …

2026/7/5 19:17:41 阅读更多 →
Perlite高亮功能:代码语法着色的实现原理

Perlite高亮功能:代码语法着色的实现原理

Perlite高亮功能:代码语法着色的实现原理 【免费下载链接】Perlite A web-based markdown viewer optimized for Obsidian 项目地址: https://gitcode.com/GitHub_Trending/pe/Perlite Perlite作为一款专为Obsidian优化的网页版Markdown查看器,其…

2026/7/5 19:17:41 阅读更多 →
Zotero Plugin Template hooks机制深度解析:插件生命周期管理最佳实践

Zotero Plugin Template hooks机制深度解析:插件生命周期管理最佳实践

Zotero Plugin Template hooks机制深度解析:插件生命周期管理最佳实践 【免费下载链接】zotero-plugin-template A plugin template for Zotero. 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-plugin-template Zotero Plugin Template是一款专为Zote…

2026/7/5 19:13:40 阅读更多 →
从零开始:3步掌握Mobaxterm中文版远程管理工具

从零开始:3步掌握Mobaxterm中文版远程管理工具

从零开始:3步掌握Mobaxterm中文版远程管理工具 【免费下载链接】Mobaxterm-Chinese Mobaxterm simplified Chinese version. Mobaxterm 的简体中文版. 项目地址: https://gitcode.com/gh_mirrors/mo/Mobaxterm-Chinese 你是否曾在Windows系统下管理Linux服务…

2026/7/5 19:13:40 阅读更多 →
如何永久保存你的微信聊天记录:WeChatMsg完整免费教程

如何永久保存你的微信聊天记录:WeChatMsg完整免费教程

如何永久保存你的微信聊天记录:WeChatMsg完整免费教程 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeCha…

2026/7/5 19:11:40 阅读更多 →
3步打造你的私人影院:免费开源跨平台视频播放器ZyPlayer全解析

3步打造你的私人影院:免费开源跨平台视频播放器ZyPlayer全解析

3步打造你的私人影院:免费开源跨平台视频播放器ZyPlayer全解析 【免费下载链接】zyfun 跨平台桌面端视频资源播放器,免费高颜值. 项目地址: https://gitcode.com/gh_mirrors/zy/zyfun 你是否曾为寻找想看的影视内容而在多个网站间反复切换?是否厌…

2026/7/5 19:11:40 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻