第1章 Linux操作系统概述.docx

上传人:b****5 文档编号:7245945 上传时间:2023-01-22 格式:DOCX 页数:53 大小:2.83MB
下载 相关 举报
第1章 Linux操作系统概述.docx_第1页
第1页 / 共53页
第1章 Linux操作系统概述.docx_第2页
第2页 / 共53页
第1章 Linux操作系统概述.docx_第3页
第3页 / 共53页
第1章 Linux操作系统概述.docx_第4页
第4页 / 共53页
第1章 Linux操作系统概述.docx_第5页
第5页 / 共53页
点击查看更多>>
下载资源
资源描述

第1章 Linux操作系统概述.docx

《第1章 Linux操作系统概述.docx》由会员分享,可在线阅读,更多相关《第1章 Linux操作系统概述.docx(53页珍藏版)》请在冰豆网上搜索。

第1章 Linux操作系统概述.docx

第1章Linux操作系统概述

第1章Linux操作系统概述

1.1什么是操作系统?

计算机根据指令来自动执行任务。

计算机程序指一系列按照特定顺序组织的计算机数据和指令的集合。

而计算机软件=程序+数据+文档。

计算机硬件指的是计算机的物理部件,包括主板、处理器、磁盘、键盘、鼠标、显示器、打印机、网卡等。

一般认为,计算机硬件包括五大基本单元,分别是输入单元、输出单元、算术逻辑单元、控制器和存储单元。

算术逻辑单元ALU(Arithmetic Logic Unit)也成为运算器,它是计算机对数据进行加工处理的部件,包括算术运算(加、减、乘、除等)和逻辑运算(与、或、非、异或、比较等)。

 控制器负责从存储单元中取出指令,并对指令进行译码;根据指令的要求,按时间的先后顺序,负责向其它各部件发出控制信号,保证各部件协调一致地工作,一步一步地完成各种操作。

控制器和运算器组合在一起称为中央处理器CPU(Central Processing Unit,简称 CPU)。

存储单元是计算机记忆或暂存数据的部件。

计算机中的全部信息(包括数据和指令)都存放在存储单元中。

存储单元分为主存(内存)和外存两种,外存包括硬盘、U盘、SD卡等。

所有的单元都是由CPU内部的控制单元来负责协调和进行计算,CPU进行计算和判断的数据都来自于内存,因此内存的容量会影响整个系统的性能。

CPU的一个参数为CPU的指令一次可以读写的最大数据量,32位CPU指的是指令一次最多读取32位的数据,而64位CPU则指的是一次最多读取64位的数据。

一个32位的CPU访问的内存地址=

,即4GB。

存储单元由许多半导体器件组成,这些器件可以存储一个比特的数据(1或者0)。

计算机系统采用二进制运算,存储单元一般以8个比特(bit)即一个字节byte为单位(1B=8b)。

由于存储单元的容量一般比较大,进一步引入了kilo、mega等。

6GB的内存大小实际为6*1024*1024*1024=6442450944字节。

进制

Kilo

Mega

Giga

Tera

Peta

二进制

十进制

需要注意的是硬盘厂商在标注容量时采用十进制为单位,比如500GB,实际上是500*1000*1000*1000Byte。

而在计算机内显示时采用二进制,因此容量为466GB。

目前硬盘主要有两大类,分别是机械硬盘HDD(HardDiskDrive)和固态硬盘SSD(SolidStateDrive)。

主要的尺寸为3.5英寸(一般用于台式机)和2.5英寸(一般用于笔记本电脑和移动硬盘)。

HDD采用磁性碟片来存储,由磁盘和读取部件等组成。

早期硬盘采用与软盘类似的结构,由重叠的一组磁盘构成。

当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道(Track)。

磁盘上的每个磁道被等分为若干个弧段,即扇区(sector),它是磁盘读写的基本单位,每一条磁道都具有相同的扇区数。

早期一个扇区一般为512个字节,现在也支持4K字节。

一个磁盘一般包括正反两面,磁头(Head)给出了是哪个盘片的哪一面。

具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。

这样硬盘的读写采用3D寻址方式CHS,即Cylinder(柱面)、Head(磁头)、Sector(扇区),Head表示硬盘有只要知道了硬盘的CHS的数目,即可确定硬盘的容量,硬盘的容量=柱面数*磁头数*扇区数*512B。

老式硬盘中,由于每个磁道的扇区数相等,所以外道的记录密度要远低于内道,因此会浪费很多磁盘空间,人们改用等密度结构生产硬盘。

也就是说,外圈磁道的扇区比内圈磁道多,采用这种结构后,硬盘不再具有实际的3D参数,寻址方式也改为逻辑块寻址LBA(Logicalblockaddressing),这是一种线性寻址,即以扇区为单位进行寻址。

为了与使用3D寻址兼容,硬盘控制器内部安装了一个地址翻译器,由它负责将老式3D参数翻译成新的线性参数。

这样用户可以选择硬盘的不同工作模式,比如LBA、LARGE、NORMAL等。

硬盘与主板之间的接口包括IDE(PATA)、SCSI、SATA、IDE,而USB和eSATA接口用于外接移动硬盘、U盘等。

IDE(IntegratedDriveElectronics)接口也称为PATA(ParallelAdvancedTechnologyAttachment),采用传统的40-pin并口数据线,传输速率最大133MB/s。

由于并口线的抗干扰性太差,且排线占空间,不利计算机散热,逐渐被SATA所取代。

SATA(SerialATA)采用串行连接方式,具备更强的纠错能力,传输速率150MB/s。

最新的版本为SATA3.0,传输速率可达600MB/s。

SCSI(SmallComputerSystemInterface)接口并不是转为硬盘设计的接口,而是一种高速数据传输技术,具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点主要应用于中、高端服务器和高档工作站中。

光纤通道(FibreChannel)为多硬盘系统环境而设计的,能满足高端工作站、服务器、海量存储子网络、外设间通过集线器、交换机和点对点连接进行双向、串行数据通讯等系统对高数据传输率的要求。

SAS(SerialAttachedSCSI)即串行连接SCSI,是新一代的SCSI技术,通过采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。

固态硬盘SDD采用闪存颗粒来存储,相比机械硬盘,读写速度更快,低功耗、无噪音、轻便、防震抗摔,但是价格更贵,容量也要小。

什么是操作系统?

操作系统是计算机运行的总控制程序,管理和控制计算机系统中的硬件和软件资源,为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与用户之间起到接口作用。

内核(kernel)是操作系统的核心,当计算机启动时,经过一个引导(bootstrap)过程来初始化计算机,加载操作系统,最后启动一个操作系统内核程序。

内核程序一直运行,管理计算机的资源,为用户提供服务。

考虑到有各种各样的硬件,因此内核通过驱动程序来管理和使用硬件,而应用程序通过系统调用接口来使用内核提供的服务来访问资源。

所有的操作系统除了内核外,还提供大量的系统程序以供使用,其中最重要的程序是为用户提供使用计算机的界面(UserInterface)的程序,一般会提供一个基于文本的用户界面(称为shell或者命令行)和一个基于图形的用户界面GUI(GraphicalUserInterface)。

除此之外还包括许多实用工具。

所以操作系统=内核+系统程序。

目前常用的操作系统包括MicrosoftWindows、MacintoshOS、Unix、Linux、Android和IOS等。

操作系统

1.2Linux历史

1965年,美国电话电报公司(AT&T)旗下的贝尔实验室(Bell)、麻省理工学院(MIT)及通用电器(GE)共同发起了Multics(MultiplexedInformationandComputingSystem)的计划,为大型机开发一个多用户多任务操作系统。

1969年贝尔实验室退出了该研究计划。

但是贝尔实验室的一个研究人员KenThompson有一个在Multics上开发的游戏SpaceTravel,回到Bell实验室后找到了一台空闲的DEC公司制造的微型计算机PDP-7,为了能够继续玩SpaceTravel,在该机器上开发了一个简单的小型操作系统,命名为UNICS(UniplexedInformationandComputingSystem),后来改名为Unix。

后来他们获得了一台较新的PDP-11,在当时PDP-11最大瓶颈之一是一次只能运行一个程序,1973年KenThompson和DennisRitchie(第一个C语言编译器的作者)一起将UNIX移植到PDP-11,用C语言重写了UNIX内核,在移植过程中将UNIX改造成一个支持多用户的分时系统,在1974年发布了UNIX第五版,1974年7月在CommunicationsoftheACM上发表了操作系统领域最重要的一篇论文“TheUNIXTime-sharingSystem”。

1975年KenThompson前往加州伯克利分校(UniversityofCaliforniaatBerkeley)进行一年的交流访问,同一年AT&T公司正式将UNIX许可给大学使用。

1977年,伯克利分校的BillJoy(后来创办了Sun公司)等创建和发布(1978年)了第一版的BSD(BerkeleySoftwareDistribution)。

1982年发布的4.1BSD支持TCP/IP,从而得到了广泛的使用,1983年发布了4.2BSD。

1979年AT&T公司意识到了UNIX系统的价值,宣布将UNIX作为一个商业产品进行销售,不再允许公司之外的人自由查看系统的源代码,同时要求所有的BSD用户购买相应的源代码License。

1982年AT&T发布了第一个商业版本UNIXSystemIII,1983年发布了SystemV。

在此后出现了两个UNIX的分支,分别是SYSV和BSD,两者非常类似,只是在文件系统结构、系统程序名称选项以及系统调用库有少许不同。

由于Unix的可移植性与强大的性能,许多商业公司包括HP、IBM、DEC、Sun、SCO等也为自己生产的硬件发布了各自的Unix操作系统。

由于AT&T要求用户购买源代码许可证,BSD对于AT&T的商业化运作不满,开始完全重写所有基于AT&T公司代码的内核和系统程序,最终BillJolitz和他的妻子LynneJolitz在1992年发布了一个开放源码的完全和AT&T无关的操作系统,称为386/BSD,很快流行起来。

由于BillJolitz拥有一份全职工作,没有时间处理所有的补丁和增强,于是一组志愿者接管了这项工作,同时将该操作系统重新命名为FreeBSD。

FreeBSD只能运行在PC硬件上,一些志愿者成立了新的小组将FreeBSD移植到其他类型的计算机上,该小组提供的版本称为NetBSD。

20世纪90年代中期,NetBSD进一步分出另一个分支来关注安全和密码学问题,其发布的版本称为OpenBSD。

1979年之后需要源代码License才能查看UNIX源代码,这使得大学里的操作系统学习再也无法采用UNIX了。

荷兰的AndrewTanenbaum教授从头构建了一个新的与UNIX类似但非常小的操作系统Minix(MinimalUnix),1987年发行了第一版本,Minix迅速成为学习操作系统以及体验操作系统的最佳工具。

之后许多程序员希望能够对官方版本进行增强,但是Tanenbaum否决了大部分请求,其坚持Minix应该是一个简单的操作系统,适合于教学需要。

1985年RichardStallman启动了一个称为自由软件基金会FSF(FreeSoftwareFoundation),其认为“计算机用户应该能够自由地修改软件以适应自己的需求,并且自由共享软件“,所谓”自由软件“指的是任何人都可以对自由软件进行检查、修改、共享以及发行,但是其并不排斥对于自由软件的服务或者发行进行收费。

为了避免混淆,自由软件现在称为开放源代码软件(OpenSourceSoftware)。

由于计算机的核心是操作系统,所以FSF的第一个目标是创建一个可以自由共享和修改的操作系统,这个类Unix操作系统的项目的名称被命名为GNU,注意其是“GNU’sNotUnix”的首字母缩写词,发音为Guh-NOO,或直接字母发音。

到20世纪80年代末,作为GNU项目的一部分,包括编辑器Emacs、C编译器gcc、C++编译器g++、调试器gdb、UnixShellBash等实用工具逐步发布,但是一直没有发布一个成型的类Unix内核(GNUHurd内核)。

1991年芬兰Helsinki大学计算机科学系的二年级学生LinusTorvalds在阅读了Tanenbaum的操作系统书籍以及附录中的12000行源代码后,编写了一个工作在PC机上的新的类UNIX操作系统内核,命名为Linux(来源于Linus'sUnix的缩写,发音为[ˈlɪnəks])。

Linux内核采用了FSF的GPL许可证,这样允许志愿者参与修改及扩展,同时Linus也尽可能快地发布新版本的内核,这使得Linux迅速变得非常流行。

Linux吸纳了Unix两大分支的优点,采用SYSV风格的启动文件样式和BSD风格的文件系统布局,支持SYSV、BSD以及IEEE的POSIX(PortableOperatingSystemInterface)系统调用。

操作系统内核可以分为两大类,分别是规模较大的单内核(monolithickernel)和规模较小的微内核(microkernel)。

微内核只执行最基本的任务,其他功能需要调用其它称为服务器的程序,由于采用模块化设计,容易理解,而且更易于定制和更新。

单内核中所有的功能在一个程序中完成,速度比较快。

Linux内核以及大多数Unix系统采用单内核的设计,不过MINIX采用微内核设计,1992年Tanenbaum批评Linux单内核已经落伍了,从而引发了与Linus之间的一场争论。

严格来讲,Linux指的是一个操作系统内核,一个完整的操作系统还需要包括其他实用工具。

人们提供的基于Linux内核的操作系统称为Linux发行版(Distribution)。

大多数Linux发行版使用FSF的GNU实用工具,所以Linux操作系统称为GNU/Linux可能更为恰当。

除了Linux和Unix操作系统外,目前比较流行的操作系统还包括微软的Windows系列以及Apple的MacintoshOSX。

OSX实际上基于Unix,采用基于Mach的微内核,可以通过Terminal窗口来访问Unix命令行。

在移动互联网平台上主要的操作系统为Android和苹果公司的IOS。

Android系统基于Linux,采用了Linux内核,在其上引入了一个框架来支持移动应用。

Linux是目前使用最为广泛的操作系统,在Internet下的许多服务和应用都是工作在Linux系统之上。

Linux也被广泛应用于嵌入式系统上,比如手机、平板电脑、路由器、电视和游戏机等。

Linux也可以作为日常的桌面系统来使用,绝大部分Linux发行版安装时都可以选择相应的桌面环境,比如GNOME和KDE等。

你会发现在Windows或者Mac系统中所使用的主要的桌面应用程序在Linux中都有相应的应用程序。

对于那些不能在Linux中使用的应用程序(比如部分Windows应用),你也可以通过安装wine来运行Windows应用。

当然需要指出的是,尽管Linux系统提供了桌面环境,但是目前桌面环境中仍然是Windows占据绝对的领先地位。

德国慕尼黑政府在2003年宣布1.4万台政府电脑从Windows切换到Linux,并且在2013年完成切换,但是仅仅几年之后,最近准备回归到Windows,预计在2020年前全部切换回Linux。

这也显示了Linux在桌面领域面临的艰巨挑战。

Linux桌面的市场份额在2%左右,而Windows大约是90%。

但是在服务器、移动市场和物联网市场等领域,Linux占据了绝对的领导地位。

微软的Windows10也提供了可选的WindowsSubsystemforlinux,可以直接运行Linux应用程序。

1.3许可证

从上面的描述可以看到,Linux和FreeBSD都支持PC机,而且重写BSD的工作实际上要更早一些。

为什么最终Linux占了主导地位?

一个原因是Linux要早于FreeBSD正式发布(Linus在实现Linux之前并不知道BillJolitz的工作,也幸好不知道,否则可能Linus不会自己来编写Linux内核了),其次Linux采用GPL许可证,更加鼓励共享。

GPL(GNUPublicLicense)是Linux以及其他许多开源软件遵循的许可证协议,它主要包括如下内容:

●软件最初的作者保留版权

●其他人可以修改后销售该软件,也可以在此基础上开发新的软件。

但必须保证这份源代码向公众开放。

●经过修改的软件仍然要受到GPL的约束,除非能够确定经过修改的部分是独立于原来作品的。

●如果软件在使用中引起了损失,开发人员不承担相关责任。

BSD许可证没有GPL那么严格,给予使用者很大自由,包括可以自由地使用和修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。

但"为所欲为"的前提是必须在源代码或者二进制文件中包含原有代码中的BSD协议。

正是由于BSD许可证非常灵活,许多公司在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。

除了GPL和BSD许可证外,后来还出现了MIT、LGPL、Apache、Mozilla许可证,这些许可证之间的区别在于修改源代码之后是否允许闭源,是否每个文件必须有版权说明等,具体区别如下图所示:

1.3Linux发行版

如果你是一个Linux的深度极客(geek),那么你可以编译一个Linux内核,然后整合GNU的实用工具以及其他开源程序,搭建一个完整的系统。

但是对于普通用户而言,这是一个非常困难的任务。

许多个人或者机构开始提供基于Linux的操作系统即Linux发行版,通过相应的安装程序就可以得到一个可以工作的Linux系统,一个Linux发行版包括Linux内核、GNU库和实用工具、桌面环境、各种应用软件,提供一个用来简化系统初始安装的安装工具、软件安装升级的软件包管理工具和详细的用户手册。

到目前为止大概有700多个发行版,目前300个左右的发行版仍然活跃(

1993年PatrickVolkerding创建了Slackware发行版,其重点在系统的稳定性和简洁性,它是第一个得到广泛使用的发行版,也是目前活跃的发行版中最古老的。

Debian发行版在1993年由IanMurdock创建,在DebianManifesto中,宣布将以开源的方式,本着Linux及GNU的精神发行一套GNU/Linux发行版。

Debian是为数极少的纯社区驱动的Linux发行版,而不是由商业公司或者政府机构所掌控。

Debian的软件被打包成deb格式,以便于安装、卸载和升级。

包管理系统名为dpkg(底层),前端工具有apt、aptitude和图形界面管理工具等。

Debian的包管理系统是其最出色的特性,深受其用户的喜爱和赞赏。

SUSE(发音/ˈsuːsə/)是第一个由商业公司发布的发行版,基于Slackware,目的是为德国用户提供量身定制的Linux,在很长一段时期是欧洲使用最为广泛的发行版之一。

第一个正式版本在1994年发布,该公司后来在2004年被Novell公司收购。

RedHat是美国Redhat公司于1994年发布的发行版,使用非常广泛,采用RPM包管理系统。

RedHat公司将其产品分为两个系列,一个是免费的RedHatLinux,另外一个是企业版本RHEL(RedHatEnterpriseLinux),需要license,由RedHat公司提供服务。

RedHat公司后来停止发行RedHatLinux,转而赞助FedoraProject来发行社区版本Fedora,对于用户而言,Fedora是一套功能完备、更新快速的免费操作系统,而对赞助者RedHat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到RedHatEnterpriseLinux中。

由于用户使用RHEL时需要付费才能获得RedHat的服务和技术支持,CentOS(CommunityEnterpriseOperatingSystem)的开发者使用RHEL的源代码进行再编译获得一个和RHEL近乎相同的Linux。

但是一切和RedHat有关的商标都被去除了,最初的版本在2004年发布。

许多希望搭建企业级应用平台,但是又不需要RedHat公司服务支持的团队会选择CentOS发行版。

CentOS的技术支持主要通过社区的官方邮件列表、论坛和聊天室。

2014年RedHat公司宣布与CentOSProject合作,帮助开发CentOS。

Ubuntu(/ʊˈbuːntʊ/uu-BOON-tuu,中文名乌班图)由MarkShuttleworth(马克·舍特尔沃斯)的公司Canonical提供支持,基于Debian的不稳定分支,其首个版本于2004年发布,Ubuntu每六个月便会发布一个新版,其命名规则为发行日期。

Ubuntu的开发目的是为了使个人电脑变得简单易用,同时也提供针对企业应用的服务器版本。

Ubuntu也许是使用最为广泛的发行版之一,大大促进了Linux桌面应用的发展。

Gentoo最初由DanielRobbins(FreeBSD的开发者之一)创建,采用与FreeBSDports类似的称为Portage包管理系统,其首个稳定版本发布于2002年。

Gentoo的出名是因为其高度的自定制性:

因为它是一个基于源代码的发行版。

尽管安装时可以选择预先编译好的软件包,但是大部分使用Gentoo的用户都选择自己手动编译,从而可以针对硬件进行优化,拥有优秀的性能。

这也是为什么Gentoo适合比较有Linux使用经验的老手使用的原因。

LinuxMint由LinuxMintTeam团队于2006年开始发行,基于Debian和Ubuntu,目的是为家庭用户和企业提供一个免费的、易用的、舒适而优雅的桌面操作系统。

LinuxMint可以在一个单系统的电脑上运行,但是它也可以自动检测安装的其他操作系统,设置多引导方式,同时也允许访问其他操作系统的分区。

LinuxMint提供一种更完整的即刻可用体验,这包括提供浏览器插件、多媒体编解码器、对DVD播放的支持、Java和其他组件,它也增加了一套定制桌面及各种菜单,一些独特的配置工具,以及一份基于web的软件包安装界面,目前已经成为全球桌面用户的首选之一。

Android是Google公司为平板和手机等移动设备设计的操作系统,构建在Linuxkernel之上,采用Dalvik虚拟机和Android应用框架为APP提供支持。

发行版

网址

说明

Slackware

第一个得到广泛使用的发行版

Debian

www.debian.org

纯社区驱动的Linux发行版,包管理工具dpkg

SUSE

德国Suse公司发布,其社区版本为openSUSE

Fedora

www.fedoraproject.org

RedHat公司赞助的社区发行版,包管理工具rpm

RHEL

RedHat公司发布的企业发行版

CentOS

www.centos.org

RHEL再编译后的企业社区版,RedHat公司提供支持

Ubuntu

www.ubuntu.org

基于Debian不稳定分支的发行版,很长一段时间是桌面用户的首选之一

Gentoo

www.gentoo.org

基于源代码的发行版,采用Portage包管理。

LinuxMint

基于Debian和Ubuntu的发行版,桌面用户的首选之一

有这么多发行版,到底如何选择呢?

如果你是一个桌面型用户,建议选择Lin

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1