Advertisement

DPDK内存管理分析项目一

阅读量:

前言

该博客文章中对这一流程进行了初步探讨,并详细记录了相关数据到全局的memseg数组中。至此, DPDK相关的进程已经具备了像普通内存一样使用这些hugepage的功能特性。随后, 为了深入理解其具体应用方式, 进一步研究DPDK的内存管理机制将是必要的。

另外,在撰写文章之前,并未仔细通读过《DPDK Programming Guide》关于内存管理章节的内容。曾经快速浏览了该指南的内存管理部分。对该内容的印象较为模糊。文章主要基于个人对DPDK源码的理解以及一些推测进行撰写。由于经验不足和知识储备有限,在此文中可能存在不足之处,请各位专家批评指正。

DPDK Version: 17.11.2

Date: 2018-06-18, Created by HRG

正文

首先,猜测DPDK的内存管理基础模块就是memzone模块。

在eal.c rte_eal_init()中调用了memzone的初始化函数rte_eal_memzone_init() 。

复制代码
  if (rte_eal_memzone_init() < 0) {

    
 		rte_eal_init_alert("Cannot init memzone\n");
    
 		rte_errno = ENODEV;
    
 		return -1;
    
 	}

全部评论 (0)

还没有任何评论哟~