如何估计 Linux 组件的 LOC?在这种情况下,我会将实现名称空间的 LOC 数量与实现 BPF 的 LOC 数量进行比较。
答案1
有些组件的轮廓很清晰; BPF 就是其中之一,主要包含在kernel/bpf/
。其他则不然,例如名称空间。
确定功能实现位置的最佳方法是查找其 Kconfig 选项:
git grep CONFIG_BPF\\b
会找到 BPF 涉及的所有内容,并且
git grep -E 'CONFIG_(UTS|IPC|USER|PID|NET)_NS\b'
将找到名称空间中涉及的所有内容(请参阅init/Kconfig
)。
此时,您可以尝试弄清楚这些配置选项控制了多少代码。我会禁用所有内容,然后启用获得特定功能所需的所有内容,但不是功能本身,然后预处理所有代码。完成后,启用该功能,并再次预处理所有代码,并测量差异......