【DPDK核心知识了解】(2) 内核旁路与硬件交互

文章目录

  • [1 概要](#1 概要)
  • [2 内核旁路与硬件交互](#2 内核旁路与硬件交互)
    • [2.1 UIO 与 VFIO 机制](#2.1 UIO 与 VFIO 机制)
      • [2.1.1 UIO技术](#2.1.1 UIO技术)
      • [2.1.2 VFIO技术](#2.1.2 VFIO技术)
  • [3 MMIO](#3 MMIO)
  • [4 总结](#4 总结)

1 概要

博主最近在想学习RDMA的相关知识,但是无奈于RDMA的教学太少,考虑到DPDK与RDMA有较多技术相关的部分,且DPDK的教程多一些,因此想现将DPDK与RDMA重合的知识部分学习,之后再学习RDMA。

本系列将会分为以下四个部分

  1. 内存管理模块(最重要:建立硬件直接访问内存的认知)
    RDMA 最大的门槛在于理解"为什么网卡可以直接读写用户态内存"。DPDK 的内存管理能帮你完美破局。
  2. 内核旁路与硬件交互(建立绕过操作系统的认知)
  3. 数据结构与缓冲区管理(建立零拷贝的认知)
  4. 并发与队列模型(建立异步事件通信的认知)

2 内核旁路与硬件交互

2.1 UIO 与 VFIO 机制

2.1.1 UIO技术

详细技术细节参考如下链接:

Linux核心技术:UIO(Userspace IO)

问:IOVA和UIO什么关系和区别?

在高性能网络和内核旁路(Kernel Bypass)的技术栈里,UIO 和 IOVA 是两个处于不同维度的重要概念。简单来说:UIO 是一种内核驱动框架(解决"怎么绕过内核"的问题),而 IOVA 是一种地址空间定义(解决"网卡怎么寻址内存"的问题)。

2.1.2 VFIO技术

VFIO技术参考如下链接学习:

vfio概述(vfio/iommu/device passthrough)

问:VFIO与IOVA的关系?

3 MMIO

MMIO相关技术参考如下链接:

内存管理五大技术概念:MMU、IOMMU、MMIO、mmap、ioremap

4 总结

本章节介绍DPDK核心知识中的内核旁路与硬件交互基本概念。

相关推荐
M78佐菲6 小时前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
无敌贵点大王8 小时前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表
是翎10 小时前
深度长文|2026产品经理AI实践手册
人工智能·深度学习·学习·自然语言处理·数据挖掘
Linux-lucky10 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
知识分享小能手11 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
AI职业加油站14 小时前
数据要素价值释放年:大数据治理工程师,站上职业新风口
人工智能·学习·职场和发展·数据分析·职场发展
啄缘之间14 小时前
1.【SVA】什么是SVA?
经验分享·学习·测试用例·verilog·sva
sunoo-22915 小时前
【嵌入式裸机开发Day04】i.MX6ULL 蜂鸣器驱动详解:从引脚地址查找到代码实现全流程
arm开发·单片机·嵌入式硬件·学习·串口·裸机
Purple Coder15 小时前
stm32
学习
边境悍匪16 小时前
蜗牛学苑 Java 智能体学习 Day45|Knife4j+SpringBoot3、书城项目整合 MyBatis 思维导图复盘
java·开发语言·vue.js·学习·spring