OpenFastPath 学习3(udpecho 线程组成)

udpecho运行起来之后,分析一下,它由那些线程组成,如下:

(gdb) i thread

发现有11个线程,每个线程探查一下。

(gdb) thread 1

可见该线程为主线程,其main函数所在。

(gdb) thread 2

main--->odp_init_global---->odp_init_dpdk--->rte_eal_init--->rte_eal_intr_init---->eal_intr_thread_main,

该线程是一个中断处理线程,由DPDK启动。

(gdb) thread 3/4

main-->ofp_init_global--->ofp_ifnet_create--->odph_odpthreads_create--->_odph_thread_run_start_routine--->sp_rx_thread + sp_tx_thread

SP=SLOW PATH 线程3和线程4与虚拟网卡进行通信。rx和tx各一个线程。

(gdb) thread 5

netlink线程,与内核协议栈进行通信。

thread 6/7/8/9/10/11/

schedule_loop线程,收发包线程。

thread 12

cli_server 命令服务的线程。

thread 13

用户自己的线程 udp_server.c中的线程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 3. 环境抽象层 环境抽象层(Environment Abstraction Layer,下文简称EAL)是对操作...
    希尔哥哥s阅读 4,768评论 0 1
  • 3. 环境抽象层 环境抽象层(EAL)为底层资源如硬件和存储空间的访问提供了接口。这些接口为上层应用程序和库隐藏了...
    半天妖阅读 4,695评论 0 10
  • 1. 简介 本文档包含DPDK软件安装和配置的相关说明。旨在帮助用户快速启动和运行软件。文档主要描述了在Linux...
    半天妖阅读 17,996评论 0 22
  • 文:文成公主 1. 那天我穿上新买的那件漂亮的洋裙,骑着我的小电动去上班,连衣裙像一团红色的火焰,闪瞎了一路人的眼...
    文凤凰阅读 576评论 16 3
  • 数着手指算了一下日子,一晃之间今年已经没有多少天了。很少像现在这样去算日子,之所以会这样去做,还是因为自己...
    王二道阅读 362评论 0 2