版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、半导体器件的发展历程及其展望 摘要:1947年12月23日第一块晶体管在贝尔实验室诞生,从此人类步入了飞速发展的电子时代。在晶体管技术日新月异的60年里,有太多的技术发明与突破,也有太多为之作出重要贡献的人,更有半导体产业分分合合、聚聚散散的恩怨情仇,当然其中还记载了众多半导体公司的浮浮沉沉。半导体器件发明之后,人类的历史正式进入了一个新的时代,也就是硅的时代。硅所代表的正是半导体元件,包括记忆元件、微处理机、逻辑元件、光电元件与侦测器等等在内,举凡电视、电话、电脑、电冰箱、汽车,这些半导体元件无时无刻都在为我们服务。纵观半导体器件的发展历程,半导体器件对人类社会发展所产生了深刻影响。探讨了半
2、导体器件所取得的最新研究成果以及它今天面临的挑战及未来发展趋势。最后阐述了世界半导体产业重心的转移及其给中国半导体产业发展带来的机遇与挑战。 关键词:半导体 晶体管 微电子技术 积体电路 半导体产业 一、半导体概述 半导体(semiconductor),指常温下导电性能介于导体(conductor)与绝缘体(insulator)之间的材料,例如:锗、硅、砷化镓等。 半导体材料具有三大特性掺杂性,热敏性,光敏性。具体解释如下:掺杂性在纯净的半导体物质中适当地掺入微量杂质,其导电能力将会成百万倍地增加,如半导体二极管、三极管等。热敏性在一些情况下温度变化20倍,电阻率变化可达百万倍以上。利用这一特
3、性可制成自动控制用的热敏元件,如热敏电阻等。光敏性在光的照射下,电路中产生电流或电流变化。半导体光电效应分为两类,一种光照改变电阻值,称为内光电效应,一种光照下产生一定的电动势,称为阻挡层光电效应。利用半导体材料的光敏特性可制成自动控制用的光敏元件,如光电池、光电管和光敏电阻等。 另外,半导体还具有负电阻率温度特性(半导体材料在受热后电阻率随温度升高而迅速减小,这与金属材料相反),压阻效应(半导体在受到压力后除发生相应的形变外,能带结构发生相应变化,从而电阻发生变化),磁敏感特性(半导体在磁场中会产生霍尔效应、磁阻效应等,热电效应(是指把热能转变为电能的过程,其中最重要的是温差电现象),导电特
4、性(半导体的导电,同时具有两种载流子,即电子和空穴)等其他特性。在分类上,按照半导体制造技术可以分为:集成电路器件,分立器件、光电半导体、逻辑IC、模拟IC、储存器等大类,一般来说这些还会被分成小类。此外还有以化学组分、应用领域、设计方法等进行分类,虽然不常用,但还是按照IC、LSI、VLSI(超大LSI)及其规模进行分类的方法。此外,还有按照其所处理的信号,可以分成模拟、数字、模拟数字混成及功能进行分类的方法。二、半导体器件发展历程导体的发现实际上可以追溯到很久以前。 1833年,英国巴拉迪最先发现硫化银的电阻随着温度的变化情况不同于一般金属,一般情况下,金属的电阻随温度升高而增加,但巴拉迪
5、发现硫化银材料的电阻是随着温度的上升而降低。这是半导体现象的首次发现。不久, 1839年法国的贝克莱尔发现半导体和电解质接触形成的结,在光照下会产生一个电压,这就是后来人们熟知的光生伏特效应,这是被发现的半导体的第二个特征。在1874年,德国的布劳恩观察到某些硫化物的电导与所加电场的方向有关,即它的导电有方向性,在它两端加一个正向电压,它是导通的;如果把电压极性反过来,它就不导电,这就是半导体的整流效应,也是半导体所特有的第三种特性。同年,舒斯特又发现了铜与氧化铜的整流效应。1873年,英国的史密斯发现硒晶体材料在光照下电导增加的光电导效应,这是半导体又一个特有的性质。 半导体的这四个效应,(
6、jianxia霍尔效应的余绩四个伴生效应的发现)虽在1880年以前就先后被发现了,但半导体这个名词大概到1911年才被考尼白格和维斯首次使用。而总结出半导体的这四个特性一直到1947年12月才由贝尔实验室完成。1947 年 12 月 23 日清晨,威廉肖克莱(Willam Shockley)焦虑不安地驾车穿越纽瓦克境内布满严霜的西部山区,在通往贝尔实验室的那段拥挤不堪的大道上,肖克莱对周围的机动车辆几乎全然不顾,他的心思已经不在这里了。 这天下午,他所在的研究小组要为上司现场演示一种全新的、颇有前途的电子器件,他得提前作好准备。 他深知这种基于半导体的放大器有可能引发一场革命。二战结束后, 贝
7、尔实验室开始研制新一代的固体器件, 具体由肖克莱负责 。前两天的一个中午, 肖克莱的两位同事理论物理学家巴丁 ( J o h n B a rdeen )和出生于中国厦门的实验物理学家布拉坦( Walter Brattain) , 在一个三角形石英晶体底座上将金箔片压到一块锗半导体材料表面制成两个点接触, 当一个接触点为正偏 ( 即相对于第三点加正电压) , 而另一个接触点为反偏时, 可以观察到把输入信号放大的晶体管行为。 他们把这一发明称为“点接触晶体管放大器”(Point 2 contacttran sistoramp lifier )。它可以传导、放大和开关电流。图1就是有史以来的第一个晶
8、体管的照片。 图 1历史上第一个晶体管 图2 John Bardeen(左),William Shockley(坐)和Walter Brattain 1949年肖克莱发表了关于PN结理论及一种性能更好的双极型晶体管(BJT)的经典论文,通过控制中间一层很薄的基极上的电流,实现放大作用,次年制成具有PN结的锗晶体管 。由于双极型晶体管是通过控制固体中的电子运动实现电信号的放大和传输功能, 比当时的主流产品真空电子管性能可靠、耗电省, 更为突出的是体积小得多,因此在应用上受到广泛重视, 它很快取代真空管作为电子信号放大组件,成为电子工业的强大引擎,由此引发了一场电子革命, 把人类文明带进现代电子时
9、代, 被媒体和科学界称为 “ 20 世纪最重要的发明”。他们3 人因此分享了1956 年度的诺贝尔物理奖。 1952年,Ebers提出可控硅器件(Thyristor)基本模型。1954年,贝尔实验室的阙平(Chapin)等人发表PN结硅太阳能电池(Solarcell)。1957年,Kroemer提出异质结双极型晶体管(HBT),这种器件具有更快的速度 。1958年,日本的江畸(Esaki)发现重掺杂PN结具有负阻效应,对这种反常现象的理解是能带结构中的隧道效应, 这促成了隧道二极管(Tunneling diode)的问世,他因此项贡献而获得1973年度的诺贝尔物理奖 。1958年至 1959
10、年, 德州仪器公司的 Kilby和仙童半导体公司的Noyce分别单独发明了在锗和硅衬底上集成数个晶体管和电阻、电容的集成电路(Integrated circuit)一块集成电路中包含的晶体管数目越多,则可完成更复杂的电路功能。从此开创了称为微电子技术发展进步和广泛深入应用的新纪元, 即微电子革命基尔比因此项贡献获得2000年度的诺贝尔物理奖,诺宜斯可惜已经谢世而无法分享此项殊荣 。1960 年, 由于表面态问题得到了有限控制,贝尔实验室的Kahng和Atalla成功地研制出第一只实用型金属氧化物半导体场效应晶体管 MOSFET。这种晶体管后来主导了集成电路和微芯片的命运。自MO SFET研制成
11、功后,它得到了迅猛发展并且成为微处理器(Microp rocessor)与存储器(Memory)等先进集成电路中最重要的器件,与其相关的集成电路产品占有半导体市场 90% 的份额 。1962年,Hall等人研制成功第一个半导体激光二极管。1963年,Gu n n 提出转移电子二极管, 被称为耿氏隧道二极管 。1963年,贝尔实验室的Wanlass和萨支唐,发明互补式金属氧化物半导体场效应晶体管(CMOS)器件。它是NMOS和PMOS的一种有机组合,构成逻辑器件。其优点是该器件只有在逻辑状态转换时(比如,从0到1)才会产生大电流,而在稳定状态时只有极小的电流通过。对先进的集成电路而言,CMOS器
12、件是最佳的器件,它是当今乃至今后相当长一段时间内最主要的集成电路技术 。1965年,摩尔为纪念电子学杂志创刊35周年,发表了集成电路上晶体管数目每18个月至24个月翻一番的规律,人称摩尔定律。 虽然它是根据19591965年的数据归纳的,但至今仍然有效。1966年,Mead发明金属半导体场效应晶体管MESFET,它是单片微波集成电路的关键器件。1966年,IBM公司的Robert H.Dennard发明动态随机存储器D RAM ,它是一种挥发性半导体存储器 (Volatil esemiconductorm emory,VSM),已广泛应用于当今计算机领域。1967年,贝尔实验室的Kahng和施
13、敏(S.M.Sze )发明非挥发性半导体存储器(Nonvolatile semiconductormemory,NVSM)。这是一种非常重要的半导体存储器,它与通常的MOSFET不同之处在于它的控制栅极下面加了一个浮动栅极,如图2所示,它可以在电源关掉以后,仍然保持其储存的电荷。 由于非挥发性半导体存储器具有非挥发性、高器件密度 、底功率损耗及可电重写性等特点,它已经成为应用于便携式电子系统如手机、笔记本电脑、数码相机和智能卡方面最主要的存储器。 图3 第一个非挥发性半导体存储器(NVSM)示意图1970年,Boyle和Smith发明电荷耦合器(CCD)。1970年,英特尔的Fede rico
14、 Faggin ,Ted Hoff和Stan Mazor发明第一个微处理器4004,它是由2300个晶体管组成的一个四位芯片,每秒能处理6万次运算。此芯片为具备数据处理,存储及输入输出, 还可以写入程序的多功能系统,其衍生的后代包括现今最流行的Pentium处理器。1974年,张立纲等人发明共振隧道二极管,它是大部分量子电子器件的基础。 1980年, M i n u ra 等人发明调制掺杂场效应晶体管MODFET ,这种器件将成为速度更快的场效应晶体管。 1980年,K.V.Klitzing从MOSFET结构中发现量子霍尔效应并开发出测定物理常数的新技术,获得了 1985年的诺贝尔物理学奖。1
15、998年诺贝尔物理奖授予Horst Stomer 、崔琦和Robert Laughlin ,以表彰他们发现分数量子霍尔效应及对这一新的量子液体的深刻理解。 1994年,Yano等人发明室温下工作的单电子存储器(Single 2 electronmemory cell,SEMC)。它其实就是将浮动栅极的长度缩小到极小的尺寸(如10 nm)所产生的极端非挥发性半导体存储器。在这种尺寸下, 只要一个电子进入浮动栅极,浮动栅极的电压就会改变,并且排斥另一个电子的进入。它可以说成是浮动栅极存储器的极限,因为只需一个电子就可以储存信息。相信单电子存储器将来可以成为储存1TB最先进的半导体存储器的基础。 1
16、998年,IBM公司与日本NEC公司合作,采用原子力显微镜(AFM)技术研制成功碳纳米管晶体管(Ca rbon nanotubet ransistor,CNT)。该晶体管的衬底为硅,并作为栅极,源极和漏极是用金做的,研究人员 用原子力显微镜(Atomic force microscope,AFM)在三个电极间放置了一根半导体性的碳纳米管,如图3 所示。这只场效应晶体管的性能良好,当栅电压变动时,源极与漏极之间的电导变化10万倍,是一个具有应用价值的电子开关。利用这一突破性的晶体管技术制造的芯片将比现在的硅芯片更小、更快。其技术难点在于纳米碳管定位、选择性成长与连结技术等。 1998年,普林斯顿
17、大学研制成功室温下工作的硅基单电子量子点晶体管(Sing lelectront ransis t or,SET)器件工作原理是基于库仑阻塞效应。器件的电流电压特性分析显示,能级分离约110 meV ,硅孤岛(点)的直径约12 nm 。2004年,杨福良(Fu Liang Yang)等人研制成功栅长仅 5 nm的纳米线Fin FET器件。今天,集成电路已覆盖信息、通讯、运输、军事、太空以及消费性电子等人类生活的全领域。半导体产品充斥于人们周围,成为生活中不可或缺的一部分。三、半导体及微电子技术展望上世纪初, 物理学的中心在欧洲, 物理学家偏重于理论及物质本性的探索研究。物理学上的许多微观量, 如
18、晶格常数、电子电荷、普朗克常数, 能带结构中的禁带宽度、费米能级等通常都是物理学家们进行学术探讨时对物质的微观世界进行描述而用到的高深词汇,不为常人所理解。随着物理中心的西移,美国的实用主义哲学成就了晶体管的发明, 使这些神秘莫测的微观物理量走出科学的神圣殿堂, 成为集成电路制造晶体管设计用到的参量。今天, 集成电路已覆盖信息、通讯、运输、军事、太空以及消费性电子等人类生活的全领域。半导体产品充斥于人们周围, 成为生活当中不可或缺的一部分。图 4 为美国半导体协会(SIA ) 绘制的半导体技术蓝图,2004年90nm半导体产品的量产标志着人类真正开始进入纳米制造时代。图5 显示出集成电路集成度
19、的惊人进步。 图 4 半导体技术蓝图 图 5集成电路集成度发展历程与蓝图 器件特征尺寸的不断微型化是微电子技术的关键,随着半导体器件的进一步发展,它越来越受到来自器件工艺与器件物理本身两方面的限制。器件特征尺寸的进一步缩小,关键在于光刻技术的进步。90 nm 产品采用193 nm 深紫外(DUV ) 光源, 目前的主要方向。一方面是将现有的紫外光光刻技术(即193 nm 157 nm DUV 光源技术)进一步拓展, 以期实现最小线宽为65 nm 的硅集成电路。据总部位于荷兰专门生产光刻机的A SM L 公司预测,采用沉浸透镜技术(Imm ersion lens lithography) ,19
20、3 nm DUV 光源技术的应用极限可以达到32 nm。另一方面是发展极限紫外(EUV ) 光刻技术(13 nm EUV 光源技术) 研究, 期待能使线宽小于20nm ,由此可将现有的CMOS工艺推至加工极限。 极限紫外光刻技术的研究从概念的提出至今,已经发展了近15 年, 它或许是最后一代用光实现纳米制造的光刻技术。除了极限紫外光刻技术以外, 还有其它新一代纳米级的光刻技术, 如: X 光光刻、电子束投影、离子束投影、微型电子束阵列等等。四、世界半导体工业的发展历程 半导体工业的产生从根本上改变了世界的经济和商业运行的模式。首先,半导体工业已被扩展至全球,在全球市场中产生经济效益。其次,商业
21、机构采用流水作业,我们原本认为统一的生产模式已经变得多样性。同时,随着技术的快速发展,半导体生产对于工人的技能要求也在快速更新,这使得工人需要被重新训练。最后,生产往往是即时生产而非大规模生产,以确保其经济受益。1、早期半导体工业的发展在日本,有人把半导体比喻为工业社会的稻米,是近代社会一日不可或缺的。在国防上,惟有扎实的电子工业基础,才有强大的国防能力,1991年的波斯湾战争中,美国已经把新一代电子武器发挥得淋漓尽致。从1970年代以来,美国与日本间发生多次贸易摩擦,但最后在许多项目美国都妥协了,但是为了半导体,双方均不肯轻易让步,最后两国政府慎重其事地签订了协议,足证对此事的重视程度,这是
22、因为半导体工业发展的成败,关系着国家的命脉,不可不慎。在台湾,半导体工业是新竹科学园区的主要支柱,半导体公司也是最赚钱的企业,台湾如果要成为明日的科技硅岛,半导体工业是我们必经的途径。电晶体的确是由于科学发明而创造出来的一个新元件,但是工业界在1950年代为了生产电晶体,却碰到许多困难。1951年,西方电器公司(Western ElectrIC)开始生产商用的锗接点电晶体,1952年4月,西方电器、雷神(Raytheon)、美国无线电(RCA与奇异(GE)等公司,则生产出商用的双极型电晶体。但直到1954年5月,第一颗以硅做成的电晶体才由美国德州仪器公司(TexasInstruments)开发
23、成功。早期制造出来的电晶体均属于高台式的结构。1958年,快捷半导体公司(FairchildSemIConductor)发展出平面工艺技术(planartechnology),藉着氧化、黄光微影、蚀刻、金属蒸镀等技巧,可以很容易地在硅晶片的同一面制作半导体元件。1960年,磊晶(epitaxy)技术也由贝尔实验室发展出来了。至此,半导体工业获得了可以批次(batch)生产的能力,终于站稳脚步,开始快速成长。现代半导体工业的发展 2.1积体电路 积体电路就是把许多分立元件制作在同一个半导体晶片上所形成的电路,早在1952年,英国的杜默(Geoffrey W.A.Dummer)就提出积体电路的构想
24、。1958年9月12日,德州仪器公司(TexasInstruments)的基尔比(Jack Kilby,1923),细心地切了一块锗作为电阻,再用一块pn接面做为电容,制造出一个震荡器的电路,并在1964年获得专利,首度证明了可以在同一块半导体晶片上能包含不同的元件。1964年,快捷半导体(FairchildSemIConductor)的诺宜斯(Robert Noyce,19271990),则使用平面工艺方法,即藉着蒸镀金属、微影、蚀刻等方式,解决了积体电路中,不同元件间导线连结的问题。积体电路的第一个商品是助听器,发表于1963年12月,当时用的仍是双极型电晶体;1970年,通用微电子(Ge
25、neralMICroelectronics)与通用仪器公司(GeneralInstruments),解决了硅与二氧化硅界面间大量表面态的问题,开发出金氧半电晶体(metal-oxide-semiconductor,MOS);因为金氧半电晶体比起双极型电晶体,功率较低、集积度高,制程也比较简单,因而成为后来大型积体电路的基本元件。60年代发展出来的平面工艺,可以把越来越多的金氧半元件放在一块硅晶片上,从1960年的不到十个元件,倍数成长到1980年的十万个,以及1990年约一千万个,这个每年加倍的现象称为莫尔定律(Moores law),是莫尔(Gordon Moore)在1964年的一次演讲中
26、提出的,后来竟成了事实。图6 世界半导体设备的投资2.2超大型积体电路在1970年代,决定半导体工业发展方向的,有两个最重要的因素,那就是半导体记忆体(semIConductormemory)与微处理机(microprocessor)。在微处理机方面,1969年,一个日本计算机公司比吉康(Busicom)和英代尔接触,希望英代尔生产一系列计算机晶片,但当时任职于英代尔的霍夫(MacianE.Hoff)却设计出一个单一可程式化晶片,1971年11月15日,世界上第一个微处理器4004诞生了,它包括一个四位元的平行加法器、十六个四位元的暂存器、一个储存器(aCCumulator)与一个下推堆叠(p
27、ush-downstack),共计约二千三百个电晶体。 毫无疑问的,记忆体晶片与微处理器同等的重要,1965年,快捷公司的施密特(J.D.Schmidt)使用金氧半技术做成实验性的随机存取记忆体。1969年,英代尔公司推出第一个商业性产品,这是一个使用硅闸极、p型通道的256位元随机存取记忆体。记忆体发展过程中最重要的一步,就是1969年,IBM的迪纳(R.H.Dennard)发明了只需一个电晶体和一个电容器,就可以储存一个位元的记忆单元;由于结构简单,密度又高,现今半导体制程的发展常以动态随机存取记忆体的容量为指标。大致而言,1970年就有1K的产品;1974年进步到4K(闸极线宽十微米);
28、1976年16K(五微米);1979年64K(三微米);1983年256K(一点五微米);1986年1M(一点二微米);1989年4M(零点八微米);1992年16M(零点五微米);1995年64M(零点三五微米);1998年到256M(零点二五微米),大约每三年进步一个世代,2001年就迈入十亿位元大关。根据国际半导体科技进程(InternationalTechnologyRoaDMApforSemIConductor)的推估,西元2014年,最小线宽可达0.035微米,记忆体容量更高达两亿五千六百万位元,尽管新制程、新技术的开发越形困难,但半导体业在未来十五年内,相信仍会迅速的发展下去。五
29、、半导体产业重心的转移及中国半导体产业的机遇与挑战20 世纪70 年代末, 半导体产业重心从美国转移到了日本, 而20 世纪80 年代末, 韩国与中国台湾成为半导体产业的主力。每一次产业重心转移, 都引发了整个产业的剧烈震荡, 这种力量也给那些新兴国家和地区带来了巨大的经济动力。这种转移在日本造就了日立、东芝、三菱电气、富士通和N EC 等世界顶级的半导体制造商。而仅仅通过十余年的不懈努力, 韩国成为继美国、日本之后的世界第三个半导体产业中心, 自上个世纪90 年代中期以来, 半导体产值一度占据韩国出口产品的第一位。韩国三星公司更成为世界第一大存储器生产大厂。随着中国作为新的世界制造战略基地的
30、崛起, 中国半导体厂的兴建经历了一股热潮。仅仅几年前, 中国的半导体厂还距世界先进水平有着四、五代的巨大差距, 而今, 这差距已被迅速缩小至仅仅一、两代。2004年9月25日,中芯国际集成电路制造有限公司(SMIC)在北京举行隆重庆典,庆祝其第一座12英寸芯片厂成功投产进入正式营运阶段。中国第一条12 英寸芯片生产线的建成, 标志着中国集成电路制造技术已经跨入300 mm 时代,中国业已进入全球半导体制造强国的行列。仅中芯国际三地的总产能在2004 年底达到预定的月产12万5 千片八等值晶圆。自2004 年的第三季开始,中芯国际已超过新加坡特许半导体成为全球第三大晶圆代工厂商,在行业内的排名仅
31、次于台积电和联电。自2005年起,开始导入90 nm 制程, 进入投产阶段。这意味着中芯国际在90 nm 技术上只落后台积电等领先代工企业9到12个月, 表明中芯国际正在缩小与先进技术的差距。在此之前, 中芯国际在130 nm 技术上落后台积电18个月。意法半导体(ST M icroelectronics) 企业副总裁Otto Kosgalwies在德国慕尼黑举行的2004Electronica 会议上表示,中国将在2008 年成为全球最大的半导体制造国,其出货比重占全球23% ,金额为500亿美元。六、结束语 半导体技术已经历了巨大的发展, 成为发展最快的技术。它对人类社会的发展产生了深刻影
32、响。新世纪初的中国, 面临着发展民族半导体产业的强大机遇与挑战。国家在加强对半导体企业实行优惠政策的同时, 还将完善我国现行科技法律、法规与奖励办法, 努力提高我国高新技术专家、发明家和实践革新家的地位和声望。通过国家政策和投入, 体现国家意志, 在总体上实现市场和计划对中国一流半导体企业技术中心的全力支持, 使其尽快成长为世界一流的实验室和生产中心。在此, 笔者预言: 在不远的将来, 中国一定会拥有世界一流的企业、世界一流的大学与世界一流的实验室、世界一流的科研人才! 我们一定会不断创新, 不会错过这一难得也可能是唯一的机遇。参考文献1张波.半导体技术的发展浪起潮涌.世界产品技术,2002.
33、22华伟.新型功率MOS器件结构与性能特点.半导体技术,2001.7.27303冯亚林,张蜀平.集成电路的现状及其发展趋势.微电子学,2006.44刘明,谢常青,王丛舜,龙世兵,李志钢,易里成荣,涂德钰.纳米加工和纳米电子器件J. 微纳电子技 术,2005.9附录资料:不需要的可以自行删除 busybox详解制作根文件系统详解制作根文件系统 一、FHS(Filesystem Hierarchy Standard)标准介绍当我们在linux下输入ls / 的时候,见到的目录结构以及这些目录下的内容都大同小异,这是因为所有的linux发行版在对根文件系统布局上都遵循FHS标准的建议规定。该标准规定
34、了根目录下各个子目录的名称及其存放的内容:目录名存放的内容/bin必备的用户命令,例如ls、cp等/sbin必备的系统管理员命令,例如ifconfig、reboot等/dev设备文件,例如mtdblock0、tty1等/etc系统配置文件,包括启动文件,例如inittab等/lib必要的链接库,例如C链接库、内核模块/home普通用户主目录/rootroot用户主目录/usr/bin非必备的用户程序,例如find、du等/usr/sbin非必备的管理员程序,例如chroot、inetd等/usr/lib库文件/var守护程序和工具程序所存放的可变,例如日志文件/proc用来提供内核与进程信息的
35、虚拟文件系统,由内核自动生成目录下的内容/sys用来提供内核与设备信息的虚拟文件系统,由内核自动生成目录下的内容/mnt文件系统挂接点,用于临时安装文件系统/tmp临时性的文件,重启后将自动清除制作根文件系统就是要建立以上的目录,并在其中建立完整目录内容。其过程大体包括:编译安装busybox,生成/bin、/sbin、/usr/bin、/usr/sbin目录 利用交叉编译工具链,构建/lib目录 手工构建/etc目录 手工构建最简化的/dev目录 创建其它空目录 配置系统自动生成/proc目录 利用udev构建完整的/dev目录 制作根文件系统的jffs2映像文件 下面就来详细介绍这个过程。
36、二、编译安装busybox,生成/bin、/sbin、/usr/bin、/usr/sbin目录这些目录下存储的主要是常用命令的二进制文件。如果要自己编写这几百个常用命令的源程序,my god, 这简直是一个噩梦!好在我们有嵌入式Linux系统的瑞士军刀busybox,事情就简单很多。1、从 HYPERLINK / / 下载busybox-1.7.0.tar.bz22、tar xjvf busybox-1.7.0.tar.bz2解包3、修改Makefile文件175 ARCH ?= arm176 CROSS_COMPILE ?= arm-linux- 4、make menuconfig配置bus
37、yboxbusybox配置主要分两部分。第一部分是Busybox Settings,主要编译和安装busybox的一些选项。这里主要需要配置:1)、Build Options - Build BusyBox as a static binary (no shared libs),表示编译busybox时,是否静态链接C库。我们选择动态链接C库。2)、Installation Options - Applets links (as soft-links) - (X) as soft-links,表示安装busybox时,将各个命令安装为指向busybox的软链接还是硬链接。我们选择软链接。3)、
38、Installation Options - (/work/nfs_root/fs_mini3) BusyBox installation prefix,表示busybox的安装位置。我们选择/work/nfs_root/fs_mini34)Busybox Library Tuning。保留Command line editing以支持命令行编辑;保留History size以支持记忆历史命令;选中Tab completion和Username completion以支持命令自动补全 第二部分是Applets,他将busybox的支持的几百个命令分门别类。我们只要在各个门类下选择想要的命令即可
39、。这里我们基本保持默认设置。1)选中Networking Utilities - httpd下的Enable -u option,以启用http服务器的功能allows the server to run as a specific user5、编译busyboxmake6、安装busyboxmake install安装完成后,可以看到在/work/nfs_root/fs_mini3目录下生成了binsbinusr/binusr/sbin目录,其下包含了我们常用的命令,这些命令都是指向bin/busybox的软链接,而busybox本身的大小不到800K:dennisdennis-deskto
40、p:/work/nfs_root/fs_mini3$ lsbin linuxrc sbin usrdennisdennis-desktop:/work/nfs_root/fs_mini3$ ls -l bintotal 740lrwxrwxrwx 1 dennis dennis 7 2010-04-03 23:57 addgroup - busyboxlrwxrwxrwx 1 dennis dennis 7 2010-04-03 23:57 adduser - busyboxlrwxrwxrwx 1 dennis dennis 7 2010-04-03 23:57 ash - busybox-
41、rwxr-xr-x 1 dennis dennis 749632 2010-04-03 23:57 busyboxlrwxrwxrwx 1 dennis dennis 7 2010-04-03 23:57 cat busybox 而普通PC机上的ls命令就有差不多80K的大小: dennisdennis-desktop:/work/nfs_root/fs_mini3$ ls -l /bin/ls-rwxr-xr-x 1 root root 78004 2007-09-29 20:51 /bin/ls busybox以它娇小的身躯容纳了数以百计的命令代码,实在是让人佩服不已,其不愧嵌入式系统瑞士
42、军刀之美誉。据说,busybox的作者身患绝症,这更让人钦佩GNU开源软件的作者们。 三、利用交叉编译工具链,构建/lib目录 光有应用程序(命令)是不够的,因为应用程序本身需要使用C库的库函数,因此还必需制作for ARM的C库,并将其放置于/lib目录。my god,要自己写C库的源代码吗?不用!还记得交叉编译工具链的3个组成部分吗?交叉编译器、for ARM的C库和二进制工具。哈哈,for ARM的C库是现成的,我们只需要拷贝过来就可以了。遗憾的是:整个C库目录下的文件总大小有26M。而我们根文件系统所在分区不过区区16M而已,根本放不下。怎么办呢? dennisdennis-deskt
43、op:/work/nfs_root/fs_mini3$ du -s -si /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib26M /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib 需要C库目录下所有的文件吗?no,absolutely no! 让我们来分析一下glibc库目录下内容的组成。该目录下的子目录和文件共分8类: 目标文件,如crtn.o,用于gcc链接可执行文件 libtool库文件(.la),在链接库文件时这些文件会被用到,比如他们列出了当前库文件所依赖的其它库文件,程序运行时无需这些文件
44、 gconv目录,里面是各种链接脚本,在编译应用程序时,他们用于指定程序的运行地址,各段的位置等 静态库文件(.a),例如libm.a,libc.a 动态库文件 (.so、.so.0-9*) 动态链接库加载器ld-2.3.6.so、ld-linux.so.2 其它目录及文件很显然,第1、2、3、4、7类文件和目录是不需要拷贝的。由于动态链接的应用程序本身并不含有它所调用的C库函数的代码,因此执行时需要动态链接库加载器来为它加载相应的C库文件,所以第6类文件是需要拷贝的。除此之外,第5类文件当然要拷贝。但第5类文件的大小也相当大。dennisdennis-desktop:/work/tools/
45、gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ du -c -si *.so* 7.2M total 需要全部拷贝吗?非也,非也!其实,需要哪些库完全取决于要运行的应用程序使用了哪些库函数。如果我们只制作最简单的系统,那么我们只需要运行busybox这一个应用程序即可。通过执行 dennisdennis-desktop:/work/nfs_root/fs_mini3$ arm-linux-readelf -a bin/busybox | grep Shared0 x00000001 (NEEDED) Shared library: libcrypt.so.10 x00
46、000001 (NEEDED) Shared library: libm.so.60 x00000001 (NEEDED) Shared library: libc.so.6 可知:busybox只用到了3个库:通用C库(libc)、数学库(libm)、加密库(libcrypt),因此我们只需要拷贝这3个库的库文件即可。但是每个库都有4个文件,4个文件都要拷贝吗?当然不是。 dennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ ls -l libcrypt.-*-rwxr-xr-x 1 dennis denn
47、is 30700 2008-01-22 05:32 libcrypt-2.3.6.so-rw-r-r- 1 dennis dennis 23118 2008-01-22 05:32 libcrypt.alrwxrwxrwx 1 dennis dennis 13 2008-12-22 15:38 libcrypt.so - libcrypt.so.1lrwxrwxrwx 1 dennis dennis 17 2008-12-22 15:38 libcrypt.so.1 - libcrypt-2.3.6.sodennisdennis-desktop:/work/tools/gcc-3.4.5-gl
48、ibc-2.3.6/arm-linux/lib$ ls -l libm.-*-rwxr-xr-x 1 dennis dennis 779096 2008-01-22 05:31 libm-2.3.6.so-rw-r-r- 1 dennis dennis 1134282 2008-01-22 05:32 libm.alrwxrwxrwx 1 dennis dennis 9 2008-12-22 15:38 libm.so - libm.so.6lrwxrwxrwx 1 dennis dennis 13 2008-12-22 15:38 libm.so.6 - libm-2.3.6.sodenni
49、sdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ ls -l libc.-*-rwxr-xr-x 1 dennis dennis 1435660 2008-01-22 05:48 libc-2.3.6.so-rw-r-r- 1 dennis dennis 2768280 2008-01-22 05:31 libc.a-rw-r-r- 1 dennis dennis 195 2008-01-22 05:34 libc.solrwxrwxrwx 1 dennis dennis 13 2008-12-22 15:38 l
50、ibc.so.6 - libc-2.3.6.so 4个文件中的.a文件是静态库文件,是不需要拷贝的。另外3个文件是: 实际的共享链接库:libLIBRARY_NAME-GLIBC_VERSION.so。当然需要拷贝。 主修订版本的符号链接,指向实际的共享链接库:libLIBRARY_NAME.so.MAJOR_REVISION_VERSION,程序一旦链接了特定的链接库,将会参用该符号链接。程序启动时,加载器在加载程序前,会检索该文件。所以需要拷贝。 与版本无关的符号链接,指向主修订版本的符号连接(libc.so是唯一的例外,他是一个链接命令行:libLIBRARY_NAME.so,是为编译程
51、序时提供一个通用条目)。这些文件在程序被编译时会被用到,但在程序运行时不会被用到,所以不必拷贝它。关于共享库的2个符号链接的作用的特别说明:当我们使用gcc hello.c -o hello -lm编译程序时,gcc会根据-lm的指示,加头(lib)添尾(.so)得到libm.so,从而沿着与版本无关的符号链接(libm.so - libm.so.6)找到libm.so.6并记录在案(hello的ELF头中),表示hello需要使用libm.so.6这个库文件所代表的数学库中的库函数。而当hello被执行的时候,动态链接库加载器会从hello的ELF头中找到libm.so.6这个记录,然后沿着
52、主修订版本的符号链接(libm.so.6 - libm-2.3.6.so)找到实际的共享链接库libm-2.3.6.so,从而将其与hello作动态链接。可见,与版本无关的符号链接是供编译器使用的,主修订版本的符号链接是供动态链接库加载器使用的,而实际的共享链接库则是供应用程序使用的。通过以上分析,我们只需要拷贝3个库(每个库各1个主修订版本的符号链接和1个实际的共享链接库)以及动态链接库加载器(1个符号链接和1个实体文件)。步骤如下:dennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ mkdir /wor
53、k/nfs_root/fs_mini3/lib dennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp libcrypt-* /work/nfs_root/fs_mini3/libdennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp -l libcrypt.so.* /work/nfs_root/fs_mini3/libdennisdennis-desktop:/work/tools/gcc-3.4.5-glibc
54、-2.3.6/arm-linux/lib$ cp libm-* /work/nfs_root/fs_mini3/libdennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp -l libm.so.* /work/nfs_root/fs_mini3/libdennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp libc-* /work/nfs_root/fs_mini3/libdennisdennis-desktop:
55、/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp -l libc.so.* /work/nfs_root/fs_mini3/lib dennisdennis-desktop:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib$ cp -l ld-* /work/nfs_root/fs_mini3/lib 四、手工构建/etc目录 /etc目录存放的是系统程序的主配置文件,因此需要哪些配置文件取决于要运行哪些系统程序。即使最小的系统也一定会运行1号用户进程init,所以我们至少要手工编写init的主
56、配置文件inittab。busybox的inittab文件的语法、语义与传统的SYSV的inittab有所不同。 inittab文件中每个条目用来定义一个需要init启动的子进程,并确定它的启动方式,格式为:。例如:ttySAC0:askfirst:-/bin/sh 表示子进程要使用的控制台,若省略则使用与init进程一样的控制台 表示运行级别,busybox init程序这个字段没有意义 表示init进程如何控制这个子进程 sysinit:系统启动后最先执行,只执行一次,init进程等待它结束后才继续执行其它动作 wait:系统执行完sysinit条目后执行,只执行一次,init进程等待它结
57、束后才继续执行其它动作 once:系统执行完wait条目后执行,只执行一次,init进程不等待它结束 respawn:启动完once进程后,init进程监测发现子进程退出时,重新启动它 askfirst:启动完respawn进程后,与respawn类似,不过init进程先输出” Please press Enter to activate this console“,等用户输入回车后才启动子进程 shutdown:当系统关机时 restart:Busybox中配置了CONFIG_FEATURE_USE_INITAB,并且init进程接收到SIGUP信号时执行,先重新读取、解析/etc/init
58、tab文件,再执行restart程序 ctrlaltdel:按下ctrl+alt+del键时执行,不过在串口控制台中无法输入它 表示进程对应的二进制文件。如果前面有-号,表示该程序是“可以与用户进行交互的”我们制作最简单的/etc/inittab文件,其内容如下::sysinit:/etc/init.d/rcS:askfirst:-/bin/sh:ctrlaltdel:/sbin/reboot:shutdown:/bin/umount -a r 制作最简单的脚本程序文件/etc/init.d/rcS,其内容如下: #!/bin/shifconfig eth0 7修改shell脚本文件/etc/
59、init.d/rcS的权限,以使其可被执行:# chmod a+x /etc/init.d/rcS五、手工构建最简化的/dev目录 在linux机器上,执行ls /dev可看到几百个设备文件,我需要手工创建它们吗?maybe,我只需要手工创建几个设备文件!我怎么知道我应该创建哪几个设备文件呢?管它呢,先看看开发板上可爱的linux的反应再说。 启动Linux操作系统,显示: VFS: Mounted root (nfs filesystem).Freeing init memory: 112KWarning: unable to open an initial console. 这说明,内核已
60、经成功挂载根文件系统,但却未能成功启动第1个用户进程init。通过错误消息“unable to open an initial console”搜索内核源代码,找到init/main.c文件。748 static int noinline init_post(void)749 750 free_initmem();751 unlock_kernel();752 mark_rodata_ro();753 system_state = SYSTEM_RUNNING;754 numa_default_policy();755 756 if (sys_open(const char _user *)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制冷工保密意识强化考核试卷含答案
- 光纤套塑工安全专项知识考核试卷含答案
- 大型藻类栽培工岗位专业实操考核试卷含答案
- 井下作业机司机操作能力考核试卷含答案
- 真空垂熔工安全生产基础知识评优考核试卷含答案
- 少儿体能运动馆商业计划书
- 宠物用品品牌项目商业计划书
- 2026年银盐型CTP版行业发展趋势报告
- 预制菜包装标识设计规范
- 海绵城市建设工程风险评估报告
- T∕CIATCM 132-2025 名老中医经验传承信息系统基本功能规范
- 循证医学:创伤评分课件
- 春朱自清课件全国一等奖
- 贵妇膏产品培训课件
- 行动教育EMBA课程体系
- 《中国炎症标志物检测临床应用专家共识(2025)》
- 遥感技术监测大气污染
- 2025黑龙江齐齐哈尔泰来镇第二次社区工作者招聘44人备考题库附答案
- 供应商管理评审评分标准及表格
- 米厂入股协议书范本
- 2025-2026学年沪教版七年级英语上册(全册)知识点梳理归纳
评论
0/150
提交评论