KVM虚拟化源码分析之KVM_TOOLS(三)

本文详细剖析了KVM虚拟化的kvm_cmd_run_init函数,涵盖从init_lists链表数组初始化到kvm_ipc__init等关键步骤,深入理解KVM工具的内部工作机制。
摘要由CSDN通过智能技术生成

回顾

上篇博文我们分析到kvm_cmd_run命令中有3个核心函数

这里写图片描述

这篇博文主要分析kvm_cmd_run_init函数

kvm_cmd_run_init

这里写图片描述

确定CPU个数
而后是一个循环解析命令行参数,具体可以参考kvm_cmd_run_init的帮助信息

这里写图片描述

如果在上边解析参数的时候发现用户并没有制定内核文件位置,则通过find_kernel()来获得
而find_kernel()其实就是通过下边的位置顺序来找内核

这里写图片描述

这里写图片描述

这里找的是elf文件格式的内核

这里写图片描述

这里确定客户机内存的大小,如果用户没有在参数中指出,则通过get_ram_size()来获得,而实际上就是根据当前host的内存大小算一个比例。

这里写图片描述

设置内核启动的参数

这里写图片描述

设置启动用的根文件系统,如果用户没有指定,就自己创建一个最小根文件系统
后面跟着好多行都是干这事

这里写图片描述

kvm_run_init的最后调用了Init_list_init 函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值