tools目录中的setup.sh脚本,向用户提供了快速执行如下任务功能:
- 构建DPDK库
- 加载/卸载DPDK IGB_UIO内核模块
- 加载/卸载VFIO内核模块
- 加载/卸载DPDK KNI内核模块
- 创建/删除NUMA 或 non-NUMA平台的hugepages
- 查看网络端口状态和预留给DPDK应用程序使用的端口
- 设置非root用户使用VFIO的权限
- 运行test和testpmd应用程序
- 查看meminfo中的hugepages
- 列出在
/mnt/huge
中的hugepages - 删除内置的DPDK库
参考:http://dpdk.org/doc/guides/linux_gsg/quick_start.html 第7节的例子可以知道如何使用,和手动编译类似,有一下几个步骤;
1、选择环境编译:如我的环境:[1] i686-native-linuxapp-gcc
2、设置APP运行需要的环境:插入UIO.KO、设置大叶内存、绑定网卡(此处需要注意APP不能自动绑定网卡,在实际应用中我们需要提供应用程序自动解绑网卡绑定的能力,这样带来另外的一个问题进程root权限问题,在容器之类的环境要去容器具备root权限,带来一系列安全方面的问题)
3、其他一些查询、清除环境的功能。
参考:http://dpdk-docs.readthedocs.io/en/latest/linux_gsg/quick_start.html#