DPDK17.02内存池管理3 – rte_pktmbuf_pool_create

该函数用来创建一个 mbuf 内存池并初始化。

1、rte_pktmbuf_pool_create() 函数

内存池中每个对象的结构如下:

2、rte_pktmbuf_pool_init()

该函数用来初始化mp头结构的尾部的私有数据结构。

3、rte_mempool_populate_default() 函数

该函数用来初始化内存池中的所有对象的内存空间。

4、rte_mempool_populate_phys() 函数

使用创建的大的内存块(memchunk),为内存池分配每个对象,及其关联的 ring 结构。

5、mempool_add_elem() 函数

该函数将memchunk 分成的一个个小的内存对象插入到内存池的ring中。

6、rte_mempool_obj_iter() 函数

该函数通过调用回调函数rte_pktmbuf_init(),对内存池中的每个对象进行初始化,返回经过初始化的对象的数量。

6.1 rte_mempool_obj_iter() 函数

6.2 rte_pktmbuf_init() 函数

————————————————————

原创文章,转载请注明: 转载自孙希栋的博客

本文链接地址: 《DPDK17.02内存池管理3 – rte_pktmbuf_pool_create》

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Scroll Up