为了测试docker windows把Windows10重装了,安装之后发现centos不能启动了,还以为在windows下使用ext2fsd把根分区破坏了,进去看访问却是正常的,看了一下windows下的ESP分区(EFI System Partition),实际上也是Linux的EFI挂在的分区,即: [oen@han EFI]# df | grep efi /dev/nvme0n1p2 98304 47432 508...

4年前写过一篇《如何将VIM配置成适用C语言的IDE》,现在已经老的牙都掉光了,其实在当时也是非常难用,尤其是对于经常要打开kernel代码查看函数引用关系的我而言,最终vim对于而言就是一个terminal里面使用的简单的文本编辑器了。突然看到各种VIM8的配置攻略,一时兴起,使用感受就是: VIM8满足了我的需求,除了不能绘...

首先乱码的可能是本地是英文环境而wine需要的是中文环境,需要下面的命令 echo "alias wine='LANG=zh_CN.UTF-8 wine'" >> ~/.bashrc 在crossover下,需要在bottle下面的cxbottle.conf文件中[EnvironmentVariables]后面添加 “LANG” = “zh_CN.UTF-8”. 有些需要特殊字体,建议将msfontscore都安装上。 另外需要安装...

博客都快长了半年的草,整个换工作的过程也基本确定下来了,在前公司里做内核开发,还有souce insight可用来看代码,自己也就懒得折腾,到新公司后,source insight没得用了,只好把vim拿来配置,记录如下,一般情况下的IDE长什么样子都是类似,最好界面如source insight这般,可以解决类似问题。 左边有类似的函数列...

迅雷本来只有windows版本,对应的linux版本一直都是在wine下实现的,在ubuntu下我是采用crossover实现的,具体如何进行wine迅雷参考链接。但是迅雷终于在路由大潮里面开发了linux软件,生产了xware固件进行路由下载,恰好出了x86_glibc版本,如此,这个固件就能在ubuntu上运行,这个固件只是一个后台程序,依靠网络界面...

又一次开始土法炼钢了,测试部发现很多环境panic了,从黑匣子看到的信息是OOM了,虽然kill掉了占用比最大的进程,但是监控进程发现后reboot了单板。然后把meminfo收集到的信息,对比发现,slab增长的非常快,发现task_struct占用了很多,通过硬件中断和jprobe挂钩子发现是一个驱动访问所有进程的atomic_t usage,调用get...

Jprobe在之前经常使用用来对内核流程中的函数挂钩子,劫持相关参数,进行debug调试分析。 但在内核调试中经常碰到需要监视的模块数据,而这些数据往往在很多函数中修改,需要程序员人工从大量的内核代码中过滤出这些函数,使用jprobe就需要监控每个函数的入口,涉及的内容比较复杂,而且很多时候的函数符号并没有导出,...