About

Huaitong(Oen) Han,

A Linux kernel virtualization developer

The contributor to KVM/XEN community

Expert in VT-x, VT-d and X86 architecture

Familiar with kernel development in KVM, XEN, Filesystem, IO storage, memory, schedule, etc.

 

Timeline:

2014 ~ Now : Kernel Virtualization developer in Beijing.

2011 ~ 2014: Linux kernel engineer in Xi’an.

2007 ~ 2011: Lanzhou University, Computer Science.

 

Contact me:

:oenhangmail.com

http://weibo.com/oenhan

: http://www.linkedin.com/in/oenhan

 

15 对 “About”的想法;

  1. 您好,很希望联系你,一直找不到你的联系方式。自己一直很困惑该怎么办。我很喜欢linux内核,毕业两年一直在做嵌入式linux软件方面的工作,但是我一直想转内核开发,看了看,基本也就3条路:虚拟化、驱动、路由器(网络协议栈)。想做虚拟化方向,却不知道这部分应该怎么样进入,如果您有时间,可以看看我的博客(http://www.cnblogs.com/tolimit/),这里面大概就是我对内核的研究学习心得了,我不太清楚虚拟化方面应该掌握什么样的技术,自己也就喜欢看内核源码,看了内存模块的源码、调度器的源码,信号的实现源码。希望您可以给我提些意见,我应该具体去看什么,怎么去学习虚拟化这方面。真的万分感谢您。谢谢。

    1. @TO 联系方式上面有写,email或者留意都可以,我对kernel在市场主要需求看法是就4类:虚拟化,存储,网络,驱动;大体看来一下你的blog,从你想转行找工作来说起,很多文章都是纯粹的代码分析,没有看到解决问题的能力,想打动阿里云的技术人员,要从这方面入手.建议订阅kernel maillist,尝试解决问题,看得懂代码不是生产力,和毕业院校较好的应届生比没有优势,而且看代码对很多细节不甚了了,能解决问题才能证明是真明白.学习的话:先看intel系统虚拟化的书,对比看一下KVM的代码,Xen有兴趣也可以,然后fix几个社区的bug,估计就有了进去的门槛,有了大概理解,可以专攻虚拟化的具体方面,比如网络IO,存储等,一般公有云人才需求比较大,mailist里面有alibaba邮箱后缀的人的patches,看不懂的多去请教(看得懂的也可以问,像我这么热心的人还是很多的),混熟了让他内推你就可以了.

          1. @OENHAN 我现在已经走上虚拟化这条路了,刚入职还有许多知识需要学习,今后多多交流交流,我还有许多不懂的需要请教你呢。

  2. 博主,你好! 很荣幸能够看到你的微博和博客! 我是一名有1年多的windows驱动开发经验的菜鸟,一直对vt比较有兴趣。最近为了学习研究vt,开始看intel手册,但是总觉得这种学习方法效率很低。如果博主有空闲时间,希望能够给我好的建议。感谢!

    1. @FENG 不建议新手一开始看intel手册,如果不知道intel某个特性存在的目的,就会看的一头雾水,还是好好梳理kvm的各个流程的代码就好,看代码不清楚硬件的实现时再回头翻看intel手册,最好的是去社区订阅邮件帮着debug问题

    1. @PEDIA0992 最近在看mmap的源码,有个问题请教:

      mmap所做的仅仅是进行虚拟的地址空间与文件的映射,当真正访问数据的时候出发page fault, 才将page从文件中读到物理内存.

      这里与read()的区别是不是read()首先将page读到页缓存中,然后再拷贝到用户的内存空间, 而mmap之后读取数据能直接通过mmu根据虚拟地址空间的映射从内核的物理内存区读取数据?

  3. 有个小问题,假如文件系统的block是4k, 我write 512byte的数据,操作系统会先把512byte所属的4k block读到page cache中,然后修改完再写回吗? 假如我正好写入4k ,是不是就不需要再读上来了。

发表评论