编程语言
首页 > 编程语言> > vpp源码流程

vpp源码流程

作者:互联网

vpp源码流程

代码流程

启动 读取配置文件,解析参数 main线程绑核 初始化堆 查找插件路径 vlib_unix_main thread0 初始化vpp的堆,映射内存 使用mmap将内存匿名映射到vpp进程内 main clib_mem_init_thread_safe clib_mem_init create_mspace CALL_MMAP clib_mem_set_heap vpe_main_init vlib_unix_main 筛选enable的插件 执行每个插件的early_init 执行每个插件的config函数 vlib_unix_main vlib_plugin_config vlib_plugin_early_init vlib_load_new_plugins load_one_plugin early_init vlib_call_all_config_functions config_function_registrations clib_elf_main_init vlib_thread_stack_init clib_calljmp thread0 thread0 vlib_main clib_time_init vlib_physmem_init vlib_buffer_main_init vlib_thread_init vlib_map_stat_segment_init vlib_register_all_static_nodes vlib_node_main_init vpe_api_init vlibmemory_init map_api_segment_init vlib_call_all_init_functions vlib_buffer_create_free_list vlib_call_all_config_functions vlib_call_all_main_loop_enter_functions vlib_main_loop
graph TB
vlib_main_loop-->vlib_main_or_worker_loop-->dispatch_process-->dispatch_node
vlib_main_loop--->dispatch_node
load_one_plugin dpdk_early_init dpdk_config dpdk_process_node dpdk_process dpdk_lib_init dpdk_input_node dpdk_device_input rte_eth_rx_burst

标签:vpp,流程,vlib,init,源码,clib,main,config,dpdk
来源: https://blog.csdn.net/github_38294679/article/details/122607034