DPDK中文-EAL层

多进程模型
linux app EAL允许 多进程与多线程开发模型一样;可以查看2.20章 Muti-prcess Support查看更多细节;
内存映射发现和内存预留
分配大量且连续的内存永固哦是用hugetlbfs 内核文件系统。EAL提供了API去预留命名的内存区域在这个连续内存中。 意思应该是这块内存可以命名;通过名字分配的意思;

支持Xen Dom0技术,不使用hugetbls

PCI访问
EAL使用 /sys/bus/pci 工具,这个工具是有内核提供的扫描PCI bus上下文的。去访问PCI的内存;通过使用两个ko模块,提供了两个device文件/dev/uiox和/sys下面的资源文件;这样就可以访问PCI的地址在应用空间中。

每个lcore和共享变量
lcore的意思是处理器的逻辑调用单元。通常被叫做硬件线程;

共享变量是一种默认的行为,pre-lcore变量是通过使用 Thread Local Storage  来实现的每个线程本地存储。

log
EAP提供LOG的API,在linux系统应用中发送给syslog也可以发送给串口,也可以被用户指定的其他log函数来替换;


追终于调试
一些是glibc提供的dump stack,rte_panic函数能够提供自动触发SIG_ABORT信号,能够产生一个core文件。gdb可以读;
用户空间中断事件

情况1用户空间中断和警告事件处理在主线程中;
EAL创建了主线程去poll UID设备的文件描述符。去检测中断。主要机制就是异步事件驱动模型;可以设定定时callback为NIC借口。
注意:
只有那些链路状态变化的通知在主线程中使用中断回调。

RX 中断事件

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值