vpp初始化过程之主线程工作机制

博客内容待写,目前仅知标签为vpp,后续将围绕其展开信息技术相关内容。

主线程其实就是 VPP 运行时中第一个调度线程,它是线程 0(vlib_worker_threads[0]),它的职责是:

  • 完成所有 VPP 框架初始化工作;

  • 加载并解析配置;

  • 创建和初始化子系统(如 buffer pool、interface、plugin、graph、nodes);

  • 启动 worker threads;

  • 开始 graph node 调度循环。


🔧 初始化主线流程(以 vpp_main() 为起点)

0. 启动点 main()vpp/vpp.c

int main(int argc, char *argv[]) { return vpp_main(argc, argv); }


1. vpp_main() 入口(vpp/vpp.c)

📌 核心职责:
  • 初始化 VPP 核心模块

  • 调用 VLIB/VNET 各子系统初始化

  • 启动插件

  • 进入调度循环

int vpp_main(int argc, char *argv[]) { unformat_input_t input; clib_mem_init_thread_safe(0, 128 << 20); // 初始化 thread-safe 内存 vlib_main_init(&vm); // 初始化主 vlib_main_t 对象 vlib_plugin_early_init(); // 早期插件初始化(加载配置、注册信息) unformat_init_comm

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值