基础知识
当前位置:首页 > 公文写作 > 基础知识 > 列表页

lunix基础知识论文

小草范文网  发布于:2017-01-20  分类: 基础知识 手机版

篇一:linux论文

Linux

结

技术物理系 电子科技09-1

540911010132 王森

指导老师:邢利峰

2010-12-6

摘要:

本文主要论述了Linux的现状、特点、应用、 简单论述了影响及对中国软件业未来的方向性影响。

关键词:

LinuxUnixNetWare Windows NT

Linux操作系统总结

虽然对许多人来说,linux可能已经是很熟悉的东西了,但我以前实在是没有机会接触,知识听说以Linux作为主要的操作系统组成庞大的工作站群,完成了《泰坦尼克号》的特技制作。但是对Linux来说,这只是众多新闻 中的一个。最近,有关各厂商宣布支持Linux的新闻日趋增多,用户对Linux的热情也空前高涨。那么,我一直很是好奇,这究竟是一个什么样的系统,可以让如此多的用户如此的着迷,如此的执着呢?随着这个学期的课程展开,我也开始对linux有了一些基本的了解。

1. Linux的简介和特点

Linux是一种“自由软件”:用户可以自由地获取程序及其源代码,并能自由地使用他们,包括修改或拷贝等。它是网络时代的产物,众多的技术人员通过Internet共同完成它的研究和开发,无数用户参与了测试和除错,并可方便地加上用户自己编制的扩充功能。作为自由软件中最为出色的一个,Linux具有如下的特点:

(1) 完全遵循POSLX标准,并扩展支持所有AT&T和BSD Unix特性的网络操作系统。由于继承 了Unix优秀的设计思想,且拥有干净、健壮、高效且稳定的内核,其所有核心代码都是由LinusTorvalds以及其他优秀的程序员们完成,没有AT&T或伯克利的任何Unix代码,所以Linux不是Unix,但Linux与Unix完全兼容。

(2) 真正的多任务、多用户系统,内置网络支持,能与NetWare、Windows NT、OS/2、Unix 等无缝连接。网络效能在各种Unix测试评比中速度最快。同时支持FAT16、FAT32、NTFS、Ex t2FS、ISO9600等多种文件系统。

(3) 可运行于多种硬件平台,包括Alpha、SunSparc、PowerPC、MIPS等处理器,对各种新型 外围硬件,也可以从分布于全球的众多程序员那里得到迅速地支持。

(4) 对硬件要求较低,可在较低档的机器上获得很好的性能,特别值得一提的是Linux出色 的稳定性,其运行时间往往可以“年”计。

(5) 有广泛的应用程序支持。已经有越来越多的应用程序移植到Linux上,包括一些大型厂 商的关键应用。

(6) 具有庞大且素质较高的用户群,其中不乏优秀的编程人员和发烧级的“hacker”,他们 提供商业支持之外的广泛的技术支持。

正是因为以上这些特点,Linux在个人和商业应用领域中的应用都获得了飞速的发展,据国际数据公司(IDC)的调查显示,Linux操作系统的市场份额在1998年激增了212%,其增长速度 远远超过了Windows NT、NetWare、Unix和其他所有的服务器软件。

2. Linux的主要影响领域

目前,Linux的应用主要包括:

(1) Internet/Intranet:这是目前Linux用得最多的一项,它可提供包括Web服务器、Ftp服务器、Gopher服务器、SMTP/POP3邮件服务器、Proxy/Cache服务器、DNS服务器等全部Inter net服务。Linux内核支持IPalias、PPP和IPtunneling,这些功能可用于建立虚拟主机、虚拟 服务、VPN(虚拟专用网)等。主要运行于Linux之上的Apache Web服务器。

(2) 由于Linux拥有出色的联网能力,因此它可用于大型分布式计算,如动画制作、科学计 算、数据库及文件服务器等。

(3) 作为可在低平台下运行的Unix的完整(且免费)的实现,广泛应用于各级院校的教学和科研工作,如墨西哥政府已经宣布在全国的所有中小学配置Linux并为学生提供Internet服务 。

(4) 桌面和办公应用。目前这方面的应用人数还远不如微软的Windows,其原因不仅在于Lin ux桌面应用软件的数量远不如Windows应用,同时也因为自由软件的特性使得其几乎没有广 告支持。、

如今,通常可以通过两个途径获得Linux的发行版:①直接从Internet下载,例如RedHat站点:;②更为方便的方法是购买Linux发行商推出的CD-ROM,这样不仅可以节省下载的时间和费用,还可以使用CD-ROM直接启动快速安装。

3. Linux操作系统的普及

面对日益增强的来自用户的压力,越来越多的商业公司将其应用移植到Linux平台,1998年 较为重要的事件有:

①Compaq和HP决定对提出要求的用户在其服务器上捆绑Linux,IBM和Dell也允诺为用户提供定制的Linux系统。

②Lotus宣布,Notes的下一版将包括一个专用于Linux的版本。

③Corel公司将其著名的WordPerfect移植到Linux之上,并免费发行。Corel还计划将其它的图形图像处理产品完整地移到Linux平台上。

 ④主要的数据库厂家:Sybase、Informix、Oracle、CA、IBM都已经将自己的数据库产品移植到Linux上,或完成了Beta版本,其中Oracle和Informix还对他们的产品提供技术支持。 

⑤Intel和网景决定向主要的Linux发布者(RedHat)注入股金。

面对自由软件的强大压力,微软也在研究对策。已经公布的一个“万圣节文件”中有如下文字反映了微软的工程师对Linux的评价:

①Linux及其它OSS(开放源代码软件)的支持者正使其累进更多的可信证明。

②Linux被越来越广泛地应用于商业环境下的重要任务上,且拥有极佳的大众口碑。 然而,Linux目前的装机量还低于10%,相距主流操作系统还差得很远。要想打破微软在操作 系统领域的垄断地位,它必须满足以下条件:

高度的稳定性和可靠性,多样的功能和丰富的应用软件支持,易用性,良好的技术支持,硬件厂商的支持,性能与价格。

当然也要看到,商业集团加盟Linux的动机仍然是商业,在免费操作系统上运行的 商业软件 也引起了自由软件组织内部的分歧;而且市场的运作有它自己的规律,微软的统治地位也不 是一朝一夕就可以完全改变的。但是,反映了网络时代集体智慧和信息高速公路上的协作精 神的Linux,其前途一定是光明的。虽然它未必能够短期内在桌面操作系统领域获得决定性的突破,但起码在服务器市场有望与Windows NT一争高下。

4. Linux对中国软件业的启示

尽管Linux在业界已经炒得沸沸扬扬,但它在国内的应用及自由软件服务还几乎为零。根据中国互联网信息中心发布的一个统计报告指出:在国内3700多个Web站点中,使用Linux的站 点仅30个,占0.8%,使用Windows NT的站点达91.4%。而在美国的130万个Web站点中,Linux 站点占到60%以上,Windows NT站点占26.7%,不到Linux的一半。 可喜的是,已经有一些有远见的国内公司开始力图改变这种现状。不久前四通公司宣布将投入巨资,以Linux为平台开发一套Internet/Intranet解决方案,并以此为核心开展四通系统 集成业务,同时计划建立全国性的Linux技术支持组织,带头推动自由软件在中国的应

用和 发展。此外,华胜等国内计算机公司也在致力于Linux相关软、硬件系统的应用推广。相信 随着国内各企业对Linux认识的加深,必将有越来越多的企业加入Linux应用的行列,更多的 软件会植根于Linux平台。

同时,国内的高校应该以Linux为蓝本更新原有的Unix教学内容,从分析源代码和修改内核 入手培养大量的高级Linux人才,完善我国自己的操作系统。只有真正掌握了操作系统,我 国软件业才能摆脱目前亦步亦趋,被别人牵着鼻子走的被动状况,从根本上为振兴我国的软 件业创造条件。

④主要的数据库厂家:Sybase、Informix、Oracle、CA、IBM都已经将自己的数据库产品移植到Linux上,或完成了Beta版本,其中Oracle和Informix还对他们的产品提供技术支持。 

⑤Intel和网景决定向主要的Linux发布者(RedHat)注入股金。

面对自由软件的强大压力,微软也在研究对策。已经公布的一个“万圣节文件”中有如下文字反映了微软的工程师对Linux的评价:

①Linux及其它OSS(开放源代码软件)的支持者正使其累进更多的可信证明,即OSS至少与商 业替代品一样的强健——如果没有超过的话。而网际网路则提供了一个理想、高度可见的展 示台给OSS界。

②Linux被越来越广泛地应用于商业环境下的重要任务上,且拥有极佳的大众口碑。Linux性能表现远远超过其它Unix,Linux正在逐步地接管x86 Unix市场?

然而,Linux目前的装机量还低于10%,相距主流操作系统还差得很远。要想打破微软在操作系统领域的垄断地位,它必须满足以下条件:

①高度的稳定性和可靠性。这是服务于企业级关键应用的操作系统的首要条件。以稳定性著 称Linux在这方面远远超过Windows 95/98甚至Windows NT。

②多样的功能和丰富的应用软件支持。Windows的功能和应用软件可谓花样繁多,在这方面L inux尚无法与之相比,但随着越来越多的软硬件厂商正在加入Linux阵营,今后Linux平台上 的应用软件一定会越来越多。

③易用性。在这方面Linux具有双重性:一方面对专业级的用户,Linux的灵活和高效已为大众所公认,例如你可修改系统的任何配置而很少需要停止服务或重新开机;另一方面,对大 多数普通用户而言,则更喜欢Windows的“即插即用”及其统一的图形界面。尽管Linux上有 一个类似Windows 95的图形用户界面——X-Windows系统,但仍然离不开像Unix那样的命令 行结构。需要注意的是,KDE和GNOME项目都正在致力于窗口(桌面)管理器的开发,预计不久 Linux用户就可以用上真正完善的图形界面。

④良好的技术支持。作为自由软件,Linux的技术支持来源于分布于全球的编程者、爱好者及他们所组成的各个新闻组、Mailing List、Web和ftp站点等。近几年,许多商业公司也加 入了这个行列,它们提供收费的技术支持。需要注意的是,我国在这方面的市场还基本上是空白。

⑤硬件厂商的支持。在这点上Linux也稍逊于Windows,主动提供Linux驱动程序的 硬件厂商很少,但在各种Linux发布中,都带有大量的硬件驱动程序,Internet上的许多站点都提供 最新的驱动程序可下载,使得市面上所流行的大部分硬件都可得到支持。除此之外,为Linu x编写驱动程序要比为Windows NT编写驱动程序容易得多。

⑥性能与价格。与其它操作系统不同,Linux是完全免费的操作系统,虽然发布商可收取合理的制作利润,但往往只有几十美元,远远低于普通的操作系统的售价,这当然是很有吸引 力的。

当然也要看到,商业集团加盟Linux的动机仍然是商业,在免费操作系统上运行的 商业软件 也引起了自由软件组织内部的分歧;而且市场的运作有它自己的规律,微软的统治

地位也不 是一朝一夕就可以完全改变的。但是,反映了网络时代集体智慧和信息高速公路上的协作精 神的Linux,其前途一定是光明的。虽然它未必能够短期内在桌面操作系统领域获得决定性 的突破,但起码在服务器市场有望与Windows NT一争高下。

4. Linux对中国软件业的启示

尽管Linux在业界已经炒得沸沸扬扬,但它在国内的应用及自由软件服务还几乎为零。根据中国互联网信息中心发布的一个统计报告指出:在国内3700多个Web站点中,使用Linux的站 点仅30个,占0.8%,使用Windows NT的站点达91.4%。而在美国的130万个Web站点中,Linux 站点占到60%以上,Windows NT站点占26.7%,不到Linux的一半。 可喜的是,已经有一些有远见的国内公司开始力图改变这种现状。不久前四通公司宣布将投入巨资,以Linux为平台开发一套Internet/Intranet解决方案,并以此为核心开展四通系统 集成业务,同时计划建立全国性的Linux技术支持组织,带头推动自由软件在中国的应用和 发展。此外,华胜等国内计算机公司也在致力于Linux相关软、硬件系统的应用推广。相信 随着国内各企业对Linux认识的加深,必将有越来越多的企业加入Linux应用的行列,更多的 软件会植根于Linux平台。

同时,国内的高校应该以Linux为蓝本更新原有的Unix教学内容,从分析源代码和修改内核入手培养大量的高级Linux人才,完善我国自己的操作系统。只有真正掌握了操作系统,我国软件业才能摆脱目前亦步亦趋,被别人牵着鼻子走的被动状况,从根本上解决我国的操作系统人才问题。我们今天学习的linux,在不久后,必会成为一门重要的大学课程,所以,让我们趁早领先别人,认真掌握linux吧。

篇二:linux论文

摘要:主要分析嵌入式Linux系统应用开发的特点;概述其开发过程和所面临的挑战;阐述

嵌入式Linux的发展和应用前景。

关键词:嵌入式Linux 操作系统应用前景

引 言

近年来,随着计算技术、通信技术的飞速发展,特别是互联网的迅速普及和3C(计算机、通信、消费电子)合一的加速,微型化和专业化成为发展的新趋势,嵌入式产品成为信息产业的主流。Linux从1991年问世到现在,短短的十几年时间已经发展成为功能强大、设计完善的操作系统之一;可运行在X86、Alpha、Sparc、MIPS、PPC、Motorola、NEC、ARM等多种硬件平台,而且开放源代码,可以定制;可与各种传统的商业操作系统分庭抗争。越来越多的企业和研发机构都转向嵌入式Linux的开发和研究上,在新兴的嵌入式操作系统领域内也获得了飞速发展。

1 嵌入式Linux的特点嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统,系统结构见图1。实时性是嵌入式系统的基本要求,其次,还要求代码小,速度快,可靠性高。嵌入式Linux(Embedded Linux)是指对Linux经过裁剪小型化后,可固化在存储器或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究已经成为目前操作系统领域的一个热点。 一、Linux系统是层次结构且内核完全开放

Linux是由很多体积小且性能高的微内核系统组成。在内核代码完全开放的前提下,不同领域和不同层次的用户可以根据自己的应用需要方便地对内核进行改造,低成本地设计和开发出满足自己需要的嵌入式系统。

二、Linux系统强大的网络支持功能

Linux诞生于因特网时代并具有Unix的特性,保证了它支持所有标准因特网协议,并且可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。 此外,Linux还支持ext2、fat16、fat32、romfs等文件系统,为开发嵌入式系统应用打下了很好的基础。 三,Linux具备一整套工具链

容易自行建立嵌入式系统的开发环境和交叉运行环境,可以跨越嵌入式系统开发中仿真工具的障碍。Linux也符合IEEE POSIX.1标准,使应用程序具有较好的可移植性。 传统的嵌入式开发的程序调试和调试工具是用在线仿真器(ICE)实现的。它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,完成监视和调试程序;但一般价格比较昂贵,只适合做非常底层的调试。使用嵌入式Linux,一旦软硬件能够支持正常的串口功能,即使不用仿真器,也可以很好地进行开发和调试工作,从而节省一笔不小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链(tool chain)。它利用GNU的gcc做

编译器,用gdb、kgdb、xgdb做调试工具,能够很方便地实现从操作系统到应用软件各个级别的调试。

第四,Linux具有广泛的硬件支持特性

无论是RISC还是CISC、32位还是64位等各种处理器,Linux都能运行。Linux通常使用的微处理器是Intel X86芯片家族,但它同样能运行于Motorola公司的68K系列CPU和IBM、Apple、Motorola公司的PowerPC CPU以及Intel公司的StrongARM CPU等处理器。Linux支持各种主流硬件设备和最新硬件技术,甚至可以在没有存储管理单元(MMU)的处理器上运行。这意味着嵌入式Linux将具有更广泛的应用前景。

2 Linux嵌入式系统开发平台

2.1 系统软件操作平台

操作系统是一种在计算机上运行的软件。它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口。它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合适的操作环境。嵌入式系统由于硬件的限制,通常只具有极稀少的硬件资源,如主频较低的CPU、较小的内存、小容量的固态电子盘芯片DoC(Disk on Chip)或DoM(Disk on Module)替代磁盘等。在使用电池的系统中,它还要实现低功耗,延长电池使用时间的功能。

Linux作为嵌入式操作系统是完全可行的。因为Linux提供了完成嵌入功能的基本内核和所需要的所有用户界面,能处理嵌入式任务和用户界面。将Linux看作是连续的统一体,从一个具有内存管理、任务切换和时间服务及其它分拆的微内核到完整的服务器,支持所有的文件系统和网络服务。Linux作为嵌入式系统,是一个带有很多优势的新成员。它对许多CPU和硬件平台都是易移植、稳定、功能强大、易于开发的。

嵌入式Linux系统需要下面三个基本元素:系统引导工具(用于机器加电后的系统定位引导)、Linux微内核(内存管理、 程序管理)、初始化进程。但如果要它成为完整的操作系统并且继续保持小型化,还必须加上硬件驱动程序、硬件接口程序和应用程序组。 Linux是基于GNU的C编译器,作为GNU工具链的一部分,与gdb源调试器一起工作的。它提供了开发嵌入式Linux系统的所有软件工具。

2.2 系统硬件平台

在选择硬件时,常由于缺乏完整或精确的信息而使硬件选择成为复杂且困难的工作。硬件开发成本常是我们很关心的。当考虑硬件成本时,须要考虑产品的整个成本而不仅是CPU的成本。因为合适的CPU,一旦加上总线逻辑和延时电路使之与外设一起工作,硬件系统就可能变得非常昂贵。如果要寻找嵌入式软件系统,那么,应首先确定硬件平台,即确定微处理器CPU的型号。

现在比较流行的硬件平台有Intel公司的StrongARM 系列,Motorola公司的DragonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。选定硬件平台前,首先要确定系统的应用功能和所需要的速度,并制定好外接设备和接口标准。这样才能准确地定位所需要的硬件方案,得到性价比最高的系统。

2.3 嵌入式Linux系统开发模式

嵌入式系统通常为一个资源受限的系统。直接在嵌入式系统的硬件平台上编写软件比较困难,有时甚至是不可能的。一般流程见图2。目前,一般采用的办法是,先在通用计算机上编写程序,然后,通过交叉编译,生成目标平台上可运行的二进制代码格式,最后下载

到目标平台上的特定位置上运行。 具体步骤如下:

第一步,建立嵌入式Linux交叉开发环境。目前,常用的交叉开发环境主要有开放和商业两种类型。开放的交叉开发环境的典型代表是GNU工具链,目前已经能够支持x86、ARM、MIPS、PowerPC等多种处理器。商业的交叉开发环境主要有Metrowerks CodeWarrior、ARM Software Development Toolkit、SDS Cross compiler、WindRiver Tornado、Microsoft Embedded Visual C 等。交叉开发环境是指编译、链接和调试嵌入式应用软件的环境。它与运行嵌入式应用软件的环境有所不同,通常采用宿主机/目标机模式。

第二步,交叉编译和链接。在完成嵌入式软件的编码之后,就是进行编译和链接,以生成可执行代码。由于开发过程大多是在Intel公司x86系列CPU的通用计算机上进行的,而目标环境的处理器芯片却大多为ARM、MIPS、PowerPC、DragonBall等系列的微处理器,这就要求在建立好的交叉开发环境中进行交叉编译和链接。

例如,在基于ARM体系结构的gcc交叉开发环境中,arm-linux-gcc是交叉编译器,arm-linux-ld是交叉链接器。通常情况下,并不是每一种体系结构的嵌入式微处理器都只对应于一种交叉编译器和交叉链接器。如对于M68K体系结构的gcc交叉开发环境而言,就对应于多种不同的编译器和链接器。如果使用的是COFF格式的可执行文件,那么在编译Linux内核时,需要使用m68k-coff-gcc和m68k-coff-ld,而在编译应用程序时则需要使用m68k-coff-pic-gcc和m68k-coff-pic-ld。编写好的嵌入式软件经过交叉编译和交叉链接后,通常会生成两种类型的可执行文件:用于调试的可执行文件和用于固化的可执行文件。第三步,交叉调试。

① 硬件调试。如果不采用在线仿真器,可以让CPU直接在其内部实现调试功能,并通过在开发板上引出的调试端口,发送调试命令和接收调试信息,完成调试过程。目前,Motorola公司提供的开发板上使用的是DBM调试端口,而ARM公司提供的开发板上使用的则是JTAG调试端口。使用合适的软件工具与这些调试端口进行连接,可以获得与ICE类似的调试效果。

② 软件调试。在嵌入式Linux系统中,Linux系统内核调试,可以先在Linux内核中设置一个调试桩(debug stub),用作调试过程中和宿主机之间的通信服务器。然后,可以在宿主机中通过调试器的串口与调试桩进行通信,并通过调试器控制目标机上Linux内核的运行。

嵌入式上层应用软件的调试可以使用本地调试和远程调试两种方法。如果采用的是本地调试,首先要将所需的调试器移植到目标系统中,然后就可以直接在目标机上运行调试器来调试应用程序了;如果采用的是远程调试,则需要移植一个调试服务器到目标系统中,并通过它与宿主机上的调试器共同完成应用程序的调试。在嵌入式Linux系统的开发中,远程调试时目标机上使用的调试服务器通常是gdbserver,而宿主机上使用的调试器则是gdb。两者相互配合共同完成调试过程。

第四步,系统测试。整个软件系统编译过程,嵌入式系统的硬件一般采用专门的测试仪器进行测试,而软件则需要有相关的测试技术和测试工具的支持,并要采用特定的测试策略。测试技术指的是软件测试的专门途径,以及能够更加有效地运用这些途径的特定方法。在嵌入式软件测试中,常常要在基于目标机的测试和基于宿主机的测试之间做出折衷。基于目标机的测试需要消耗较多的时间和经费,而基于宿主机的测试虽然代价较小,但毕竟是在仿真环境中进行的,因此难以完全反映软件运行时的实际情况。这两种环境下的测试可以发现不同的软件缺陷,关键是要对目标机环境和宿主机环境下的测试内容进行合理取舍。嵌入式软件测试中经常用到的测试工具主要有:内存分析工具、性能分析工具、覆盖分析工具、缺陷跟踪工具等,在这里不加详述。

以下即为一个典型开发工具的使用流程:

① 写入或植入引导码;

② 向串口打印字符串的编码;

③ 将gdb目标码移植工作串口,可与另一台运行gdb程序的Linux主机系统对话; ④ 利用gdb让硬件和软件初始化码在Linux内核启动时工作;

⑤ Linux内核启动,串口成为Linux控制口并可用于后续开发;

⑥ 如果在目标硬件上已运行了完整的Linux内核,即可调试用户的应用进程。

2.4 嵌入式Linux面临的挑战

目前,对嵌入式Linux系统的开发正在蓬勃兴起,并已形成了很大的市场。除了一些传统的Linux公司,像RedHat、VA Linux等,正在从事嵌入式Linux的研究之外,一批新公司(如Lineo、TimeSys等)和一些传统的大公司(如IBM、SGI、Motorola、Intel等)以及一些开发专用嵌入式操作系统的公司(如Lynx)也都在进行嵌入式Linux的研究和开发。但就目前的技术而言,嵌入式Linux的研究成果与市场的真正需求还有一些距离,因此,嵌入式Linux走向成熟还需要在以下几个方面有所发展。

(1)Linux的实时性扩充

实时性是嵌入式操作系统的基本要求。由于Linux还不是一个真正的实时操作系统,内核不支持事件优先级和抢占实时特性,所以在开发嵌入式Linux的过程中,首要问题是扩展Linux的实时性能。对Linux实时性的扩展可以从两方面进行:向外扩展和向上扩展。向外扩展即从范围上扩展,让实时系统支持的范围更广,支持的设备更多。目前的开发所面向的设备仅限于较简单的有实时要求的串/并口数据采集、浮点数据计算等,而像实时网络这样实时系统的高级应用还需进一步发展。向上扩展是扩充Linux内核,从功能上扩充Linux的实时处理和控制系统。如嵌入式系统RT-Linux,它的基本原理是将Linux本身的任务以及Linux内核本身作为一个优先级最低的任务,而实时任务作为优先级最高的任务,即在实时任务存在的情况下运行实时任务,否则就运行Linux本身的任务。实时任务不同于Linux普通进程。它是以Linux的可装载的内核模块(Loadable Kernel Module,LKM)的形式存在的,需要运行实时任务的时候,将这个实时任务的内核模块插入到内核中去,实时任务和Linux一般进程之间的通信通过共享内存或者FIFO通道来实现。

(2)改变Linux内核的体系结构

Linux的内核体系采用的是Monolithic。在这种体系结构中,内核的所有部分都集中在一起,而且所有的部件在一起编译连接。这样虽然能使系统的各部分直接沟通,有效地缩短任务之间的切换时间,提高系统的响应速度和CPU的利用率,且实时性好;但在系统比较大时体积也比较大,与嵌入式系统容量小、资源有限的特点不符。而另外一种内核体系结构MicroKernel, 在内核中只包括了一些基本的内核功能,如创建和删除任务、任务调度、内存管理和中断处理等部分,而文件系统、网络协议栈等部分都是在用户内存空间运行。这种结构虽然执行效率不如Monolithic内核,但大大减小了内核的体积,同时也方便了整个系统的升级、维护和移植,更能满足嵌入式系统的特点需要。为此,要使嵌入式Linux的应用更加广泛,若将Linux目前的Monolithic内核结构中的部分结构改造成MicroKernel体系结构,可使得到的Linux既具有很好的实时性,又能满足嵌入式系统体积小的要求。

另外,Linux是一个需要占用存储器的操作系统。虽然这可以通过减少一些不必要的功能来弥补,但可能会浪费很多时间,而且容易带来很大的麻烦。许多Linux的应用程序都要用到虚拟内存,这在许多嵌入式系统中是没有价值的。所以,并不是一个没有磁盘的Linux嵌入式系统就可以运行任何Linux应用程序。

(3)完善Linux的集成开发环境

提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。一个完整的嵌入式系统的集成开发环境一般需要提供的工具是:编译/连接器、内核调试/跟踪器和集成图形界面开发平台。其中的集成图形界面开发平台包括编辑器、调试器、软件仿真器和监视器等。在Linux系统中,具有功能强大的gcc编译器工具链,使用了基于GNU的调试器gdb的远程调试功能,一般由一台客户机运行调试程序调试宿主机运行的操作系统内核; 在使用远程开发时还可以使用交叉平台的方式,如在Windows平台下的调试跟踪器对Linux的宿主系统做调试。但是,Linux在基于图形界面的特定系统定制平台的研究上,与Windows操作系统相比还存在差距。因此,要使嵌入式Linux在嵌入式操作系统领域中的优势更加明显,整体集成开发环境还有待提高和完善。

(4) 嵌入式Linux的发展及应用前景

综上,由于Linux具有对各种设备的广泛支持性,因此,能方便地应用于机顶盒、IA设备、PDA、掌上电脑、WAP手机、寻呼机、车载盒以及工业控制等智能信息产品中。与PC相比,手持设备、IA设备以及信息家电的市场容量要高得多,而Linux嵌入式系统的强大的生命力和利用价值,使越来越多的企业和高校表现出对它极大的研发热情。蓝点软件公司、博利思公司、共创软件联盟、中科红旗等公司都已将嵌入式系统的开发作为自己的主要发展方向之一。

在嵌入式系统的应用中,Linux嵌入式操作系统所具有的技术优势和独特的开发模式给业界以新异。有理由相信,它能成为Internet时代嵌入式操作系统中的最强音。

篇三:linux论文

Linux系统与不同操作系统关系

摘要:操作系统是一种特殊的用于控制计算机硬件的程序,它是计算机底层的系统软件,负责管理、调度、指挥计算机的软硬件协调的工作,没有它,任何计算机都无法正常运行。在计算机的发展过程中,出现过很多不同的操作系统,有Linux操作系统、Windows操作系统、Unix操作系统、嵌入式操作系统、Dos操作系统等等。操作系统的应用之处不尽相同,但彼此之间又相互联系,甚至密不可分,这篇文章将分析Linux操作系统与其他操作系统的相同以及不同之处。

这篇文章首先将写出Linux操作系统的概念以及特点,Linux系统目前发展劣势,在此基础上介绍本课题的研究背景以及必要性,接下来将分别介绍Linux操作系统与不同系统的关系与差别。

关键字:Linux; Unix;Windows;嵌入式;Dos

一、 Linux操作系统

1、 Linux操作系统概念

操作系统是管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。Linux操作系统是一个软件程序,这个软件程序的目的就是为了让用户更加方便的使用计算机,用大家容易理解的手段或者方式给我们提供服务,让我们的计算机用起来更加方便、更容易。

[1]操作系统的一切服务都以计算机的硬件配置相关。

2、 Linux操作系统特点

(1) Linux是自由软件

Linux是作为开放源代码的自由软件的代表,它开放源代码并对外免费提供,使用者可以按照自己的需求自由修改、复制和发布程序的源码,并公布在Internet上,因此Linux操作系统可以从互联网上很方便的免费下载。

(2) 极强的平台和可伸缩性

Linux能运行在笔记本电脑、PC、工作站,甚至巨型机上,而且几乎能在所有主要CPU芯片搭建的体系结构上运行,其伸缩性远远超过了Windows NT操作系统目前所能打到的水平。

(3) 是Unix的完整实现

可以认为Linux是Unix系统的一个变种,而Unix的优良特点如可靠性、稳定性以及强大的网络功能,强大的数据库支持能力以及良好的开放性等都在Linux上一一体现出来。且在Linux的发展过程中,Linux的用户能大大地从Unix团体贡献中获利,它能直接获得Unix相关的相应支持和帮助。

(4) 真正的多用户多任务

只有很少的操作系统能提供真正的多任务能力,尽管许多操作系统声明支持多任务,但并不前完全准确,如Windows。而Linux则充分体现了x86CPU的任务切换机制,实现了真正多任务、多用户环境,允许多个用户同时执行不同的程序,并且可以给紧急任务以较高的优先级。

(5) 完全符合POSIX标准

POSIX是基于Unix的额操作系统国际标准,Linux遵循这一标准使Unix下许多应用程序可以更容易地移植到Linux下,相反也是这样。

(6) 具有丰富的图形用户界面

Linux的图形用户界面是Xwindow系统。Xwindow可以做MS Windows下的所有事情,而且更有趣更丰富,用户甚至可以在几种不同风格的窗口之间来回切换。

(7) 具有极强的网络功能

Linux继承了Unix作为网络操作系统的优点,使用TCP/IP作为默认的网络通信协议,它可以轻松地与TCP/IP,LANManager、Windows for Workgroup、Novell、Netware或Windows NT网络集成在一起,还可以通过以太网或调制解调器连接到Internet上。

Linux内置了许多服务器软件,例如Apache、Sendmail、VSFTPD等,可以直接利用Linux

[1]来搭建全方位的网络服务器。

3、 Linux目前发展劣势

(1)Linux企业众多但未形成规模

Linux是一个公开源程序代码发展而来的操作系统,因此奠定了Linux操作系统比较其他操作系统的先天优势,由于全世界无数的技术人员都可以帮助Linux修改错误、提升性能,因此到目前Linux操作系统已经迅速成为一个相对健壮的操作系统,并且也越来越跻身各种企业的关键业务之一。

(2)安全问题

Linux操作系统的最大优

lunix基础知识论文

势在于它是对外界开放源程序代码的,但出于各自的商业利益,各企业分别在其发行的版本上加载各种不同的功能,彼此之间互不相容。这些不同的版本意味着厂商和用户测试的工作量增加,意味着硬件厂商需要为每一个版本的Linux提供驱动程序……这种情形将会削弱Linux的市场竞争力。

(3)人才的隐患

安全方面来说,随着Linux的越来越受欢迎,针对Linux的蠕虫、病毒和恶意软件将会不断出现。虽然开放源代码会及时响应并且修补Linux上存在的漏洞,但是Linux的非集中式管理是Linux操作系统升级的发布和审查变得非常复杂。一旦Linux由于安全问题给用户特别是企业用户造成损失,其不良影响以及对用户信心的打击是巨大的。

相比之前Linux的技术人员已经很多很多。但是如果作为一个快速发展的产业,人才的深度和广度是远远不够的,能够对内核有所研究的人员很少,或者说很大一部分专业人员,并不是真正的理解甚至动Linux操作系统,有限的人才集中在Linux厂商内,系统集成商、代理商、应用软件开发商等等。因此人才的缺乏,也在也在一定程度上制约着完整的Linux产业链的形成。

二、 不同系统关系

1、 Linux与Unix

某些PC机的Unix和Linux在实现方面非常相似,几乎所有的商业Unix版本都支持同样的软件、程序设计环境和网络特性。然而,Linux和Unix的商业版本仍然存在很多差别。

Linux支持的硬件范围和商业Unix不一样。一般说来,商业Unix支持的硬件更多,但是现在Linux支持硬件范围在不断扩大。Linux和Unix一样稳定。对于很多用户来讲,Linux是免费软件,用户可以直接从Internet上下载或者可以很便宜的买到Linux的磁盘。商业Unix除了软件本身价格以外,用户需支付文档、售后支持等。可能较大的机构更加注重这些,但是PC机用户并不强调。在学习中可能发现,在实验室用廉价的PC机运行Linux比用工作站运行商业Unix好。Linux可以在PC机上提供工作站的功能,而PC机的价格是工作站的几分之一。也有一些针对PC机的便宜的Unix,其中最有名的是386BSD。在许多方面,386BSD软件包和Linux兼容,但Linux更适合用户的需求。显著的是,Linux的开发是开放的,任何人都可以对开发过程做出贡献。相比之下,386BSD是由封闭的团队开发的。正是这样,这两种产品存在着严重的概念上和设计上的差别:Linux的目标是从头开始开发一个完整的Unix系统;386BSD的目标则是对现有的BSD做些修改,以适合80386系统。

2、 Linux与Windows

(1)免费与收费

在中国,Windows和Linux都是免费的,至少对个人用户是如此。

(2)软件与支持

Windows下可以运行绝大部分软件、玩99.999%的游戏、硬件厂商近乎100%的支持。Linux下可直接运行的软件数量和Windows相比较非常少,目前选择Linux的人基本不会考虑玩游戏,同时Linux缺少更多硬件厂商的支持。

(3)安全性

Linux安全性高,但我认为原因是Linux的应用很少,当Linux普及程度达到Windows的程度,那么Linux的漏洞、病毒、木马将会出现,也许不会比Windows少,现在Linux的用户量太少,受关注也太少,而作为病毒者希望自己的作品流传越广越好所以,病毒者将很少考虑Linux用户。如果对windows下的病毒、木马、垃圾感到极度厌恶,那的确可以尝试一下Linux。

(4)对外部开放软件源代码。

是否对外开放源代码,软件厂商有选择的权力,但是是否购买使用这个产品,是用户的权利。如果Linux不对外开放自己开源,很有可能失去很大一部分用户,因为很多人就是因为Linux开放源代码才会使用Linux操作系统。 而Windows系统不对外开访源代码,但因为简单的用户界面,收获到了大批的使用者。

(5)使用习惯

Linux操作系统和Windows操作系统的桌面、图标、鼠标点击都相同,但是,Windows放弃了Dos的字符模式,主攻图形界面,让桌面系统更易用。Linux字符模式运行的更好,图形界面还只是附带品,可有可无。根据Linux以及Windows的上市时间来看,可以猜测Linux把Windows扔掉的字符模式捡回来并且发扬光大。

(6)技术支持

如果你不熟悉或从来没接触过电脑,学习Windows将会感觉非常简单。但是如果学习Linux必须在书以及网络视频的支持下,但是上网大家通常的选择就是Windows如果熟悉电脑和上网,可能Windows和Linux没有太多区别,网上都有海量的资料给查。但是找修

[4]Windows电脑的人远比找一个修Linux电脑的人容易得多。

3、 Linux与嵌入式

嵌入式系统整合了硬件和软件,要求对硬件和软件系统都有一定的了解,Linux操作系统是一种开放源程序代码的操作系统,可以通过定制服务于嵌入式系统,但是有很多更广泛的应用,例如网络应用、服务器应用等等。Linux和嵌入式系统属于相互交叉,嵌入式系统的发展让Linux的应用更加广泛,同样Linux的开放源程序代码,可以定制、灵活性强适合

[2]~[3]嵌入式系统。嵌入式系统软件并不是仅仅限制于Linux,还有其他。

4、 Linux与Dos

Dos操作系统是单用户单任务,编译过的操作系统,而Linux是多用户多任务的操作系统,开放源代码,因为可以自行修改,Linux分支很多有图形工作环境。从直观打开界面观测到Dos是黑白界面,输入命令,需要对电脑硬件较为了解的相关专业人员。Linux是有图形化界面,属于系统的一类,类别较多。

参考文献:

[1]邱建新.Linux操作系统实用教程.北京:清华大学出版社,2012.

[2]郑灵翔.嵌入式系统设计与应用开发[M].北京:航空航天大学出版社,2006.

[3]俞建新.嵌入式系统基础教程[M].北京:机械工业出版社,2008.

[4]郭卫斌.计算机导论.上海:华东理工大学出版社,2012.

本文已影响