收藏 分销(赏)

Linux 操作系统基础.pdf

上传人:曲**** 文档编号:545747 上传时间:2023-11-27 格式:PDF 页数:94 大小:8.42MB 下载积分:12 金币
下载 相关 举报
Linux 操作系统基础.pdf_第1页
第1页 / 共94页
Linux 操作系统基础.pdf_第2页
第2页 / 共94页


点击查看更多>>
资源描述
第1章Linux基础Linu x是一种能运行于多种平台、源代码公开、免费、功能强大、遵循POSIX标准、与 UNIX兼容的操作系统。Linu x自20世纪中期以来一直在突飞猛进地发展,人们在计算机软 件开发和应用中越来越离不开它。Linu x的诞生和发展给全球的软件业带来了新的机遇,也 使微软的Wind ows操作系统面临有史以来最大的挑战。由于Linu x属于自由软件,它的源代 码是公开的,并遵循通用公共许可证(General Pu b l ic Licence,GPL),所以用户可以免费使用,从而使Linu x在极短的时间内就成了一套成熟而稳定的操作系统。全世界成千上万的程序专 家和Linu x爱好者正在通过Internet不断地对Linu x进行开发、完善和维护。Linu x操作系统核心最早是1991年由芬兰的Linu s Torval d s在芬兰赫尔辛基大学上学时 发布的(那年Torval d s年仅25岁),后来经过众多世界顶尖的软件工程师的不断修改和完善,Linu x得以在全球普及开来,在服务器领域及个人桌面得到越来越多的应用,在嵌入式开发 方面更是具有其他操作系统无可比拟的优势,并以每年100%的用户数递增,显示了 Linu x 强大的实力。1.1 系统概要Linu x是类UNIX计算机操作系统的统称。Linu x操作系统内核的名称也是“Linu x”。Linu x操作系统是自由软件和开放源代码发展中最著名的例子。严格来讲,Linu x这个词本身 只表示Linu x内核,但实际上,人们已经习惯了用Linu x来形容整个基于Linu x内核并且使 用GNU工程各种工具和数据库的操作系统。基于这些组件的Linu x软件被称为Linu x发行版。一般来讲,一个Linu x发行包包含大 量的软件,比如软件开发工具、数据库(如PostgreSQL、MySQL)、网络服务器(如Apach e)、X Wind ow、桌面环境(例如GNOME和KDE)、办公包(例如OpenOffice.org)、脚本语言(如Perk PHP 和 Pyth on),等等。Linu x现在是个人计算机和工作站上的UNIX类操作系统。它不仅继承了 UNIX的特征,而且在许多方面超过了 UNIX。作为UNIX类操作系统,它具有下列基本特征:(a)是真正的多用户、多任务操作系统;(b)是符合POSIX标准的系统;(c)提供具有内置安全措施的分层的文件系统;2 软件综合开发案例教程Linu x、GCC、MySQL、Socket.Gtk+与开源案例(d)提供sh el l命令解释程序和编程语言;(e)提供强大的管理功能,包括远程管理功能;(f)具有内核的编程接口;(g)具有图形用户界面;(h)具有大量的实用程序和通信、联网工具;(i)具有良好界面编缉软件。大量的高级程序设计语言已移植到Linu x系统上,因而使它成为理想的应用软件开发平 台,而且,在Linu x系统下开发的应用程序具有良好的可移植性。同时,Linu x还有许多独 到之处,例如:它的源代码几乎全部都是开放的;它可以运行在许多硬件平台上;它不仅可 以运行许多自由发布的应用软件,还可以运行许多商用化的应用软件;它具有强大的网络 功能。Linu x系统的另一特征是它能充分发挥硬件的功能,因而它相比其他操作系统来说运行 效率更高。因此,Linu x拥有广泛的应用前景。1.1.1 Linux的起源与发展Linu x的发音为“Lin-noks”,中文发音为“利尼克斯”。它的标志是可爱的企鹅,取自 芬兰的吉祥物。Linu x起源于1991年,Linu s Torval d s为了编写一个比Minix(由谭邦宁教授开发的一个 用于操作系统教学、很小的UNIX操作系统)更好的操作系统,首次在Intemet上发布了基于 Intel 386体系结构、类似于UNIX的Linu x源代码,这就是最早的Linu x版本。由于Linu x 具有结构清晰、功能简捷等特点,许多高等院校的学生和科研机构的研究人员纷纷把它作为 学习和研究的对象。Linu x的历史是和GNU紧密联系在一起的。从1983年开始的GNU计划(该计划致力于 开发一个自由并且完整的类UNIX操作系统,包括软件开发工具和各种应用程序)到1991年 Linu x内核发布,GNU已经几乎完成了除了系统内核之外的各种必备软件的开发。在Linu s Torval d s和其他开发人员的努力下,GNU组件可以运行于Linu x内核之上。整个内核是基于 GNU通用公共许可,也就是GPL,但是Linu x内核并不是GNU计划的一部分。1994年3 月,Linu x 1.0版正式发布,Marc Ewing成立了 Red Hat软件公司,成为最著名的Linu x分销 商之一。现在,Linu x的用户群一般都是专业人士。他们愿意安装并设置自己的操作系统,因而 往往比其他操作系统的用户要花更多的时间。这些用户有时被称作“黑客”或“极客”(geek)。使用Linu x的主要成本为移植、培训和学习的费用,早期由于会使用Linu x的人较少,并且在软件设计时并未考虑非专业者的使用,导致这方面费用极高。这方面的费用已经随着 Linu x的日益普及和Linu x上的软件越来越多、越来越方便而降低,但这仍是使用Linu x的主 要成本。然而随着Linu x慢慢开始流行,有些原始设备制造商(OEM)开始在其销售的电脑上预装第1章Linu x基础3 Linu x,Linu x的用户中也有了普通电脑用户,Linu x系统也开始慢慢出现在个人电脑操作 系统市场。Linu x在欧洲、美国和日本的流行程度较高,欧美地区还发行Linu x平台的游戏 和其他家用软件。Linu x开源社区也是以欧洲、美国、日本等发达国家及地区的人士居多。每个孩子拥有一台笔记本电脑这一项目正在催生新的、更为庞大的Linu x用户群,计 划将包括发展中国家的几亿学童、他们的家庭和社区。在2007年,已经有6个国家分别 订购了至少一百万台的笔记本电脑免费发放给学生。谷歌、Red Hat和eBay是该项目的主 要支持者。下面简单地回顾一下Linu x版本的变化过程:1991年10月,Linu x第一个公开版0.02版发布。1994年3月,Linu x 1.0版发布。1999 年,Linu x 2.2 发布;GNOME 1.0 发布;支持 Linu x 2.2 的 Red Hat 6.0 发布;IBM 推出全面支持Linu x的计划;HP宣布支持Linu x。1999至2003年,各种Linu x版本不断发布,在市场上的影响巨大。Linu x内核最初是为Intel 386微处理器设计的;现在,Linu x内核支持从个人电脑到大型 主机,甚至包括嵌入式系统在内的各种硬件设备。1.1.2 Linux 的特性Linu x是一套类UNIX的免费操作系统,但Linu x系统的稳定性、功能完整性及开放性 是许多商业操作系统无法比拟的。Linu x还有一个最大的特色就在于源代码完全公开,在符 合GNU GPL的原则下,任何人皆可自山获取、复制,甚至修改源代码,然后再发行,以便 将修改的程序代码回馈于社会。与其他操作系统相比,Linu x具有以下特性:(a)自由与开放:Linu x是自由软件,这对科学界来说相当重要。很多工程师由于特殊需 求,常常需要修改系统源码,使该系统可以满足自己的需求。这个开放性的架构可以满足不 同工程师的需求。(b)配置要求低廉:Linu x可以支持个人计算机的x86架构,系统资源不必像早先的UNIX 系统那样,仅适合于公司的单一设备。不过,如果想要在Linu x下执行X-Wind ow系统,硬 件的等级就不能太低。(c)功能强大而稳定:Linu x的功能并不比一些大型的UNIX工作站低,近年来,越来越 多的公司或团体、个人投入到Linu x的开发和整合工作中。(d)独立工作:由于Linu x使用了很多软件套件,这些软件套件都在Linu x操作系统上 进行了开发和测试。因此,Linu x近来已经可以独立地完成几乎所有工作站或服务器的服务,例如 Web、Maik Proxy、FTP 等。1.1.3 主流Linux操作系统发行版简介Linu x本质上就是一个操作系统最底层的核心及其提供的核心工具,负责控制硬件、管 理文件系统、程序进程等。Linu x Kemel(内核)并不负责提供强大的应用程序,没有编译器、系统管理工具、网络工具、Office套件、多媒体、绘图软件等,这样的系统也就无法发挥其 4软件综合开发案例教程Linu x、GCC、MySQL、Socket.Gtk+与开源案例强大功能,用户也无法利用这个系统工作。因此有人便提出,以Linu x Kernel为核心、再集 成搭配各式各样的系统程序或应用工具程序,组成一套可完整安装的操作系统。经过如此组 合的Linu x套件,即为Linu x发行版。国外封装的 Linu x 以 Red Hat(又称红帽 Linu x)、OpenLinu x Su SE、Tu rb oLinu x 等最 为成功:Red Hat Linu x:h ttp:/www.red h Red Hat是个商业气息颇为浓厚的公司,该公司于1999年在美国以科技股为主的纳斯达 克证券交易所成功上市,并逐渐成为Linu x商业界龙头。Red Hat是目前销售量最高、安装最简便、最适合初学者的Linu x发行版,也是目前世 界上最流行的Linu x发行套件,它的市场营销、包装及服务做得相当不错,自行开发了 RPM 套件管理程序及X桌面环境GNOME的众多软件,并将其源代码回馈给Open Sou rce Commu nity o也正是因为Red Hat的方便性,安装程序将系统的构架或软件安装方式全部做了包装,用户学到的都是在GUI(图形用户界面)上输入一些设置值这样的粗浅知识,至于软件安装了 哪些文件、安装到哪个文件目录、系统做了哪些设置,使用者则一无所知。一旦真正遇到系 统程序发生问题,要解决问题也就比较困难。Cal d era OpenLinu x:h ttp:/www.cal d d era将OpenLinu x这套系统定位为容易使用与设置的发行版,以集成使用环境与最 终用户办公环境、容易安装使用与简便管理为系统目标,有望成为最流行的公司团体台式 Linu x操作系统,适合初学者使用,全部安装需要1GB的硬盘空间。Cal d era有自行研发的图形界面的安装程序向导,安装过程可以玩俄罗斯方块,提供完整 的KDE桌面环境,附赠功能强大的商业软件,如StarOffice、图形界面的硬盘分割工具Partition Magic 等。Su SE Linu x:h ttp:/www.Su SE.com/Su SE是欧洲最流行的Linu x发行版,而且Su SE是软件国际化的先驱,让软件能支持各 国语系,贡献颇丰。Su SE也是用RPM作为软件安装管理程序,不过Su SE并不适合新手使 用,它提供了非常多的工具软件,全部安装需4.5GB的硬盘空间,安装过程也较为复杂。Tu rb oLinu x:h ttp:/www.Tu rb oLinu rb oLinu x是日本制作的Linu x发行版,其最大特色是以日文版、中文简/繁体版、英文 版三种形式发行,对于软件国际化的推动起到了积极作用;它安装的简易性及系统设置的难 度与Red Hat差不多,且安装界面是汉化的,系统本身支持中文简体,在中国国内有广大的 用户群。国内Linu x发行版中做得相对比较成功的是红旗和中软两个版本,界面都做得非常美观,安装也比较容易,新版本逐渐屏蔽了一些底层的操作,适合新手使用。两个版本都源于中国 第1章Linu x基础5 科学院软件研究所承担的国家863计划的Linu x项目。但无论稳定性与兼容性,与国外的版 本相比都有一定的差距,操作界面和习惯与Wind ows越来越像,提供一定的技术支持和售 后服务,适用于国内做低价的操作系统解决方案。红旗 Linu x:h ttp:/www.red fl ag-l inu ex.ph p中软 Linu x:h ttp:/虽然开发Linu x发行版的公司很多,但用户并不需要担心每个版本是否都不相同。因为 每个Linu x发行版使用的核心都是在h ttp:/www.kemel.org上发布的,所选择的软件几乎都是 目前很知名的软件,重复性相当高。此外,为了让所有的Linu x版本开发差异不会太大,可 采用Linu x LSB(Linu x Stand ard Base,Linu x标准基础)来规范开发人员,并遵循目录架构的 FHS(Fil e system Hierarch y Stand ard,文件系统层次标准)规范。唯一存在的差别,可能就是开 发人员自己开发出来的管理工具以及套件管理的模式。每个Linu x发行版除了架构的严谨性 与选择的套件内容外,其实差异并不会太大。用户可以选择自己喜好的发行版来安装。1.1.4 Linux 的内核Linu x内核的最初版本是由Linu s Torval d s编写的,为了能够使Linu x更加完善,Torval d s 在网络上公开了 Linu x的源码,邀请全世界的志愿者参与Linu x的开发。由于许多专业用户 自愿地开发它的应用程序,并借助Intemet拿出来让大家一起修改,所以它周边的程序越来 越多,Linu x得到了不断的完善,并在短时期内迅速崛起,如今仍以相当快的速度在不断地 发展着。Linu x是一个很有发展前途的操作系统,也是为数不多可以与Microsoft旗下操作系 统相竞争的操作系统。Linu x内核由5个主要的子系统组成。这5个子系统分别是进程调度(SCHED)、内存管 理(MM)、虚拟文件系统(VFS)、网络接U(NET)和进程间通信(IPC)。各个子系统之间的依赖关系如下:(a)进程调度与内存管理之间的关系:这两个子系统互相依赖。程序要在多道程序环境 下运行,必须为之创建进程,而创建进程的第一件事,就是要将程序和数据装入内存。(b)进程间通信与内存管理之间的关系:进程间通信子系统要依赖内存管理来支持共享内 存通信机制,这种机制允许两个进程除了拥有自己的私有内存外,还可存取共同的内存区域。(c)虚拟文件系统与网络接口之间的关系:虚拟文件系统利用网络接口来支持网络文件 系统(NFS),利用内存管理来支持RAMDISK设备。(d)内存管理与虚拟文件系统之间的关系:内存管理利用虚拟文件系统来支持交换,交 换进程定期地由调度程序调度,这也是内存管理依赖于进程调度的唯一原因。当一个进程存 取的内存映射被换出时,内存管理向文件系统发出请求,同时,挂起当前正在运行的进程。在这些子系统中,进程调度子系统是其他子系统得以顺利工作的关键。无论是文件系统 的系统进程还是网络子系统的服务进程,都需要通过进程调度来获得相应的CPU时间以正常 运行。6 软件综合开发案例教程Linu x、GCC、MySQL、Socket.Gtk+与开源案例1.1.5 Linux 的特点绝大多数基于Linu x内核的操作系统都使用了大量的GNU软件,包括sh el l程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。正因为如此,GNU计划的开创者 理查德马修斯托曼博士提议将Linu x操作系统改名为GNU/Linu xoLinu x的基本思想有两点:第一,一切都是文件;第二,每个文件都有确定的用途。其 中的第一条,详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说 Linu x是基于UNIX的,在很大程度上也是因为这两者的基本思想十分相近。Linu x主要被用作服务器的操作系统,但因它的廉价性、广泛性、灵活性及UNIX背景,使得它能适合更广泛的应用。传统上有以Linu x为基础的“LAMP”(Linu x、Apach e、MySQL、Perl HP/Pyth on的组合)经典技术组合,提供了包括操作系统、数据库、网站服务器、动态网 页的一整套网站架构支持。而在面向更大规模级别的领域中,如数据库中的Oracl e、DB2、PostgreSQL,以及用于Apach e的Tomcat JSP等都已经在Linu x上有了很好的应用实例。LAMP 除中小企业广为应用外,它还是当前网站服务供应商使用较多的平台。1.低廉性基于其低廉成本与高度可设定性,Linu x常常被应用于嵌入式系统,例如机顶盒、移动 电话、行动装置等。在移动电话上,Linu x已经成为与Symb ian Wind ows Mob il e系统并列 的三大智能手机操作系统之一;而在移动装置上,则成为Wind ows CE与Pal m OS之外的另 一个选择。目前流行的TiVo数位摄影机使用了经过定制化后的Linu x。此外,有不少硬件式 的网络防火墙及路由器,例如部分LinkSys的产品,其内部都是使用Linu x来驱动,并采用 了 Linu x操作系统提供的防火墙及路由功能。2.广泛性采用Linu x的超级电脑也越来越多,根据最新的TOP 500超级电脑列表,显示世界上最 快速的3组超级电脑都是使用Linu x作为其操作系统。而在列出的500套系统中,采用Linu x 为操作系统的占了 469组(即93.8%),前10位中有9组是使用Linu x。随着开源软件在世界范围内影响力的日益增强,Linu x在服务器、桌面、行业定制等领 域获得了长足发展,尤其在服务器领域,Linu x已经获得了令人瞩目的成就。目前,除了微 软以外,国际知名的硬、软件厂商都紧密地与之结盟、捆绑,甚至连世界IT业的龙头老大“蓝色巨人”IBM也要“全面拥抱Linu x”o这是因为,开放的Linu x给用户提供了选择 最佳应用、最佳开发环境、最佳网络功能和最佳硬件平台的自由。专家指出,从产品角度来说,计算机操作系统分为三类:服务器操作系统、桌面操作系 统和嵌入式操作系统。微软仅仅是在桌面部分占有垄断地位。在服务器部分,Linu x、UNIX 和Wind ows NT三分天下的局面已经开始形成。事实上,Linu x服务器操作系统在整个服务器操作系统市场格局中占据了越来越多的市 场份额,并且形成了大规模市场应用的局面。Linu x引起了全球IT产业的高度关注,并以强 劲的势头成为服务器操作系统领域中的中坚力量。第1章Linu x基础7 在嵌入式系统方面,Linu x现在已经走在了前面,在过去几年中,以每年百分之一百到 两百的市场成长速度遥遥领先于对手。而在桌面系统方面,近年来,特别是在国内市场,Linu x的发展非常迅猛。国内如中标 软件、红旗等系统软件厂商推出的Linu x桌面操作系统,目前已经在政府、企业、OEM等领 域得到了广泛应用。国外的Novel l(Su SE)、Su n公司也相继推出了基于Linu x的桌面系统。因此,对于Linu x应用,现在已经有很多基于Linu x的解决方案。从全球范围来看,IBM Oracl e、CA、SAP等业界巨头纷纷推出了基于Linu x的数据库和应用系统,而众多独立软件 开发商也纷纷仿效,不断将已有的应用移植到Linu x上,给用户以更多的选择。在中国,中 科红旗、中软等本地Linu x厂商也在积极努力,开发适合中国企业的Linu x应用方案。以红 旗Linu x为例,它已经提供了基于Linu x的安全服务器、数据库服务器、集群服务器以及双 机集群(HA)系统。这些应用方案已经在邮政、北京市政府等领域得到了成功的应用。此外,Linu x解决方案的高性价比也是促使企业选择Linu x的重要因素。我国出台的鼓励软件产业和集成电路产业发展的若干政策,其重点是扶持软件产业。而国家出台的政府采购法,要求政府在非特殊情况下采用国产软件,这使得Linu x应用的政 策环境得到改善。这几年,政府采购规模越来越大,其中在软件上投入50亿元左右,这对于 中国软件业,特别是以国产软件为主的Linu x的广泛应用和快速发展更增添了新的动力。3.灵活性Linu x以它的高效性和灵活性著称。它能够在PC上实现全部的UNIX特性,具有多任务、多用户的能力。Linu x可在GNU公共许可权限下免费获得,是一个符合POSIX标准的操作 系统。Linu x操作系统软件包不仅包括完整的Linu x操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X Wind ow图形用户界面,如 同我们使用Wind owsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。4.备受青睐的原因Linu x之所以受到广大计算机爱好者的喜爱,主要原因有两个:一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要 的修改,无偿使用它,无约束地继续传播;另一个原因是,它具有UNIX的全部功能,任何 使用UNIX操作系统或想要学习UNIX操作系统的人都可以从Linu x中获益。运行Linu x需要的配置并不高,支持众多的PC外部设备,并且这样一个功能强大的软 件完全免费,其源代码是完全公开的,任何人都能拿来使用(但要遵从GNU的版权制度)。Linu x核心程序的著作权归Linu s本人所有,其他应用程序归各自的作者所有,但按照 GNU授权,任何人都可以采取收费或免费方式来发行Linu x,并在符合该授权的规范下做修 改。这样就有了一大批的免费程序移植到了 Linu x上,包括GNUEmacs、XFree86、Mozil l a 等经典软件,并且在不断壮大中。由于源代码是公开的,任何一个使用Linu x的人在添置了 新硬件后都能自己编写驱动程序,所以Linu x对新硬件的支持已经超过了许多专业UNIX系 统。Linu x的成功,如果没有Internet是不可能的,因为Linu x实际上是世界各地众多程序员 共同开发的结果。8 软件综合开发案例教程Linu x、GCC、MySQL、Socket、Gtk+与开源案例5.不断完善中现在的Linu x经过数次改版(包括核心的升级和外围程序的完善),已经发展成了一个遵 循POSIX标准的纯32位多任务操作系统,64位版本也在广泛地应用之中。Linu x可以兼容 大部分的UNIX系统,很多UNIX的程序不需要改动或者只需很少的改变就可以运行于Linu x 环境;它内置了 TCP/IP协议,可以直接连入Intemet,作为服务器或终端使用;它内置了 Java 解释器,可直接运行Java源代码;Linu x具备程序语言开发、文字编辑和排版、数据库处理 等能力;它还提供X-Wind ow图形界面;它虽然主要用于x86系列的个人电脑,但也有其他 不同硬件平台的版本,支持现在流行的所有硬件设备。就性能上来说,它并不弱于Wind ows 甚至UNIX,而且靠仿真程序还可以运行Wind ows应用程序。它有成千上万的各类应用软件,并不输于Wind ows的应用软件数量,其中也有商业公司开发的赢利性的软件。最可贵的是:它是一个真正的UNIX系统,可以供专业用户和想学UNIX的人在自己的个人电脑上使用。Linu x是一个非常灵活的系统,但相对于Wind ows而言也是一个比较难用的系统,就如同大 多数用户用不惯Mac OS的单键鼠标一样。若想要对Linu x轻车熟路,你必须懂得一些相关 知识,软、硬件的配置,最好还懂点程序,因为没有人义务地为你提供技术支持,除了和其 他用户交流之外,你必须自己解决问题。当然,如果你只是作为日常应用,就不需要那么复 杂啦,Linu x一样会为你提供完美的操作环境,你所要做的就是改变使用习惯和成见。早期的操作系统是没有图形界面的,自从Appl e公司于1984年推出System 1.0开始,个 人电脑才实现了真正的GUI(Graph ics User Interface,图形用户界面),从此电脑变得更加具有 亲和力,也更加易于使用。Wind ows的图形化开始于Wind ows 3.1/3.2,但直到Wind ows 95 的出现,才标志着多媒体时代的到来,从此计算机变得能说会唱起来。Linu x始于UNIX,却 青出于蓝而胜于蓝,同样拥有着不俗的图形用户界面,性能更稳定、界面也更漂亮,可以和 世界上曾经出现过的、最美丽的操作系统媲美!不同于现在的Wind ows XP,Linu x的图形界 面是基于Consol e之上的,类似于Wind ows 95架构于DOS之上,在Linu x下实现图形界面 的是X-Wind ow系统(区别于MS的Wind ows)oLinu x上最常用的X Wind ow是Xfree 86,它是MIT的XI1R 5的移植版,使用Openl ook 窗口管理系统,所以Xfi*ee86是免费的。Xfi*ee86支持现行所有的PC显示卡,但不一定支持 它们的Wind ows加速特性,比如DirectX 9。到目前为止,可以支持中文的Linu x已不再凤毛麟角,而且中文应用软件正在不断丰富。但一些商业软件并未完成移植,其中有诸多原因,在此不详述。6.Linu x所具有的优点根据前面的介绍,可以总结出Linu x具有如下优点:1)开放性开放性是指系统遵循世界标准规范,特别是遵循开放系统互联(OSI)国际标准。凡遵循国 际标准所开发的硬件和软件,都能彼此兼容,可方便地实现互联。2)系统稳定第1章Linu x基础9Linu x是基于UNIX概念而开发出来的操作系统,具有与UNIX系统相似的程序接口和 操作方式,继承了 UNIX稳定且高效的特点。3)免费或少许费用由于Linu x基于GPL,因此任何人均可以自由获取Linu x。“安装套件”发行者发行的 安装光盘仅需少许费用即可获得。4)安全性、漏洞的快速修补Linu x采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核 心授权等,这为网络多用户环境中的用户提供了必要的安全保障。由于Linu x的支持者众多,有相当多的热心团体、个人参与开发,因此可以随时获得最 新的安全信息,并随时更新,相对较安全。5)多任务、多用户与Wind ows系统不同,Linu x主机上可以同时允许多人上线工作,并且资源分配较为公 平。可以在一个Linu x主机上规划出不同等级的用户,而且每个用户登录系统时的工作环境 可以不同。还可以允许不同的用户在同一个时间登录主机,以便同时使用主机的资源。6)相对而言资源耗费较少Linu x只要一台Intel Pentiu m 100以上级别的计算机就可以安装并且使用流畅。当然,如 果假设的是大型主机(服务于百人以上的主机系统),那么就需要比较好的机器了。7)设备独立性设备独立性是指操作系统把所有外部设备统一当作文件来看待,只要安装它们的驱动程 序,任何用户都可以像使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在 形式。8)良好的用户界面Linu x为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条等设施,给用户 呈现一个直观、易操作、交互性强的、友好的图形化界面。9)丰富的网络功能Linu x在通信和网络功能方面优于其他操作系统。Linu x为用户提供了完善、强大的网络 功能,能够有效地进行Internet通信、文件传输和远程访问。10)良好的可移植性Linu x是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任 何平台上运行。可移植性为运行Linu x的不同计算机平台与其他任何机器进行准确而有效的 通信提供了手段,不需要另外增加特殊、昂贵的通信接口。11)适合需要小核心程序的嵌入式系统由于Linu x用很少的程序代码就可以实现一个完整的操作系统,因此相当适合嵌入式系 10软件综合开发案例教程Linu x、GCC、MySQL、Socket.Gtk+与开源案例统。Linu x很适合做诸如手机、数码相机、PDA、家电用品等的操作系统。当然,Linu x还有待改进的地方:(a)没有特定的支持厂商Linu x上的所有套件几乎都是自由软件,而每个自由软件的开 发人员可能并不属于公司团体,而是属于非营利性质的团体。(b)图形界面还不够友好 虽然早在1994年Linu x 1.0发布时,就已经含有XFree 86的 X Wind ow架构了,但是X Wind ow毕竟是Linu x上的一个软件,而不是Linu x最核心的部分。1.1.6 Linux 与 Windows 操作系统和Linu x一样,Wind ows是完全的多任务操作系统。它们支持同样的用户接口、网络和 安全性。但Wind ows操作系统是商用的操作系统,由微软公司控制接口和设计。因此,用户 无法对Wind ows做任何改动。在稳定性方面,Linu x和Wind ows运行的稳定性各有优劣。但Linu x的任何程序都是相 对独立的,哪怕GNOME和KDE(窗口管理程序)也是独立的。因此软件的崩溃难以造成系统 的瘫痪(死机)。此时,只要重新运行程序就可以恢复。Wind ows的死机频率远远高于Linu x。在多用户方面,Linu x是真正的多用户系统,可以有多个用户真正登录。而相对来说,Wind ows就很勉强。在对中文的支持方面,Wind ows的多个版本对于中文的支持是很强的,字体也很漂亮。而Linu x虽然也支持中文,但要完全支持中文需要手动做很多设置。不过由于几乎每个软件 都要设置字体和字符编码,即使做得再好,仍然可能看到中文乱码,而且开源的中文字体基 本都不大好看。因此,Linu x在中文显示上其效果不如Wind ows。在安全性方面,Wind ows的安全性是很有问题的,为此,必须安装各种杀毒软件、防火 墙、防垃圾软件、防间谍软件等保证安全的软件,而这些软件的安装占去了很多的系统资源。即使这样,还是防不胜防。相对而言,Linu x的安全性好很多。在应用软件方面,虽然Linu x下的软件有很多,但相比Wind ows,还是少很多。Linu x 没有特定的支持厂商,而微软的商业运作很成功。在易用性方面,Wind ows相当容易上手,而Linu x的学习成本则很高,特别是做系统配 置时,Linu x的复杂性就充分体现出来了。加上Linu x的文档材料远不如Wind ows,这使得 Linu x的学习和使用成本都增加了。由于受知识产权的限制,所以无论是使用PC平台上的Wind ows,还是使用应用于大中 型机的UNIX,都无法窥视到其内部结构。这些系统很可能存在不为我们所知的漏洞,如果 这些漏洞为别有用心者所利用,将会产生各种安全问题。操作系统不同于其他软件产品,它 是其他应用程序得以运行的平台。由于我们无法获知这些系统的细节,所以我们无法确保计 算机应用的安全,长此以往,将会对软件产业发展产生深远的负面影响。Linu x的出现,一方面促进了许多国家软件产业的发展,另一方面,它也为广大学生提 供了一份宝贵的学习资料。目前UNIX、Linu x Wind ows三种操作系统三分天下,最终谁能第1章Linu x基础 11 占领市场的主流而成为市场霸主,目前还没有定论。但总的说来,Linu x的发展前景是很广 阔的。1.2 Linux文件系统文件系统是包括在一个磁盘(包括光盘、软盘、闪盘以及其他存储设备)或分区的目录结 构。一个可应用的磁盘设备可以包含一个或多个文件系统。文件系统是文件的数据结构或组 织方法。文件系统是基于操作系统的,建立在磁盘媒质上的可见体系结构。在计算机行业,文件系统是组织存储文件或数据的方法,目的是使文件和数据易于查询和存取。一般计算机中的一块硬盘可以分为一个主分区和若干个扩展分区(逻辑分区),Linu x操作 系统可以安装在任何地方,因此许多机器上可以同时安装多个Wind ows及Linu x系统。在Linu x下没有盘符的概念,不管是什么存储盘,在它里面都是一样对待的。系统里只 有从根目录往下一层层的目录,一个盘可以有多个目录,一个目录也可能会跨多个盘。文件 系统是Linu x操作系统的重要组成部分,Linu x文件系统具有强大的功能。Linu x支持多种文 件系统,从而更加灵活,并且可以和许多其他操作系统共存。Linu x已经可以支持15种以上 的文件系统:EXT、EXT2 xia minix u msd os msd os、vfat proc smb ncp iso 9660 sysv、h pfs、affs以及u fs等。毫无疑问,它今后支持的文件系统类型还将增加。(a)EXT2:EXT2是GNU/Linu x系统中标准的文件系统。这是Linu x中使用最多的一种 文件系统,它是专门为Linu x设计的,拥有极快的速度和极小的CPU占用率。EXT2既可以 用于标准的块设备(如硬盘),也可以应用于软盘等移动存储设备上。(b)EXT3:EXT3是EXT2的下一代,也就是在保有EXT2的格式之下再加上日志功能,是一种口志文件系统(Jou rnal Fil e System),其最大特点是:它能够将整个磁盘的写入动作完 整地记录在磁盘的某个区域上,以便有需要时回溯追踪。当在某个过程中断时,系统可以根 据这些记录直接回溯并重整被中断的部分,重整速度相当快。该分区格式被广泛应用在Linu x 系统中。(c)Linu x swap:它是Linu x中一种专门用于交换分区的swap文件系统。Linu x使用这一 整个分区作为交换空间。一般这个swap格式的交换分区是主内存的两倍。在内存不够时,Linu x会将部分数据写到交换分区上。(d)VFAT:VFAT叫长文件名系统,这是一个与Wind ows系统兼容的Linu x文件系统,支持长文件名,可以作为Wind ows与Linu x交换文件的分区。(e)其他:RAMFS,内存文件系统,速度很快;NFS,网络文件系统,由SUN发明,主要用于远程文件共享;MS-DOS,MS-DOS文件系统;FAT,Wind ows XP操作系统采用 的文件系统;NTFS,Wind ows NT/XP操作系统采用的文件系统;HPFS,OS/2操作系统采 用的文件系统;PROC,虚拟的进程文件系统;ISO 9660,大部分光盘所采用的文件系统;u fsSu n,OS所采用的文件系统;NCPFS,Novel l服务器所采用的文件系统;SMBFS,Samb a 的共享文件系统;XFS,由SGI开发的先进日志文件系统,支持超大容量文件;JFS,IBM 12软件综合开发案例教程Linu x、GCC、MySQL、Socket.Gtk+与开源案例的AIX所使用的口志文件系统;ReiserFS,基于平衡树结构的文件系统;u d f,可擦写的数据 光盘文件系统。其中,EXT2(或EXT3)是Linu x默认的文件系统。我们把EXT2(或EXT3)以及Linu x支 持的文件系统称为逻辑文件系统。本书将以Linu x最标准的EXT2文件系统为例进行介绍。1.2.1文件系统文件系统是操作系统用以表明磁盘或分区上文件的一种方法以及数据结构,也即磁盘上 文件组织的方法。文件系统创建过程是存储设备建立文件系统的过程,一般也被称为格式化 或初始化,通过一些初始化工具来进行。一般情况下,每个类型的操作系统都有这方面的工 具,也有多功能的第三方工具,在Linu x中有mkfs系列工具。1.逻辑分区和很多文件系统一样,EXT2建立在数据被保存在数据块中的文件内这个前提下。这些 数据块长度相等且这个长度可以变化,某个EXT2文件系统的块大小在创建(使用mke2fs)时 设置。每个文件的大小要大于或等于块大小的整数倍。如果块大小为1024字节,则一个1025 字节的文件将占据两个1024字节大小的块。这样你将不得不浪费差不多一个块的空间。我们 通常需要在CPU的内存利用率和磁盘空间使用上进行折中。而大多数操作系统,包括Linu x 在内,为了减少CPU的工作负载而被迫选择相对较低的磁盘空间利用率。并不是文件中每个 块都包含数据,其中有些块被用来包含描述此文件系统结构的信
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服