重拾APUE

APUE→Advanced Programming in the UNIX Environment

UNIX环境高级编程

为什么说是重拾呢

第一次接触这本书是在大三的那个暑假,在ibm aix技术支持的组实习。正式报到之前,Tao给发邮件说了我们入门需要参考的数据,首推了这两本书:

Advanced Programming in the UNIX Environment, Second Edition

Design of the UNIX Operating System

第一天正式去报到的时候,Tao已经买了三本书,其中2本apue,就说你们先看看这书吧,给了我们三个实习生一人一本。我选了一本apue,在此之前,我还从来不会去认真看英语书籍,没办法,国际商业公司嘛,这个team客户都是外国人,再说了,英文原版的内容才是最真实的。

在那里实习的几个月,最大的收获之一就是看apue了,英语的书籍,看懂的部分确实收获不小,但是没看懂的部分那就真是一头雾水,尽管我也从学校图书馆借了中文版的对照着看。Tao也很忙没有太多的时间在办公室来教实习生。

现在仍然还记得,第一个章节的第一个插图,那几个圆圈,最里面的圆圈是kernel,最外面的圆圈是user。(直到最近才搞明白内核态,用户态等等,都怪自己大三的时候上课不认真)。

离开那个实习岗位之后,就很少接触了unix了。自己的课余兴趣也放在了android app开发上,毕业设计也是做的自己比较感兴趣的图像处理。哪知后来的阴差阳错,最终读研的时候,做网络协议,跟的是贵系网络所的副所长。然后:网络协议啊,分层设计网络协议云云,在实践学习的时候,就当然得完全在linux工作了。最近的项目也是分析内核源码之类。加之,老师本身教操作系统课程(也接触了一些该课程的本科生,发现贵系的学生和老师能力都很强啊),和他长期的交流中,越来越深入了解linux。

从单步调试NS2中自己的协议,到给几个不同平台编译kernel,到分析内核源码,用eclipse和qemu来单步调试OS,逐渐,改变了当初自己对UNIX操作系统粗浅的认识。

对于apue这本书有多好,我也不知道,也不多说了,反正吧,

于是,决定又拿起APUE,在明年6月份之前,能再次通读一遍apue,对UNIX有个新的全面的认识。