ChinaUnix网友:Send_linux

  如果你是一位自由软件爱好者,那么你一定很乐意与大家分享你的快乐,因为自由不仅意味着获得,更意味着贡献与分享。开发者不应该是孤独的,开发也不应 该是一个人的奋斗。所以我们需要一个社区,一个可以分享快乐的社区。HelloGcc Workshop正是奔着这个理想而去,Linux内核开发者大会亦是如此,日本Linux开发者峰会更是如此。

  起初,大家只是在网上认识,讨论一些GUN Toolchain方面的技术问题,后来,大家聚在一起,举办了一个小型的交流会,再后来,在阿卡嵌入式小组和北京亚嵌教育的大力支持 下,HelloGcc Workshop 2009于10月24日在北京清华FIT楼召开。此次活动,报名参加人数约80人左右,共有4个演讲话题,主要是gcc和gdb相关方面,历时4个多钟 头,获得大家的好评。我们期望会有更多的朋友加入进来,有更多的快乐可以一起分享。

  我有幸在组织者的邀请下,参加了这次小型的技术交流会,来到会场的时候,已经快要开始了,60人左右的会场挤满了人,很多人只能站在后排。听组织者介绍,他们很多是从外地赶过来参加,绝大部分是工业界从业相关技术开发工作的,也有在学校进行相关领域学术研究的人员。


  第一位做报告的是邢明杰,来自中科院计算技术研究所,他从2005年开始就接触GCC和GNU,从此喜欢上自由软件,并认为自由是有趣的。期间也从事 过GCC工具链的移植和维护,目前在做程序性能分析和编译器优化方面的工作。以前在一次龙芯讨论小组的会议上见到过他,当时他给大家介绍过龙芯上的GCC 工具移植工作。这次他给大家到来的是一个基础性的讲演,主要谈到的是GCC工具目前的主要结构,已经平台移植相关工作需要了解的注意事项。

  第二个演讲者是来自北大的袁鹏,他目前主要还从事学术研究工作,主要方向是处理器、编译器和程序性能优化。因为程序本身的结构问题,特别是数据结构本 身,就决定了程序的性能优化重点,因而存储系统性能是影响程序性能的一个重要瓶颈,本报告主要讲解如何使用GCC编译器来分析程序的数据局部性,以及通过 数据重组优化来改善程序的访存行为。在演讲中,他还比较了GCC和其他商业公司产品的差别,让大家看到了事实,但是也树立了信心。虽然自由软件的性能方面 不是最优秀,但是最广泛的平台支持,以及不断有新生力量的加入,使得自由软件的仍具有强大的生命力。

  第三位研究者是来自上海ADI公司的张杰,专程从上海赶过来参加此次技术交流会,为 Blackfin嵌入式处理器维护和改进GCC,GDB,Binutils,Newlib 和 uClibc。同时也开发开源的 Blackfin JTAG工具,包括 UrJTAG,gdbproxy 和 libftdi。在这个演讲中,我第一次听到自由软件爱好者,如何一步步地实现自己的理想,如何认识、了解,加入并最终回报自由软件社区。第一次看到一款 实实在在的开源硬件产品,因为这些产品的电路板设计图都是可以从这些项目的主页上下载的。

  最后一位给大家做报告的是朱辉,GDB maintainer,SkyEye 嵌入式开源项目核心开发成员,对芯片模拟,GDB有兴趣。主要作过 SKYEYE DBCT 模拟,GDB reverse debug 和 process record target 实现和维护者之一。

  这位大哥说话很风趣,面对所有提问者的提问都是从容应付,在会后大家聚餐的餐桌上也表现的很好。其中和大家说了不少自由软件社区有趣的事情,比如如何和国外的开源软件作者沟通,如何处理好工作中公司利益和开源软件社区利益等等。

  总的来所,这是一次成功的自由软件技术交流会,虽然人不是很多,但是会场气氛活跃,交流踊跃,来自学术、社区和工业界的朋友都有参加,反映出的问题都是目前大家所急需解决的,所提到的新想法和新思路也是目前该领域的发展方向。

Linux Kernel开发者大会见闻
西安邮电大学:陈莉君

追源

  当我着手写这篇博文时,多年前泡在AKA网站的情景又浮现在眼前。曾经从AKA下载的一篇篇讲座的资料依然静悄悄地躺在硬盘上,他们似乎成为历史的尘埃,不再为昂头向前的人们所眷顾。可是,我再次打开http://www.aka.org.cn 网站,那些资料还依然健在,有份熟悉,更有份感动。

  从2000年3月份开始,到2004年11月,在这四年多的历程中,完全是自愿、自发的沙龙活动,我虽没有到现场参加,但分享了每次活动的信息和资 料。每次期盼,都在下一次中收获到果实。上百场的讲座,涵盖了各方面的技术热点,积攒的资料更是为Linux爱好者提供了充足的养料。那些曾经的技术,似 乎成为历史的古董,可是再次阅读那些资料,恍然觉得,在时空的穿越中,技术只不过是在不断翻炒中得以提升罢了,就像宫敏博士的口头传,目前这些技术,都是 “古时候”就有的。

  这次Linux Kernel大会,正好坐在宫老师旁边,近距离感受一位学者的满腹真经。从最早把Linux带入中国,到十年前从芬兰依然辞行回国,一颗拳拳之心,倾注于安全操作系统和自主CPU的研发,以个人之肩承载着国之重任。

  其实,Linux仅仅是一个载体,幸运的是,它是一艘扬帆起航的船,因为身心自由,搭载者蜂拥而至。在后来者的眼里,它崭新而生机勃勃;而在通晓电子 科学,计算机科学的学者眼里,它无非是穿上新外衣的一艘军舰,其背后蕴藏的技术,从70年代就有。写到这里,忽然想起了曾经读过的洪峰写的”泛系、自由与 “一、百、万”工程“一文。这篇长达四十页的文字,以个人亲身经历,演绎了其漫漫求索路以及从泛系观看自由软件的原汁原味。

新旧面孔

  穿有不同外衣的Linux发布版无处不在,但Kernel就那一个,悄然呆在www.kernel.org 网站。Linus十八年的坚守,让这颗心保持了它的健壮性和统一性,既没有像Unix一样四分五裂,也没有像其他OS一样无疾而终。Linus “just for fun”的理念,引领了一批批爱好者自愿加入kernel的开发队列。


  07年见吴峰光时,得知他写的文件预读算法对I/O性能有很大的提升,被Linux Kernle采纳。说起改写内核中的文件预读算法,像很多喜欢玩计算机的爱好者一样,起初在校园网中心负责全校的视频播放,但在播放的过程中,发现其流畅 的程度并不理想,于是寻找过各种工具进行性能改进,尽管如此,但与预期的目标还有相当的距离,于是萌发了自己写程序进行改进的想法。以需求为驱动,就这么 一步步向前走去,几经折腾,多次修改,预读算法终于被Linux内核接受。今年暑假见到他时,刚刚成为Intel OTC团队的一员。这次会议,他带给大家另一个新的话题,从内存管理页替换的角度来提升系统性能。

  Herbert.xu,两年前来西邮兴趣小组与大家有过面对面的交流,也就是在那次交流中,得知其14岁开始接触Linux,后来在澳大利亚上大学的 那所学校有浓厚的Unix氛围,在这块肥沃的土壤中,不仅仅是他,而且有很多其他人后来都进入Linux的行列,作为Linux内核网络子系统的主要维护 者,虽就职于Red Hat,但没有固定在某个地点办公,代码的编写可能在飞机上,在上海,在美国,在西安。他刚刚在日本参加完国际Linux Kernel大会,本次回国参会带给大家的是“10GbE on Linux”,因为我提前离场,没有听到他对这一主题的详细释义。

  暑假在Intel OTC团队见过的张衍民,这次带给大家的题目是“Linux内核性能跟踪和优化”。这一话题,是目前很多部署大量服务器企业所关心的。他发言过程中的幽默,以及如实说明性能调优的艰难和自我调侃,不时引起一阵阵掌声和笑声。

  大企业参与Linux内核的开发,带来新的面孔和话题。Oracle 马涛带来的“File Level Snapshot - Reflink”,不仅让我们知晓了数据库老大也为Linux内核贡献源代码,更是对云计算和集群文件系统的发展有所期盼。富士通的归剑峰,在 “Linux IO 控制器”所提到的内核中CGroup(Control Group),虽然在2.6.24内核中引入,将其应用,富士通参与内核开发者确是对其特有喜爱(如果应聘富士通的开发,不妨准备一下相关的主题)。 Ubuntu的 Eric Miao所介绍的《Git Tutorial》,彻底打破了git的神秘感,估计参会者回去都会一试身手,让自己的源代码管理尽量靠近国际规范。

  好奇者,可以从下图中找到文中所提到的开发者。