简历警察同志,请纠正我的简历问题,告诉我 Linux +c 还需要学习哪些方面
工作技能
精通 C 语言,熟练使用 C++、Python 、eBPF(CO-RE)
熟练使用 gdb 、bpftrace 、ftrace 、pdb(python)等技巧调试疑难问题,熟悉 linux 性能追踪与定位,具备复杂问题解决能力
工作内容
公司内部组件开发
license 组件开发,负责操作系统许可证授权管理。licensed 后台服务提供 unix socket 接口提供服务能力由 C 语言开发,前台 python 提供命令行终端控制功能。
wlm 组件开发,python/C/C++混合开发,多线程度量指定文件获取文件 hash 发送到内核。
软件包升级 elf 二进制兼容性评估
操作系统中评估某个软件包升级对依赖此软件包的 elf 二进制影响。分别基于待升级软件包新旧版本两次构建依赖此软件包的其他软件包。分析 elf 中每个节的变化。.text 节比对汇编内容,过滤加载地址类型指令所加载内容一致项,生成软件包评估报告。
eBPF 调试追踪工具开发
capsnoop ,追踪进程在系统调用前后的权能变化,辅助公司定制不同用户赋予不同权能功能中的开发。
processtree ,追踪进程 clone/execve 行为,启动时收集 proc 中进程命令行,运行时收集 task->mm 收集新任务的命令行,并在工具退出时打印一颗进程调用关系树。可以实时收集一段时间内的所有进程创建关系。
vfssnoop ,vfs_open 时解析 dentry 获取完整的绝对路径,并在文件系统调用处绑定信息,可以以系统调用视角展示对文件绝对路径的处理。解决传统 BCC 工具不能解析完整绝对路径问题。
开源贡献
有良好的开源社区沟通贡献意识,在工作学习中发现上游 bug 均会在社区中提出 issue 与 pr 。节选两条上游贡献。其余亦有多次向 fedora bcc 等根社区贡献的已合并 pr 。
dix: Fix segfault if CreateGC() failed in XaceHook()
https://gitlab.freedesktop.org/xorg/xserver/-/issues/1625
Fix loongarch linux_iterate_over_regset_sections wrong
https://gitee.com/src-anolis-os/gdb/pulls/22
发明专利
大概 7 篇专利,ebpf 追踪类居多,因为查询简历能检索到私人信息就不放这里了
文章
工作学习中喜欢钻研,有良好的记录文档习惯。四篇节选文章前两篇为语法特性钻研,从更深入的视角反驳常识观点,后两篇侧重解决问题的能力,使用不同的工具与思路解决不同问题。其余文章可从链接内跳转个人主页查看。
c++,lambda 是匿名函数也可能不是函数
https://blog.csdn.net/weixin_42544902/article/details/149539407
eBPF ,tracepoint 真的比 kprobe 开销更小吗???
https://blog.csdn.net/weixin_42544902/article/details/146226813
抓虫:chown 失败 Couldn't change ownership of savefile
https://blog.csdn.net/weixin_42544902/article/details/139476184
抓虫:申威编译 gcc 过程中 f951 程序 dump
https://blog.csdn.net/weixin_42544902/article/details/144579745
精通 C 语言,熟练使用 C++、Python 、eBPF(CO-RE)
熟练使用 gdb 、bpftrace 、ftrace 、pdb(python)等技巧调试疑难问题,熟悉 linux 性能追踪与定位,具备复杂问题解决能力
工作内容
公司内部组件开发
license 组件开发,负责操作系统许可证授权管理。licensed 后台服务提供 unix socket 接口提供服务能力由 C 语言开发,前台 python 提供命令行终端控制功能。
wlm 组件开发,python/C/C++混合开发,多线程度量指定文件获取文件 hash 发送到内核。
软件包升级 elf 二进制兼容性评估
操作系统中评估某个软件包升级对依赖此软件包的 elf 二进制影响。分别基于待升级软件包新旧版本两次构建依赖此软件包的其他软件包。分析 elf 中每个节的变化。.text 节比对汇编内容,过滤加载地址类型指令所加载内容一致项,生成软件包评估报告。
eBPF 调试追踪工具开发
capsnoop ,追踪进程在系统调用前后的权能变化,辅助公司定制不同用户赋予不同权能功能中的开发。
processtree ,追踪进程 clone/execve 行为,启动时收集 proc 中进程命令行,运行时收集 task->mm 收集新任务的命令行,并在工具退出时打印一颗进程调用关系树。可以实时收集一段时间内的所有进程创建关系。
vfssnoop ,vfs_open 时解析 dentry 获取完整的绝对路径,并在文件系统调用处绑定信息,可以以系统调用视角展示对文件绝对路径的处理。解决传统 BCC 工具不能解析完整绝对路径问题。
开源贡献
有良好的开源社区沟通贡献意识,在工作学习中发现上游 bug 均会在社区中提出 issue 与 pr 。节选两条上游贡献。其余亦有多次向 fedora bcc 等根社区贡献的已合并 pr 。
dix: Fix segfault if CreateGC() failed in XaceHook()
https://gitlab.freedesktop.org/xorg/xserver/-/issues/1625
Fix loongarch linux_iterate_over_regset_sections wrong
https://gitee.com/src-anolis-os/gdb/pulls/22
发明专利
大概 7 篇专利,ebpf 追踪类居多,因为查询简历能检索到私人信息就不放这里了
文章
工作学习中喜欢钻研,有良好的记录文档习惯。四篇节选文章前两篇为语法特性钻研,从更深入的视角反驳常识观点,后两篇侧重解决问题的能力,使用不同的工具与思路解决不同问题。其余文章可从链接内跳转个人主页查看。
c++,lambda 是匿名函数也可能不是函数
https://blog.csdn.net/weixin_42544902/article/details/149539407
eBPF ,tracepoint 真的比 kprobe 开销更小吗???
https://blog.csdn.net/weixin_42544902/article/details/146226813
抓虫:chown 失败 Couldn't change ownership of savefile
https://blog.csdn.net/weixin_42544902/article/details/139476184
抓虫:申威编译 gcc 过程中 f951 程序 dump
https://blog.csdn.net/weixin_42544902/article/details/144579745