libvirt之virsh代码分析

作为libvirt自带的VMM管理工具,可以说是开发其他VMM管理工具的基础。虽然它是一个应用程序,但是自己分析的时候并没有那么顺利,现将自己的分析做一分析,不足之处,还请多多指点!
  从main函数分析,C语言程序员都知道的事,但是好多稍微复杂点的程序,常常进入main函数后,让我们无从下手,因为做了太多的封装,致使分析受挫!可能稍微有些经验的会知道,命令行解析函数,肯能是一个重要的突破口,确实不知道的话,可以执行命令,根据命令行提示信息,在源代码里搜索,然后就可以找到解析了,比如virsh  --help |less,找到比较重要的命令,比如create,就可以找到突破口了~也许都是过度对函数封装惹的祸(开玩笑了!封装还是必要的)。对了,千万别吊死到main这个函数上,其他重要函数同样可以是突破口的~

  现在已virsh create test.xml为例,分析virsh命令行程序。当时的问题是,真心想明白*.xml是怎么被使用的,于是找到CmdCreate函数,该函数必定要使用*.xml配置文件的。以CmdCreate函数进行“上下五千年”式的探索。

 vshParseArgv<-vshCommandArgvParse<-vshCommandParse<-vshCmdDef<-cmdgroups<-domManagementCmds[]<-CmdCreate->virFileReadAll->virFileReadLimFD->saferade_lim->saferead->read

  就是这样,搞清楚了create是怎么回事,也即是可以参考着,自己写一个create了~

  

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值