
DPDK
文章平均质量分 81
sdn及dpdk相关
占领地球的熊星人
这个作者很懒,什么都没留下…
展开
-
三、DPDK代码——初始化入口(2)
转载请注明出处,谢谢。–iova-mode=va作为物理地址(PA)的IOVA模式作为PA的IOVA模式下,分配到整个DPDK存储区的IOVA地址都是实际的物理地址,而虚拟内存的分配与物理内存的分配相匹配。该模式的一大优点就是它很简单:它适用于所有硬件(也就是说,不需要IOMMU),并且它适用于内核空间(将真实物理地址转换为内核空间地址的开销是微不足道的)。实际上,这就是DPDK长期以来的运作方式,在很多方面它都被认为是默认的选项。然而,作为PA的IOVA模式也存在一些缺点。其中一个就是它需原创 2021-02-08 22:14:29 · 775 阅读 · 0 评论 -
二、DPDK代码——初始化入口(1)
转载请注明出处,谢谢。初始化入口函数eal_init():/* Launch threads, called at application init(). */intrte_eal_init(int argc, char **argv){ int i, fctret, ret; pthread_t thread_id; static rte_atomic32_t run_once = RTE_ATOMIC32_INIT(0); const char...原创 2021-01-24 18:29:43 · 1021 阅读 · 0 评论 -
一、DPDK代码——before main
转载请注明注明出处,谢谢。一、Before main:在main函数运行之前,通过gcc的构造函数,完成总线到链表中的注册,且完成各种pmd驱动到某类总线的注册,完成几类全局变量的数据关系。gcc的构造函数gcc的constructor函数属性,可以让该函数在main函数之前运行,且可以指定函数运行的优先级,优先级>100,且值越小优先级越高。ether dev初始化用到的是RTE_PRIORITY_BUS这个level的优先级。#define RTE_INIT_PRIO(fu原创 2021-01-18 23:20:25 · 612 阅读 · 0 评论 -
meson ninja DPDK-pktgen
转载请注明注明出处,谢谢。在使用meson ninja编译dpdk的基础上,使用meson ninja安装pktgen工具前提:dpdk ninja编译后已经ninja install 到/usr/local中1、安装依赖sudo apt-get install libpcap-dev2、下载pktgengit clone https://github.com/pktgen/Pktgen-DPDK.git3、进入pktgen meson build 若出现lib...原创 2021-01-18 23:15:41 · 1288 阅读 · 1 评论 -
meson ninja调试dpdk
转载请注明注明出处,谢谢。1、安装环境基于ubuntu20.04 内核5.4.0安装dpdk 20.082、安装dpdk所需库需要安装两个库文件sudo apt-get install numactlsudo apt-get install libnuma-dev3、安装meson+ninja首先安装ninja依赖re2capt-get install re2c下载ninjagit clone https://github.com/ninja-bu..原创 2021-01-18 23:05:42 · 6232 阅读 · 0 评论