您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 浅析Linux技术的发展
第29卷第2期吉林建筑工程学院学报Vol.29No.22012年4月JournalofJilinInstituteofArchitecture&CivilEngineeringApr.2012浅析Linux技术的发展*张伟杰(吉林建筑工程学院计算机科学与工程学院,长春130118)摘要:对Linux技术的发展进行相应浅析,从事物发展规律的角度,揭示了Linux技术发展历程.从Linux本质角度浅析了其特点;从Linux研究本质提出了基于Linux主要组成部分;从Internet、物联网的出现为背景,探索了Linux技术面临的挑战.关键词:Linux;Linux特性;Linux内核中图分类号:TP316.8文献标志码:A文章编号:1009-0185(2012)02-0073-03TheDevelopmentofLinuxTechnologyZHANGWei-jie(SchoolofComputerScienceandEngineering,JilinInstituteofArchitectureandCivilEngineering,Changchun,China130118)Abstract:Thepapergivessomethinkingaccordingtothefollowingfouraspects:fromthelawofthingsdevelop-ment,revealingthedevelopmenthistoryofLinuxtechnology;fromthepointofLinuxnatural,analyzingitscharac-ter;fromthepointofLinuxdevelopment,proposingLinuxdenonstrationandinference.Keywords:Linux;Linuxcharacteristic;LinuxkernelLinux是一种自由和开放源码的类Unix操作系统.目前存在着许多不同的Linux,但其都使用了Linux内核.Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机.Linux是一个领先的操作系统,世界上运算速度最快的计算机运行的都是Linux操作系统.1Linux的发展历程Linux操作系统的诞生、发展和成长过程始终依赖着以下5大支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络.Unix操作系统是美国AT&T的贝尔实验室的Ken.Thompson,DennisRitchie和DouglasMcllroy于1969年夏在DECPPP-7小型计算机上开发的一个分时操作系统.1971年Ken.Thompson和DennisRitchie成功地用C语言重写了Unix内核.1974年,Unix以“仅用于教育目的”的协议,提供给大学作为教学之用,成为当时操作系统课程中的范例教材.各大学、公司开始通过Unix源码对Unix进行了各种各样的改进和扩展,于是,Unix开始广泛流行.后来,AT&T公司开始注意到Unix带来的商业价值,公司的律师开始寻找一些手段来保护Unix,并让其成为一种商业机密.从1979年Unix的版本V7开始,Unix的许可证开始禁止大学使用Unix的源码,包括在授课中学习.MINIX系统是由美藉荷兰侨民Andrew.S.Tanenbaum(AST)于1987年开发的,源于Unix源码被禁止使用,开发该系统主要用于学生学习操作系统原理.MINIX的名称取自英语MiniUnix,是一个迷你版本的类Unix操作系统,它是重新发展的,并没有使用任何的AT&T的程序码,到1991年收稿日期:2011-11-28.作者简介:张伟杰(1975~),女,吉林省长春市人,讲师,硕士.*基金项目:吉林建筑工程学院青年科技发展基金项目(J20091057).74吉林建筑工程学院学报第29卷时版本是1.5,当时该操作系统在大学使用是免费的,但其它用途不是,当然目前都已经是免费的.GNU是“GNU’sNotUnix”的递归缩写,是一个名叫RichardStallman认为Unix是一个相当好的操作系统,如果大家都能将自已所学贡献出来,那么,这个系统将会更加优异.他倡导的OpenSource的概念,就是针对Unix这一事实,反对实验室里的产品商业化、私有化.实现一个仿Unix操作系统成了他追求的明确战略目标.为了这个理想,RichardStallman于1984年创立了GNU,计划开发一套与Unix相互兼容的软件.1985年,他又创立了自由软件基金会(FreeSoftwareFoundation)来为GNU计划提供技术、法律以及财政支持.自发起这个计划以来,GNU开始大量的产生或收集各种系统所必备的组件,例如:函数库、编译器、调试工具、文本编辑器、网站服务器,以及一个Unix的使用接口(UnixShell)等,但由于种种原因,GNU一直没有开发操作系统的Kernel.POSIX表示可移植操作系统接口(PortableOperatingSystemInterface),电气与电子工程师协会(InstituteofElectricalandElectronicsEngineers,IEEE)最初开发POSIX标准,是为了提高Unix环境下应用程序的可移植性.然而,POSIX并不局限于Unix,许多其它操作系统,例如,DECOpenVMS和MicrosoftWindowsNT都支,[1]持POSIX标准现在它已经发展成为一个非常庞大的标准族.1991年,芬兰赫尔辛基大学的一名学生LinusTorvalds,他主修的课程中有一门课是操作系统,专门研究程序设计和执行,并且本课程采用MINIX做为实验系统.Linus不满足于该系统的功能,就希望能给其添加一些功能.于是,他就根据实际的需要编写了磁盘驱动程序以便下载访问新闻组的文件,又编写了文件系统以便能够阅读MINIX文件系统中的文件,这就是0.0.1版本的Linux.Linus从一开始就决定自由传播Linux,他把源代码发布在网上,于是,众多的爱好者和程序员也都通过互联网加入到Linux的内核开发工作中.这个思想与FSF资助发起的GNU的自由软件精神不谋而合.GNU是为了推广自由软件的精神以实现一个自由的操作系统,然后从应用程序开始,实现其内核.而当时Linux的优良性能备受GNU的赏识,于是,GNU就决定采用Linus及其开发的内核.在他们共同努力下,Linux这个完整的操作系统诞生了.其中的程序开发共同遵守GeneralPublicLicense(GPL)协议和POSIX标准,规定了源码必须可以无偿地获取并且修改.Linux以平均两星期更新一次的速度迅速成长,如今已经有超过250种发行版本,且可以支持所有体系结构的处理器,如X86,PowerPC,ARM,Xscale等.迄今为止,它的内核版本也已经从原先的0.0.1发展到现在的2.6.xx.2Linux的特点和主要组成部分Linux的特点有:自由软件,开放源代码;真正的多用户、多任务操作系统;可灵活裁剪配置;支持多种硬件平台;提供强大的管理功能;完全符合POSIX标准;具有丰富的图形用户界面;具有强大的网络功能[2].Linux一般由内核、Shell、文件结构和实用工具4个主要部分组成.2.1Linux内核Linux内核是整个Linux系统的灵魂,Linux内核负责整个系统的内存管理、进程调度和文件管理.它从用户那里接受命令,并把命令送给内核去执行.Linux内核的容量并不大,并且大小可以裁剪,这个特性对嵌入式系统非常有好处.内核功能主要包括进程管理、内存管理、文件系统、设备控制和网络功能.2.2LinuxShellShell是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.实际上Shell是一个命令解释器,它解释由用户输入的命令且把它们送到内核.不仅如此,Shell有自已的编程语言用于对命令编辑,它允许用户编写由Shell命令组成的程序.Linux系统提供多种不同的Shell以供选择.常用的有SH(BourneShell),CSH(C-Shell),KSH(KornShell)和BASH(BourneAgainShell).2.3Linux文件结构Linux是一个多用户系统,采用目录的方式管理文件,呈多级树形结构,用户可以设置目录和文件的权第2期张伟杰:浅析Linux技术的发展75限.如图1所示是Linux文件结构目录[2].图1Linux的目录结构2.4Linux实用工具标准的Linux系统都有一套叫做实用工具的程序,它们是专门的程序,例如,编辑器、执行标准的计算操作等.用户也可以产生自已的工具.实用工具可分3类:(1)编辑器:用于编辑文件;(2)过滤器:用于接收数据并过滤数据;(3)交互程序:允许用户发送信息或接收来自其他用户的信息.内核、Shell和文件结构一起形成了基本的操作系统结构.它们使用户可以运行程序、管理文件,以及使用系统,而实用工具的程序,辅助用户完成一些特定的任务[3].3Linux面临的挑战嵌入式Linux系统的开发,无疑是正在蓬勃兴起,并已形成了很大的市场,国内外很多大、中型公司都在[4],进行嵌入式Linux的研究和开发.但就目前的技术而言嵌入式Linux的研究成果与市场的真正需求还有一些距离,因此,要达到大规模商业化,还面临如下挑战:(1)实时性,有待扩展.嵌入式操作系统的基本要求之一是实时性,因为Linux的内核不支持事件优先级和抢占实时特性,还不完全满足实时操作系统的要求,所以在以后的研究和开发的过程中,首要问题是扩展Linux的实时性能;(2)集成开发环境,有待完善.Linux在基于图形界面的特定系统定制平台的研究上,与Windows操作系统相比还存在差距.因此,要使嵌入式Linux在嵌入式操作系统领域中的优势更加明显,整体集成开发环境还有待提高和完善;(3)Linux内核体系结构是Monolithic,该结构效率高,体积大,不太适合嵌入式系统.而Microkernel结构,在内核中只包括一些基本的内核功能,体积小,较适合嵌入式系统.为此,要使嵌入式Linux应用更加广泛,若将Linux目前的Monolithic内核中的部分结构改造成Microkernel体系结构,可使得到的Linux既具有很好的实用性,又能满足嵌入式系统体积小的要求.参考文献[1]陈莉君,康华,张波.Linux内核设计与实现[M].北京:中国机械工业出版社,2006:2-5.[2]陈颐.嵌入式技术原理与应用[M].北京;北京航空航天大学出版社,2011:254-258.[3]华清远见嵌入式培训中心.嵌入式Linux应用程序开发[M].北京:人民邮电出版社,2009:1-4.[4]任桥伟.Linux内核修炼之道[M].北京:人民邮电出版社,2010:2-13.薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿羁膂莈蚅袇膁蒀蒈螃膀膀蚃虿腿节蒆羈芈莄蚁袄芈蒆蒄螀芇膆蚀蚆袃莈蒃蚂袂蒁螈羀袁膀薁袆袁芃螆螂袀莅蕿蚈衿蒇莂羇羈膇薇袃羇艿莀蝿羆蒂薆螅羅膁蒈蚁羅芄蚄罿羄莆蒇袅羃蒈蚂螁羂膈蒅蚇肁芀蚁薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿羁膂莈蚅袇膁蒀蒈螃膀膀蚃虿腿节蒆羈芈莄蚁袄芈蒆蒄螀芇膆蚀蚆袃莈蒃蚂袂蒁螈羀袁膀薁袆袁芃螆螂袀莅蕿蚈衿蒇莂羇羈膇薇袃羇艿莀蝿羆蒂薆螅羅膁蒈蚁羅芄蚄罿羄莆蒇袅羃蒈蚂螁羂膈蒅蚇肁芀蚁薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈
本文标题:浅析Linux技术的发展
链接地址:https://www.777doc.com/doc-2309242 .html