其实挺不敢在csdn写blog的,特别是技术的东东,万一被高手路过,看到自己如此搓人在这造次,岂不是贻笑大方,不过发现这里写文章代码块很好用,用来做代码阅读的笔记挺好的。偷偷留痕,咔咔。
在linux安装完lvm2的工具集后,便可以使用pvcreate,lvcreate,pvscan等命令,其实这些命令都是lvm指出来的链接(害得偶曾经郁闷地找这些命令的main,!=.=)在lvm.c中,入口函数main很简单,调用lvm2_main函数。
分析int lvm2_main(int argc, char **argv, unsigned is_static)
这里有个变态的结构cmd_context,发现linux下很多结构都很变态,也许是自己底子太浅,加上以前都没有阅读过太多代码的缘故。
在linux安装完lvm2的工具集后,便可以使用pvcreate,lvcreate,pvscan等命令,其实这些命令都是lvm指出来的链接(害得偶曾经郁闷地找这些命令的main,!=.=)在lvm.c中,入口函数main很简单,调用lvm2_main函数。
- int main(int argc, char **argv)
- {
- return lvm2_main(argc, argv, 0);
- }
- char *base;
- int ret, alias = 0;
- struct cmd_context *cmd;
这里有个变态的结构cmd_context,发现linux下很多结构都很变态,也许是自己底子太浅,加上以前都没有阅读过太多代码的缘故。
- /* FIXME Split into tool & library contexts */
- /* command-instance-related variables needed by library */
- struct&

本文主要探讨LVM2(逻辑卷管理)的主函数和关键数据结构,包括`cmd_context`和`format_type`结构。通过分析`main`函数的入口,可以看到程序如何启动,并了解`cmd_context`中用于命令执行和库上下文的相关变量。同时,`format_type`结构揭示了LVM中格式类型的信息,如名称、别名和操作函数。
最低0.47元/天 解锁文章
1811

被折叠的 条评论
为什么被折叠?



