当前位置:文档之家› 浅谈linux操作系统的安全

浅谈linux操作系统的安全

浅谈linux操作系统的安全
浅谈linux操作系统的安全

毕业设计(论文)题目: 浅谈linux操作系统的安全

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日

导师签名:日期:年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

目录

第一章 Linux操作系统概述 (1)

1.1 Linux发展历史 (1)

1.1.1 Linux的诞生和发展 (2)

1.1.2 Linux名称的由来 (2)

1.2 Linux的发展要素 (3)

1.2.1 UNIX操作系统 (3)

1.2.2 Minix操作系统 (4)

1.2.3 POSIX 标准 (4)

1.3 操作系统类型选择和内核版本的选择 (4)

1.3.1 常见的不同公司发行的Linux异同 (5)

1.3.2内核版本的选择 (9)

1.4 Linux的系统架构 (10)

1.4.1 Linux内核的主要模块 (10)

1.4.2 Linux的文件结构 (12)

1.5 GNU通用公共许可证 (13)

第二章 Linux与其他操作系统的比较 (15)

2.1 Linux与UNIX的异同 (15)

2.2 Linux和Windows的区别以及安全性的比较 (16)

2.3 Linux与其他操作系统的区别 (18)

2.4 Linux与其他系统的总体比较总结 (119)

2.5 Linux与Windows根本比较—内核 (21)

2.6 Linux的特性 (23)

2.7 Linux与其他操作系统的区别 (25)

第三章 Linux的安全性能分析以及增强 (27)

3.1 嵌入式Linux 的特点 (27)

3.2 嵌入式Linux 现有安全机制及分析 (29)

3.3 嵌入式Linux 安全缺陷 (31)

3.4 小结 (33)

结束语 (34)

参考文献 (37)

附录 (38)

第一章Linux操作系统概述

Linux系统是一个类似UNIX的操作系统,Linux系统是UNIX在微机上的完整实现。UNIX操作系统是1969年由Ken Thompson 和Dennis Ritchie在美国贝尔实验室开发的一种操作系统。由于其良好而稳定的性能迅速在计算机中得到广泛的应用,在随后几十年中也有了不断的改进。本章对Linux的发展进行介绍,主要包括如下内容:

(1)Linux发展的历史,以时间为主线对Linux的诞生进行介绍;

(2)分析Linux和UNIX操作系统的异同;

(3)介绍常用的几种Linux发行版本的特点;

(4)对Linux操作系统的系统架构进行简单的介绍;

(5)介绍GNU通用公共许可证及其特点。

1.1 Linux发展历史

1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds(李纳斯·托沃兹 )在一个Usenet新闻组(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。读者也许猜想所发布的这个系统应该是Linux的0.01版本,实际上不是这样。真正的Linux 0.01版本并没有被发布,原因是0.01版本不实用。Linus仅仅在第一个Linux的FTP站点(ftp://nic.funet.fi)上提供过这个版本的的源代码。

Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU (通用公共许可证) Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。李纳斯·托沃兹因此被称为开

源之父;

Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正式公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布的

1.1.1 Linux的诞生和发展

Linux和UNIX有密切的联系。UNIX能成为世界范围内最有影响的操作系统之一,是由于它有庞大的支持基础和发行系统。当初UNIX是作为小型机和大型机上的多任务操作系统而开发的,很快就发展成为广泛使用的操作系统。

从个人计算机到超级计算机系统,都有各种UNIX版本。但这些版本都很昂贵,而且源代码是有专利的,所以很难在计算机爱好者中广泛使用。然而,UNIX又正是他们所想要的操作系统。于是,出现了一支由编程高手、业余计算机玩家、黑客们组成的“高手集团军”,他们独立地开发出在功能上毫不逊色于UNIX操作系统的全新的、免费的Linux系统。

Linux系统是由芬兰赫尔辛基大学的Linux Torvalds先生于1991年开始开发的,Linux系统的开发得到了全世界的UNIX程序员和爱好者的帮助。他们借助Internet参与Linux系统的开发。Linux系统的核心部分是全新的代码,没有使用有专利的代码。

在操作系统的发展受到版权限制的时候,出现了Minix操作系统,这个操作系统由一本书来详细的描述它的实现原理。由于书中对Minux操作系统的描述非常详细、并且很有条理性,当时几乎全世界的计算机爱好者都在看这本书来理解操作系统的原理,其中包括Linux系统的创始者Linus Torvalds。

1.1.2 Linux名称的由来

Linux 操作系统刚开始时并没有被称作Linux,Linus 给他的操作系统取名为FREAX,其英文含义是怪诞的、怪物、异想天开等意思。在他将新的操作系统上载到ftp,funet。fi服务器上时,管理员Ari Lemke很不喜欢这个名称。他认为既然是Linus 的操作系

统就取其谐音Linux 作为该操作系统的目录吧,于是Linux 这个名称就开始流传下来。在Linus 的自传《Just for Fun》一书中,Linus 解释说:"坦白地说,我从来没有想到过要用Linux 这个名称发布这个操作系统,因为这个名字有些太自负了。而我为最终发布版准备的是什么名字呢Freax。实际上,内核代码中某些早期的Makefile - 用于描述如何编译源代码的文件- 文件中就已经包含有"Freax"这个名字了,大约存在了半年左右。但其实这也没什么关系,在当时还不需要一个名字,因为我还没有向任何人发布过内核代码。而Ari Lemke,他坚持要用自己的方式将内核代码放到ftp 站点上,并且非常不喜欢Freax 这个名字。他坚持要用现在这个名字(Linux),我承认当时我并没有跟他多争论。但这都是他取的名字。所以我可以光明正大地说我并不自负,或者部分坦白地说我并没有本位主义思想。但我想好吧,这也是个好名字,而且以后为这事我总能说服别人,就想我现在做的这样。"-- Linus Torvalds 《Just for fun》.......................... 来自网络

1.2 Linux的发展要素

Linux操作系统是UNIX的一种典型的克隆系统。在Linux诞生之后,借助于Internet网络,在全世界计算机爱好者的共同努力下,成为目前世界上使用者最多的一种类似UNIX的操作系统。在Linux操作系统的诞生、成长和发展过程中,以下5个方面起到了重要的作用:UNIX操作系统、Minix操作系统、GNU计划、POSIX标准和Internet网络。

1.2.1 UNIX操作系统

UNIX ,是一个强大的多用户、多任务操作系统,支持多种处理器架构,最早由Ken Thompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。经过长期的发展和完善,目前已成长为一种主流的操作系统技术和基于这种技术的产品大家族。由于UNIX具有技术成熟、可靠性高、网络和数据库功能强、伸缩性突出和开放性好等特色,可满足各行各业的实际需要,特别能满足企业重要业务的需要,已经成为主要的工作站平台和重要的企业操作平台。

自从UNIX操作系统从实验室走出来之后,得到了长足的发展。目前已经成为大型系统的主流操作系统,现在几乎每个主要的计算机厂商都有其自有版本的UNIX。UNIX是一个功能强大、性能全面的、多用户、多任务的分时操作系统,在从巨型计算机到普通PC等多种不同的平台上,都有着十分广泛的应用。

通常情况下,比较大型的系统应用,例如银行、电信部门,一般都采用固定机型的UNIX解决方案:在电信系统中以SUN的UNIX系统方案居多,在民航里以HP 的系统方案居多,在银行里以IBM的系统方案居多。

Linux是一种UNIX的克隆系统,采用了几乎一致的系统API接口。特别是网络方面,二者接口的应用程序几乎完全一致。

1.2.2 Minix操作系统

Minix操作系统也是UNIX操作系统的一种克隆系统,它由荷兰Amsterdam的Vrije 大学著名教授Andrew S.Tanenbaum于1987年开发完成。Minux操作系统目的主要用于学生学习操作系统原理时教学使用。在当时Minix操作系统在大学中是免费使用的,但是其他用途则需要收费。目前Minix操作系统已经全部是免费的,可以从许多FTP上下载,目前主要有1.5版本和2.0版本在使用。

由于Minix操作系统提供源代码,并且与操作系统相结合,有一本高质量的书籍介绍其实现原理,在当时全世界的大学中形成了学习Minix操作系统的风气,Linus 刚开始就是参照此系统在1991年开始开发Linux的。

实际上,Minix操作系统并不是很优秀,但是这个操作系统提供了C语言和汇编语言的源代码。而当时的UNIX操作系统源代码除了极少的范围外一直是保密的,Minix操作系统对程序员来说是一个福音。为了可以让学生在一个学期内能够学完操作系统的课程,AST保持了Minix操作系统的小型化,没有接受世界各界对Minix 扩展的要求,而正是这个原因激发了Linus编写Linux操作系统。

1.2.3 POSIX 标准

POSIX(Portable Operating System Interface for Computing Systems)是由IEEE和ISO/IEC开发的一组标准。该标准基于现有的UNIX实践和经验,描述了操作系统的

调用服务接口,用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植和运行。它是在20世纪80年代早期一个UNIX用户组的工作基础上取得的。该UNIX 用户组原来试图将AT&T的System V操作系统和Berkeley CSRG的BSD操作系统的调用接口之间的区别重新调和集成,并于1984年制定了usr/group标准。

1.3 操作系统类型选择和内核版本的选择

要在Linux环境下进行程序设计,首先要选择合适的Linux发行版本和Linux的内核,选择一款适合自己的Linux操作系统。本节对常用的发行版本和Linux内核的选择进行了介绍,并简要讲解了如何定制自己的Linux操作系统。

1.3.1 常见的不同公司发行的Linux异同

1.Debian

Debian是一个致力于创建一个自由操作系统的合作组织,由Ian Murdock于1993年创建。该组织创建的操作系统为Debian GNU/Linux,简称为Debian。这是一个免费的Linux系统,拥有许多用户。Debian的主要特点如下:

简单方便的安装过程:可以通过光盘、DOS系统、软盘、网络来进行安装。

数量众多的软件包:Debian拥有超过18733个软件包。

软件包的高度集成:Debian软件包都是由同一个团体所包装,其deb格式具有某些超越rpm格式的优点,正是这种软件包之间的集成性让Debian成为更稳定强健的系统。

简单方便的升级程序:由于Debian的包装系统升级到新的版本非常轻松,只需要运行apt-get update;apt-get dist-upgrade,就可以在几分钟内通过光盘实现升级(或者将apt指向Debian映射站点,通过网络来升级)。

Debian系统分为3个版本:

unstable版(不稳定版):为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。

testing版(测试版):该版本都经过unstable中的测试,相对较为稳定,也支持了不

少新技术(比如SMP等)。

stable版(稳定版):一般只用于服务器,其中的软件包大部分都比较过时,但是稳定和安全性都非常的高。

Debian GNU/Linux不单是一个操作系统,它也包含一万多个软件包,它们是一些已经过编译的软件,并包装成一种容易安装的格式。

Debian的官方网站是https://www.doczj.com/doc/203805314.html,/,读者可通过该网站下载Debian最新版本进行安装。

2.Ubuntu

Ubuntu基于Debian,包括了大量来自Debian发行版的软件包,保留了Debian强大的软件包管理系统,以便简易地安装或彻底的删除程序。与大多数发行版附带数量巨大的可用可不用的软件不同,Ubuntu的软件包清单只包含那些高质量的重要应用程序。

Ubuntu具有以下特色:

使用GNOME桌面环境:Ubuntu的开发者与Debian和GNOME开源社区互相协作,因此其桌面环境采用了GNOME的最新版本,并且与GNOME项目同步发布。安全性:Ubuntu十分注重系统的安全性,采用Sudo工具,所有系统相关的任务均需使用此指令,并输入密码,比起传统以登入系统管理员账号进行管理工作有更佳的安全性。

可用性:Ubuntu也十分注重系统的可用性,其设计为在标准安装完成后即可以让使用者投入使用的操作系统。例如,完成系统的安装后,用户不需要另外安装网页浏览器、办公室软件、多媒体软件与绘图软件等日常应用的软件,因为这些软件已被安装,并可随时使用。

新增特性:对于Ubuntu 8.04版本还增加了许多新的功能,如,允许用户把Ubuntu 8.04系统安装到Windows操作系统上,而不强制要求独立的硬盘分区。将KVM虚拟化技术整合到Ubuntu 8.04,通过管理员权限,用户可以更容易的创建和管理虚拟机,使用更易配置的防火墙程序。

Ubuntu对于桌面和服务器来说都是合适的。当前,Ubuntu发布版支持PC(Intel

x86)、64-bit PC(AMD64)和PowerPC(Apple iBook和Powerbook,G4和G5)架构。Ubuntu主要分为桌面版和服务器版两种。

Ubuntu桌面版:可以浏览网页、查阅电子邮件、撰写文件、分发表单、编辑图片以及进行许多其他操作。

Ubuntu服务器版:建立在稳健的Debian服务器版基础之上,它在一个稳定、安全、被充分支持的平台上提供着最好的自由软件。

Ubuntu的版本号根据发布一个版本的日期而定。版本号由该次发布的年份和月份组成,并未反映其实际版本。例如,首次发布是在2004年10月,因此其版本号为4.10。当前版本于2009年4月发布,因此版本号为9.04。

提示:读者可从其官方网站https://www.doczj.com/doc/203805314.html,/上免费下载需要的版本进行安装,也可在国内的镜像站点进行下载。

3.Slackware

Slackware由Patrick V olkerding创建于1992年,是历史最悠久的Linux发行版,曾经在所有发行版中拥有最多的用户数量。与很多其他的发行版不同,它坚持KISS (Keep It Simple Stupid)的原则,即没有任何配置系统的图形界面工具。对于Linux 的初学者来说,配置系统通常都会有一些困难,但是对有经验的系统管理员,将会喜欢这种方式的透明性和灵活性。

Slackware Linux的另一个突出的特性是符合KISS原则:Slackware没有如RPM 之类的成熟的软件包管理器。Slackware的软件包都由通常的tgz(tar/gzip)格式文件和安装脚本组成。对于有经验的用户来说,tgz格式文件的功能比RPM更为强大,可以避免RPM之类管理器的依赖性问题。

Slackware还有另外一个特性就是BSD风格的初始化脚本。Slackware对所有的运行级(runlevel)任务都用同一个脚本,而不是在不同的运行级中建立一堆脚本的链接。这样,让用户不必自己编写新的脚本就能很容易地调整系统。

由于Slackware系统比较简洁、干净,易于在它的基础上进行开发,因此基于Slackware衍生出了多个发行版和Live-CD项目。所谓Live-CD,就是一个在光盘上运行的Linux系统。从Slackware 9.1开始,其第二张安装CD就是一个Live-CD。

Slackware的官方网站为https://www.doczj.com/doc/203805314.html,,读者可从该网站下载最新版本。

4.Fedora

Fedora项目是由Red Hat赞助,由开源社区与Red Hat工程师合作开发的项目,是一套从Red Hat Linux发展出来的免费Linux系统。目前,Fedora最新的版本是Fedora 11。

对于Linux用户来说,Red Hat应该是最熟悉的发行版。Red Hat最早由Bob Young 和Marc Ewing在1995年创建。Red Hat的发行版到Red Hat 9.0后就已停止技术支持。因此,目前Red Hat分为两个系列:由Red Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux,以及由社区开发的免费的Fedora Core。Fedora Core自第五版起直接更名为Fedora。

Fedora从2003年推出第一个发行版Fedora Core1开始,到2009年6月推出Fedora 11,其更新速度很快。

提示:Fedora的官方网站是https://www.doczj.com/doc/203805314.html,,读者可从该网站下载最新版的Fedora安装使用。

5.Red Hat Enterprise Linux

前面已经介绍过,Red Hat公司的免费发行版到Red Hat 9.0就结束了。现在,Red Hat公司全面转向Red Hat Enterprise Linux(简写为RHEL)的开发,和以往不同的是,新的RHEL要求用户先购买许可,Red Hat承诺保证软件的稳定性、安全性,并且RHEL 的二进制代码不再提供下载,而是作为Red Hat服务的一部分。但依据GNU的规定,其源代码依然是开放的。

RHEL从2003年3月推出开始,到2009年1月已经发行到RHEL 5.3版本(2007年3月就发布了RHEL5)。

RHEL5基于Linux 2.6.18内核,支持多核处理器,其版本主要分为Server和Desktop 两个。

1.Server版

RHEL Server版本是RHEL家族中最强的版本,支持大型服务器,包括最全面的支持服务,适用于大型企业部门及数据中心。

Server版本可分为Red Hat Enterprise Linux Advanced Platform(对应以前的Red Hat Enterprise Linux AS)和Red Hat Enterprise Linux(对应以前的Red Hat Enterprise Linux AS)。

2.Desktop版

RHEL Desktop版是RHEL的桌面版。适合所有桌面部署,包括办公室软件、软件制作环境及一些ISV客户程序。

Desktop版本分为Red Hat Enterprise Linux Desktop(对应以前的Red Hat Desktop)和Red Hat Enterprise Linux Desktop with Workstation option(对应以前的Red Hat Enterprise Linux WS)。

1.3.2内核版本的选择

内核是Linux操作系统的最重要的部分,从最初的0.95版本到目前的2.6.28.4版本,Linux内核开发经过了近20年的时间,其架构已经十分稳定。Linux内核的编号采用如下编号形式:

主版本号.次版本号.主补丁号.次补丁号

例如2.6.26.3各数字的含义如下:

(1) 第1个数字(2)是主版本号,表示第2大版本;

(2) 第2个数字(6)是次版本号,有两个含义:既表示是Linux内核大版本的

第6个小版本,同时因为6是偶数表示为发布版本(奇数表示测试版);

(3) 第3个数字(26)是主版本补丁号,表示指定小版本的第26个补丁包;

(4) 第4个数字(3)是次版本补丁号,表示次补丁号的第3个小补丁。

在安装Linux操作系统的时候,最好不要采用发行版本号中的小版本号是奇数的内核,因为开发中的版本没有经过比较完善的测试,有一些bug是未知的,有可能造成使用中不必要的麻烦。

注意:Debian Linux内核的版本稍有不同,如2.6.18-3,可以发现多了一组数

该数字是构建号。每个构建号可以增加少量新的驱动程序或缺陷修复。

Linux内核版本的开发源代码树目前比较通用的是2.6.xx的版本,当然,有部分

2.4的版本仍在使用。与2.4版本的内核相比较,2.6版本内核具有如下的优势:

?支持绝大多数的嵌入式系统,加入了之前嵌入式系统经常使用的μClinux的

大部分代码,并且子系统的支持更加细化可以支持硬件体系结构的多样性,

可抢占内核的调度方式支持实时系统,可定制内核。

?支持目前最新的CPU,例如Intel的超线程、可扩展的地址空间访问。

?驱动程序框架变更,例如用.ko替代了原来的.o方式,消除内核竞争,更加透

明的子模块方式。

?增加了更多的内核级的硬件支持。

本书中的环境对Linux的内核没有特殊要求,因此读者在选择内核版本的时候不需要重新编译内核,使用操作系统自带的内核就可以满足需要。本书作者的操作系统内核为Linux-2.6.18.3-686。

1.4 Linux的系统架构

Linux系统从应用角度来看,分为内核空间和用户空间两个部分。内核空间是Linux 操作系统的主要部分,但是仅有内核的操作系统是不能完成用户任务的。丰富并且功能强大的应用程序包是一个操作系统成功的必要条件

1.4.1 Linux内核的主要模块

Linux的内核主要由5个子系统组成:进程调度、内存管理、虚拟文件系统、网络接口、进程间通信。

(1) 进程调度SCHED

进程调度指的是系统对进程的多种状态之间转换的策略。Linux下的进程调度有3种策略:SCHED_OTHER、SCHED_FIFO和SCHED_RR。

?SCHED_OTHER是用于针对普通进程的时间片轮转调度策略。这种策略中,

系统给所有的运行状态的进程分配时间片。在当前进程的时间片用完之后,

系统从进程中优先级最高的进程中选择进程运行。

?SCHED_FIFO是针对运行的实时性要求比较高、运行时间短的进程调度策略。

这种策略中,系统按照进入队列的先后进行进程的调度,在没有更高优先级

进程到来或者当前进程没有因为等待资源而阻塞的情况下,会一直运行。

?SCHED_RR是针对实时性要求比较高、运行时间比较长的进程调度策略。这

种策略与SCHED_OTHER的策略类似,只不过SCHED_RR进程的优先级要

高得多。系统分配给SCHED_RR进程时间片,然后轮循运行这些进程,将时

间片用完的进程放入队列的末尾。

由于存在多种调度方式,Linux进程调度采用的是“有条件可剥夺”的调度方式。普通进程中采用的是SCHED_OTHER的时间片轮循方式,实时进程可以剥夺普通进程。如果普通进程在用户空间运行,则普通进程立即停止运行,将资源让给实时进程;如果普通进程运行在内核空间,需要等系统调用返回用户空间后方可剥夺资源。

(2)内存管理MMU

内存管理是多个进程间的内存共享策略。在Linux系统中,内存管理的主要概念是虚拟内存。

虚拟内存可以让进程拥有比实际物理内存更大的内存,可以是实际内存的很多倍。每个进程的虚拟内存有不同的地址空间,多个进程的虚拟内存不会冲突。

虚拟内存的分配策略是每个进程都可以公平地使用虚拟内存。虚拟内存的大小通常设置为物理内存的两倍。

(3)虚拟文件系统VFS

在Linux下支持多种文件系统,如ext、ext2、minix、umsdos、msdos、vfat、ntfs、proc、smb、ncp、iso9660、sysv、hpfs、affs等。目前Linux下最常用的文件格式是ext2和ext3。ext2文件系统用于固定文件系统和可活动文件系统,是ext文件系统的扩展。ext3文件系统是在ext2上增加日志功能后的扩展,它兼容ext2。两种文件系统之间可以互相转换,ext2不用格式化就可以转换为ext3文件系统,而ext3文件系统转换为ext2文件系统也不会丢失数据。

(4)网络接口

Linux 是在Internet 飞速发展的时期成长起来的,所以Linux 支持多种网络接口和协议。网络接口分为网络协议和驱动程序,网络协议是一种网络传输的通信标准,而网络驱动则是对硬件设备的驱动程序。Linux 支持的网络设备多种多样,几乎目前所有网络设备都有驱动程序。

(5)进程间通信

Linux 操作系统支持多进程,进程之间需要进行数据的交流才能完成控制、协同工作等功能,Linux 的进程间通信是从UNIX 系统继承过来的。Linux 下的进程间通信方式主要有管道方式、信号方式、消息队列方式、共享内存和套接字等方法

1.4.2 Linux 的文件结构

与Windows 下的文件组织结构不同,Linux 不使用磁盘分区符号来访问文件系统,而是将整个文件系统表示成树状的结构,Linux 系统每增加一个文件系统都会将其加入到这个树中。

操作系统文件结构的开始,只有一个单独的顶级目录结构,叫做根目录。所有一切都从“根”开始,用“/”代表,并且延伸到子目录。DOS/Windows 下文件系统按照磁盘分区的概念分类,目录都存于分区上。Linux

则通过“挂接”的方式把所有分区都放置在“根”下

各个目录里。一个Linux 系统的文件结构如图1.1所

示。 不同的Linux 发行版本的目录结构和具体的实

现功能存在一些细微的差别。但是主要的功能都是一

致的。一些常用目录的作用如下:

? /etc :包括绝大多数Linux 系统引导所需要

的配置文件,系统引导时读取配置文件,

按照配置文件的选项进行不同情况的启

动,例如fstab 、host.conf 等。

? /lib :包含C 编译程序需要的函数库,是

一组二进制文件,例如glibc 等。

图1.1 Linux 文件系统

?/usr:包括所有其他内容,如src、local。Linux的内核就在/usr/src中。其下

有子目录/bin,存放所有安装语言的命令,如gcc、perl等。

?/var:包含系统定义表,以便在系统运行改变时可以只备份该目录,如cache。

?/tmp:用于临时性的存储。

?/bin:大多数命令存放在这里。

?/home:主要存放用户账号,并且可以支持ftp的用户管理。系统管理员增加

用户时,系统在home目录下创建与用户同名的目录,此目录下一般默认有

Desktop目录。

?/dev:这个目录下存放一种设备文件的特殊文件,如fd0、had等。

?/mnt:在Linux系统中,它是专门给外挂的文件系统使用的,里面有两个文

件cdrom、floopy,登录光驱、软驱时要用到。

刚开始使用Linux的人比较容易混淆的是Linux下使用斜杠“/”,而在DOS/Windows下使用的是反斜杠“\”。例如在Linux中,由于从UNIX集成的关系,路径用“/usr/src/Linux”表示,而在Windows下则用“\usr\src\Linux”表示。在Linux 下更加普遍的问题是大小写敏感,这样字母的大小写十分重要,例如文件Hello.c和文件hello.c在Linux下不是一个文件,而在Windows下则表示同一个文件。

1.5 GNU通用公共许可证

导致Linux系统迅速发展的重要原因之一,是因为Linux系统遵循GNU通用公共版权协议。实际上,Linux系统中绝大多数系统工具和应用软件都是GNU的。

1. 什么是GNU

简单地说,GNU是一种自由软件体系。

1984年,自由软件的积极倡导者、自由软件基金会的董事长Richard M.Stallman (RMS)组织成立了一个完全基于自由软件的软件体系GNU,并拟定了一份通用公共版权协议。

GNU的创始人Stal1man认为UNIX虽然不是最好的操作系统,但至少不会太差,而他自信有能力把UNIX不足的地方加以改进,使它成为一个优良的操作系统。这就

是同UNIX兼容的、名为GNU的操作系统。

开发这个系统的目的,就是为了让所有的计算机用户都可以自由地使用这个系统和免费获得其源代码,并且可以自由复制。当然GNU也拥有自己的版权申明,那就是用户获得GNU软件后,既可以自由使用和修改,也可以散布GNU软件,但是必须让下一个用户也有获得源代码的权利。规定是为了防止有些人或公司将GNU软件稍加修改就去申请版权,将其据为己有,其目的是要让GNU软件永远是自由和公开的。

目前,GNU目前已经推出的软件主要有功能强大的集成编辑环境—Emacs、性能优异的多平台多语言编译器以及其他几十种软件。人们已经很熟悉的一些软件如BIND、Pd、Apache、TCP/IP等实际上都是自由软件的经典之作,现在又有了Netscape 的加盟。

2. Linux系统与GNU的关系

Linux不仅是一个理想主义者,而且他又非常讲求实际。1993年,Linux系统的第一个版本问世的时候,是按完全自由扩散版权进行扩散的。它要求所有的源代码必须公开,而且任何人均不得从Linux交易中获利。然而半年以后,他开始意识到这种纯粹的自由软件的理想对于Linux的扩散和发展来说实际上是一种障碍,因为它限制了Linux系统以磁盘复制或者CD-ROM等媒体形式进行扩散的可能,也限制了一些商业公司参与Linux系统的进一步开发并提供技术支持的良好愿望。于是,Linux先生决定转向GPL版权。

第二章Linux与其他操作系统的比较

2.1 Linux与UNIX的异同

Linux是UNIX操作系统的一个克隆系统,没有UNIX就没有Linux。但是,Linux 和传统的UNIX有很大的不同,两者之间的最大区别是关于版权方面的:Linux是开放源代码的自由软件,而UNIX是对源代码实行知识产权保护的传统商业软件。两者之间还存在如下的区别:

?UNIX操作系统大多数是与硬件配套的,操作系统与硬件进行了绑定;而

Linux则可运行在多种硬件平台上。

?UNIX操作系统是一种商业软件(授权费大约为5万美元);而Linux操作

提供则是一种自由软件,是免费的,并且公开源代码。

?UNIX的历史要比Linux悠久,但是Linux操作系统由于吸取了其他操作系统

的经验,其设计思想虽然源于UNIX但是要优于UNIX。

?虽然UNIX和Linux都是操作系统的名称,但UNIX除了是一种操作系统的

名称外,作为商标,它归SCO所有。

?Linux的商业化版本有Red Hat Linux、SuSe Linux、slakeware Linux、国内的

红旗Linux等,还有Turbo Linux;UNIX主要有Sun的Solaris、IBM的AIX,HP的HP-UX,以及基于x86平台的SCO UNIX/UNIXware。

?Linux操作系统的内核是免费的;而UNIX的内核并不公开。

?在对硬件的要求上,Linux操作系统要比UNIX要求低,并且没有UNIX对

硬件要求的那么苛刻;在对系统的安装难易度上,Linux比UNIX容易得多;

在使用上,Linux相对没有UNIX那么复杂。

总体来说,Linux操作系统无论在外观上还是在性能上都与UNIX相同或者比UNIX更好,但是Linux操作系统不同于UNIX的源代码。在功能上,Linux仿制了UNIX的一部分,与UNIX的System V和BSD UNIX相兼容。在UNIX上可以运行

centos操作系统简介

centos操作系统简介 CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。CentOS,我们有很多人叫它社区企业操作系统,不管你怎么叫它,它都是linux的一个发行版本。CentOS并不是全新的linux发行版,倘若一说到RedHat这个大名,大家似乎都听过,在RedHat家族中有企业版的产品,它是Red Hat Enterprise Linux(以下称之为RHEL),CentOS正是这个RHEL的克隆版本,RHEL是很多企业采用的linux发行版本,需要向RedHat付费才可以使用,并能得到付过费用的服务和技术支持和版本升级。这个CentOS可以像REHL一样的构筑linux系统环境,但不需要向RedHat付任何的费用,同样也得不到任何有偿技术支持和升级服务。 CentOS计划是在2003年红帽决定不再提供免费的技术支持及产品认证之后的部份"红帽重建者"(Red Hat rebuilders)之一。 CentOS和Linueox、组装Linux (White box Linux)、Tao Linux 、X/OS Linux,及科学Linux (Scientific Linux)等都以红帽所发布的源代码原件重建Red Hat Enterprise Linux的翻版,并修正了已经发现了的redhat的bug。 CentOS是"Caos Linux"独立计划的一个分枝,在Lawrence Berkeley 国家实验室担任管理员与程序设计师的Kurtzer表示。但后来Caos基金会最受欢迎的计划变成是RHEL 的重建。 历史 Red Hat公司的产品中,有RedHat Linux(如Redhat8,9)和针对企业发行的版本Red Hat Enterprise Linux,都能够通过网络FTP免费的获得并使用,但是在2003年的

献给初学者:谈谈如何学习Linux操作系统

献给初学者:谈谈如何学习Linux操作系统 一、选择适合自己的linux发行版 谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是 有一点是可以肯定的,linux正在变得越来越流行,面对这么多的Linux发行版,打算从其他系统转到linux系统来的初学者可能会感到困惑,即便是忠实的 Linux用户也没有时间和精力去挨个尝试,因此初学者在学习linux的之前,需 要有一个明确的方向,选择一个适合自己的系统开始学习linux至关重要!下面 我们就分类介绍。 1.1初学者入门首选-redhat系列 在学习redhat系列linux之前,首先要了解以下redhatlinux各个发行版本之 间的关系。 1.RedHatLinux RedHatLinux是redhat最早发行的个人版本的linux,其1.0版本于1994年11月3日发行。虽然其历史不及其它linux发行版本悠久,但比起很多的Linux 发行套件,RedHat的历史悠久得多。自从RedHat9.0版本发布后,RedHat公司就不再开发桌面版的Linux发行套件,RedHatLinux停止了开发,而将全部 力量集中在服务器版的开发上,也就是RedHatEnterpriseLinux版。2004年4 月30日,RedHat公司正式停止对RedHat9.0版本的支持,标志著RedHatLinux的正式完结。原本的桌面版RedHatLinux发行套件则与来自开源 社区的Fedora进行合并,成为FedoraCore发行版本。 目前RedHat分为两个系列:由RedHat公司提供收费技术支持和更新的RedHatEnterpriseLinux,以及由社区开发的免费的FedoraCore。 2.FedoraCore FedoraCore(缩写为FC)被红帽公司定位为新技术的实验场地,许多新的技 术都会在FC中检验,如果稳定的话红帽公司则会考虑加入RedHatEnterpriseLinux中。 FedoraCore1发布于2003年年末,而FC的定位便是桌面用户。FC提供了 最新的软件包,同时,它的版本更新周期也非常短,仅6个月。由于版本更新 频繁,性能和稳定性得不到保证,因此,一般在服务器上不推荐采用FedoraCore。 其实可以这么认为,Fedora就是RedHat发行RedHat企业版linux的一个 实验版本,以用户做测试,为RedHat企业版发布奠定基础。 3.RedHatEnterpriseLinux RedHatEnterpriseLinux(缩写为RHEL,RedHat的企业版)。RedHat现在主要做服务器版的linux开发,在版本上注重了性能和稳定性以及对硬件的支持。由于企业版操作系统的开发周期较长,注重性能、稳定性和服务端软件支持, 因此版本更新相对较缓慢。

习题答案-Linux操作系统原理实践教程-崔继-清华大学出版社

第1章 1、在VMwane中安装CentOS 7的基本步骤有哪些? (1)新建虚拟机 (2)虚拟机设置 (3)启动虚拟机 (4)设置安装信息,包括软件选择,安装位置,分区等 (5)完成最后安装 2、安装Linux时可以设置哪些分区?有哪些分区是必须的? 能够设置的分区可以根据安装系统时提示,主要包括:/,/boot,swap,/home,/opt 等等;其中/(根)分区是必须的。 第2章 1、针对Linux 系统启动运行,有哪些运行目标?每个运行目标的含义是什么? CentOS 从7.0 开始使用systemd 代替init 作为系统启动和服务器守护进程的管理器,负责在系统启动或运行时,激活系统资源,管理服务器进程。systemd 用目标(target)替代了运行级别的概念,提供了更大的灵活性,比如可以继承一个已有的目标,并添加其他服务来创建自己的目标。CentOS 7.0 之前的运行级别和systemd 目标之间的对应关系如下表所示。 2、Linux 有几种关机方法,每种关机操作有何异同? 关闭系统的命令有: shutdown(最安全的方式),halt,init,telinit,poweroff,reboot,具体含义可以参考

帮助手册页。 第3章 more、less、cat、wc 命令有什么区别? 这几个命令可用于对文本文件的处理显示,主要区别在:more命令以分页(一次一屏)显示文本信息;less类似于more,但增加了回滚功能;cat本意是连接文件并在标准输出上输出,也就是将文件一次全部输出;wc用于统计输出文件中的行数、单词数、字节数等。 第4章 (1)发出命令显示行号。 底端命令方式下 :set nu (2)保存到文件AboutLinux,并不退出。 底端命令方式下 :w AboutLinux (3)删除一句“It is this kernel that forms the base around which a Linux operating system is developed.”。 在命令方式下,先把光标移到It处,再按d$。(从当前光标处到行末的所有字符删除)(4)查找单词“Finland”。 命令方式下输入/Finland,回车后会在第一个Finland处停下来。 (5)把第一段的“Finland”单词后的内容换行,使其变成三段内容。 插入方式下,将光标移到Finland后,按回车键即可。(vi的换行标志是回车符) (6)将第二段的内容复制到文档的最后。 命令方式下:先用yy命令,然后移到文档最后,再按p键。 (7)删除第三段的内容。 命令方式下,光标移到第三段,用dd命令。(注,这里的段实际上是第3行。) (8)恢复被删除的一段内容。 命令方式下,用u命令。 (9)查找所有的“Minix”单词,并全部改为“MINIX”。 底端命令方式下,:1,$s/Minix/MINIX/g (10)不保存修改,退出vi。 底端命令方式下,:q! (11)使用vi再次打开文件AboutLinux,在第二段后插入“He began his work in 1991 when he released version 0.02 and worked steadily until 1994 when version 1.0 of the Linux Kernel was released.”。 shell命令提示符下输入:vi AboutLinux(打开保存的文件)

Linux操作系统的安全性

Linux操作系统的安全性 Linux操作系统的安全性是有目共睹的,相比Windows操作系统,到底Linux有哪些过人之处?这里我们就抛砖引玉,挑选三点重要的特点给大家说明,为什么说Linux操作系统安全性有其他系统无可比拟的优越性。 1、用户/文件权限的划分 用户权限在Windows操作系统里也不陌生,但是Linux操作系统的用户权限和文件权限要比Windows操作系统里严格有效。比较明显的一个案例就是,即便是你在Windows操作系统里设置了多用户,但是不同的用户之间通过一定的方式,还是能够互访文件的,这就失去了权限的意义。 LINUX文件权限针对的对象分三类(互斥的关系): 1. user(文件的拥有者) 2. group(文件拥有者所在的组,但不包括user) 3. other(其它用户,即user和group以外的) LINUX用一个3位二进制数对应着文件的3种权限(1表示有该权限,0表示无): 第1位读r 100 4 第2位写w 010 2 第3位执行x 001 1 查看权限 #ls -l 第一列,一共10位(drwxrwxrwx),就代表了文件的权限: 1)第一个d代表是一个目录,如果显示“-”,则说明不是一个目录 2)2-4代表user的权限 3)5-7代表group的权限 4)8-10代表other的权限 对于后9位: r 代表可读(read),其值是4 w 代表可写(write),其值是2 x 代表可执行(execute),其值是1 - 代表没有相应权限,其值是0 修改文件权限

# chmod [ugoa][+-=][rwx] 文件名 1)用户 u 代表user g 代表group o 代表other a 代表全部的人,也就是包括u,g和o 2)行动 + 表示添加权限 - 表示删除权限 = 表示使之成为唯一的权限 3)权限 rwx也可以用数字表示法,不过很麻烦要自己算,比如rw=6 常见权限 -rw——(600)只有所有者才有读和写的权限 -rw-r——r——(644)只有所有者才有读和写的权限,组群和其他人只有读的权限-rwx——(700)只有所有者才有读,写,执行的权限 -rwxr-xr-x (755)只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限 -rwx——x——x (711)只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限 -rw-rw-rw- (666)每个人都有读写的权限 -rwxrwxrwx (777)每个人都有读写和执行的权限,最大权限。 也许你会说,Windows操作系统里不也内置了防火墙,Linux系统内置防火墙有什么特殊之处。其实,iptables不仅仅是一个防火墙,而且即便是一个防火墙,它与我们常见的Windows操作系统下的防火墙相比,更加的专业性能更强大。 iptables是与Linux内核集成的IP信息包过滤系统,如果Linux系统连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该系统有利于在Linux系统上更好地控制IP 信息包过滤和防火墙配置。 netfilter/iptables IP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。

浅谈操作系统(操作系统论文)

浅谈操作系统 摘要 随着科学技术的不断发展与创新,计算机得到了广泛的普及和应用,同时计算机的操作系统也在不断的发展和完善当中。21世纪是信息的时代,最重要的体现就是计算机技术的广泛应用及发展,操作系统作为计算机系统的基础是管理计算机软硬件资源、控制程序运行、改善人机界面和为应用软件提供支持的一种系统,本文主要是通过对操作系统及其发展情况来进行分析,了解计算机操作系统发展的基本情况,阐述未来操作系统的发展趋势,从而促进计算机技术的不断的进步。 关键词:计算机;操作系统;发展; 一、计算机操作系统的发展史 操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。操作系统所处位置作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。 原始的操作系统主要是从批次模式开始,然后逐渐的发展到分时机制的模式,后来由于多处理器时代的到来,整个操作系统也逐渐有多处理器的协调功能,继而出现了分布式的系统。操作系统主要发展可分为四个阶段:纯手工操作阶段、批次处理阶段、多道程序系统阶

段及现代操作系统阶段。整个系统的发展主要面临着技术上的难题,主要体现的是计算机硬件技术的发展限制了软件的发展和操作系统的不稳定性。 二、计算机中常用的操作系统 计算机操作系统作为计算机系统的基础是管理电脑软硬件系统的程序。计算机系统的种类多,经常是通过应用领域来划分的,其中应用程序主要是包括桌面、服务器、主机以及嵌入几个应用领域的操作系统。常用的操作系统分类如下。 1.Windows系统 Windows系统作为计算机内较为常见的操作系统,在人们的日常生活和学习中都应用的较为普遍,Windows系统作为现代最为流行的操作系统,其在技术方面也是非常成熟的。目前最新版本的Windows 操作系统为Windows10。 2.UNIX系统 UNIX系统有自身较为统一的实施标准和认证规范,并且利用该规范,还可以对UNXI系统进行程序的移植,并且促进了UNIX的发展及应用程序的开发,UNXI已经开始作为大型机器、网络服务器及工作中的主流操作系统,并且其自身的发展还在一定的程度上推动了Linux等开源UNIX类操作系统的发展。 3.Linux系统 Linux系统是在UNIX的基础上进行发展的,其开源模式的软件环境极其价值越来越受到社会,并且其软件的运行环境及其价值越来

linux操作系统安全

贵州大学实验报告 学院:计信学院专业:信息安全班级:信息101

2、FTP服务器的安全配置 FTP为文件传输协议,主要用于网络间的文件传输。FTP服务器的特点是采用双端口工作方式,通常FTP服务器开放21端口与客户端进行FTP控制命令传输,这称为FTP的数据连接 实 验仪器linux操作系统中的安全配置:安装red hat linux9.0操作系统的计算机 linux中Web、FTP服务器的安全配置:一台安装Windows XP/Server 2003操作系统的计算机,磁盘格式配置为NTFS,预装MBSA工具 实验步骤linux操作系统中的安全配置 一、账户和安全口令 1、查看和添加账户 (1)使用系统管理员账户root登录文本模式,输入下面的命令行:使用useradd命令新建名为myusername的新账户 (2)使用cat命令查看账户列表,输入下列命令: [root@localhost root]# cat /etc/shadow 得出列表最后的信息为:

用如下命令切换到myusername账户,然后在使用cat命令查看账户列表,如果刚才的账户添加成功,那么普通用户myusername不能查看该文件的权限,提示如下: 2、添加和更改口令 切换到root用户,添加myusername的口令: [root@localhost root]# passwd myusername 3、设置账户管理 输入命令行[root@localhost root]#chage –m 0 –M 90 –E 0 –W 10 myusername,此命

令强制用户myusername首次登陆时必须更改口令,同时还强制该用户以后每90天更改一次口令,并提前10天提示 4、账户禁用于恢复 (1)输入下列命令行,以管理员身份锁定新建的myusername账户,并出现锁定成功的提示: 此刻如果使用su切换到myusername账户,则出现以下提示: 表明锁定成功 (2)输入以下命令行,检查用户nyusername的当前状态: (3)如果要将锁定账户解锁,输入以下命令行,并出现相应的解锁提示: 5、建立用户组,将指定的用户添加到用户组中 (1)输入以下命令,建立名为mygroup的用户组: (2)如果要修改用户组的名称,使用如下命令行: 将新建的用户组更名为mygroup1 (3)输入以下命令,将用户myusername加入到新建的组mygroup1中并显示提示:

linux操作系统发展现状

Linux 操作系统发展现状 Linux操作系统发展迅速,全球Top500超级计算发布数据显示89.2%的超级计算机运行在Linux操作系统之上;桌面操作系统市场份额虽然不高,但也在逐年扩大;国际大公司Intel、Google、IBM等都在Linux操作系统上加大研发投入,为Linux 操作系统长远发展带来充足后劲。国内操作系统研发组织机构、厂商也都相应加大投入,以缩小与国际Linux 厂商技术之间的差距。 但是Linux 的发展仍然面临着兼容性差,软件缺乏,以及面临版本众多导致Linux 操作系统分裂等问题。掌握核心技术,解决Linux 当前面临的关键发展问题是当务之急。 一国内Linux 操作系统发展现状 国内目前涉足Linux操作系统研发除学校、研发机构外,主要Linux 发行版包括红旗、中标、共创、新华、拓林思等,均有桌面和服务器两个版本; 国内各发行版均基于国际社区版本发展而来,基于国际社区成果,在界面定制上做了一些工作,并没有掌握核心技术,且与国际Linux 操作系统发行版之间存在一定的技术差距,缺少技术积累,面临Linux发展后劲不足等问题。 二国外Linux 操作系统发展现状 国外主要发行版包括redhat、ubuntu、Suse 等,均提供桌面

和服务器两个不同版本。服务器领域Linux 操作系统发展比较成熟,桌面发展比较缓慢,嵌入式领域发展较快。 Redhat RHEL是目前Linux服务器产品的标杆,在国内和国际上都占据着主要的Linux 服务器市场份额。RHEL 产品功能全面,产品认证齐全,用户的接受度比较高。RHEL 主要依靠技术服务和产品维护获取盈利。Redhat自9.0以后,不再发布桌面版,而是把这个项目与开源社区合作,于是就有了Fedora这个Linux发行版。目前Fedora对于Redhat的作用主要是为RHEL提供开发的基础。Fedora 的界面与操作系统与RHEL 非常相似、用户会感觉非常熟悉;另外对于新技术,fedora一直快速引入;并且fedora 一直坚持绝对开源的原则。而因为Redhat 在Linux的地位和影响力,拥有很多坚定的爱好者使用。 Suse SLES被Novell收购以后,产品的竞争力获得了很大的提升。SLES最大的优势在于应用解决方案比较丰富。SLES同样依靠技术服务和产品维护获取盈利。SUSE的yast2配置工具一直是业内公认的非常完善的安装及系统工具,能够进行系统大多数的配置功能;另外,SUSE 与 67 微软的合作,也使得SUSE在与Windows的互操作性方面具

2016操作系统原理在线作业

窗体顶端 您的本次作业分数为:100分单选题 1.【第01~04章】以下描述中,()并不是多线程系统的特长。 A 利用线程并行地执行矩阵乘法运算。 B web服务器利用线程请求http服务 C 键盘驱动程序为每一个正在运行的应用配备一个线程,用来响应相应的键盘输入。 D 基于GUI的debugger用不同线程处理用户的输入、计算、跟踪等操作。 正确答案:C 单选题 2.【第01~04章】现代操作系统的基本特征是()、资源共享和异步性。 A 多道程序设计 B 中断处理 C 实现分时与实时处理 D 程序的并发执行 正确答案:D 单选题 3.【第01~04章】操作系统的进程管理模块并不负责()。 A 进程的创建和删除 B 提供进程通信机制 C 实现I/O设备的调度 D 通过共享内存实现进程间调度。 正确答案:C 单选题 4.【第01~04章】下列选择中,()不是操作系统必须要解决的问题。 A 提供保护和安全机制 B 管理目录和文件 C 提供应用程序接口

D 提供C++语言编译器 正确答案:D 单选题 5.【第01~04章】用户在程序中试图读存放在硬盘中某文件的第10逻辑块,使用操作系统提供的接口是()。 A 进程 B 系统调用 C 库函数 D 图形用户接口 正确答案:B 单选题 6.【第01~04章】操作系统的管理部分负责对进程进行调度。 A 主存储器 B 控制器 C 运算器 D 处理机 正确答案:D 单选题 7.【第01~04章】下面关于进程的叙述不正确的是()。 A 进程申请CPU得不到满足时,其状态变为就绪状态。 B 在单CPU系统中,任一时刻有一个进程处于运行状态。 C 优先级是进行进程调度的重要依据,一旦确定不能改变。 D 进程获得处理机而运行是通过调度而实现的。 正确答案:C 单选题 8.【第01~04章】下列选项中,操作系统提供给应用程序的接口是()。 A 系统调用 B 中断 C 库函数

浅谈我对计算机操作系统的认识

浅谈我对计算机操作系统的认识 朱雪松 L11214018 信息管理与信息系统 计算机的发展将趋向超高速、超小型、并行处理和智能化。自从1944年世界上第一台电子计算机诞生以来,计算机技术迅猛发展,传统计算机的性能受到挑战,开始从基本原理上寻找计算机发展的突破口,新型计算机的研发应运而生。未来量子、光子和分子计算机将具有感知、思考、判断、学习以及一定的自然语言能力,使计算机进人人工智能时代。这种新型计算机将推动新一轮计算技术革命,对人类社会的发展产生深远的影响。 一.什么是操作系统 操作系统(英语:Operating System,简称OS)是一管理电脑硬件与电脑软件资源的程序,同时也是计算机系统的核心与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网上与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作接口。 操作系统的型态非常多样,不同机器安装的操作系统可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对它涵盖范畴的定义也不尽一致,例如有些操作系统集成了图形化用户界面,而有些仅使用文字接口,而将图形接口视为一种非必要的应用程序. 二.操作系统的历史 (一)无操作系统的计算机系统 1.人工操作方式 从第一台计算机诞生(1945年)到20世纪50年代中期的计算机,属于第一代计算机,这一时期的计算机操作采用人工操作的方式直接使用计算机硬件系统,这种方式的主要特征是用户独占主机,CPU等待人工操作。可见这种方式严重降低了计算机资源的利用率,造成了人机矛盾。 2.脱机输入/输出方式 为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,20世纪50年代末出现了这种技术。该技术是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的数据输入磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速的调入内存。 (二)单道批处理系统和多道批处理系统 1.单道批处理系统的处理过程及特征 上个世纪50年代中期发明了晶体管,为了充分利用晶体管,减少空闲时间,于是就出现了单道批处理,其自动处理过程是:首先,由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业。当该作业处理完时,把控制权还给监督程序,再由监督程序把磁盘上的第二个作业调入内存。其主要特征为自动,顺序,单道。其主要矛盾为主机和外设的矛盾。

西安交大网络教育秋操作系统原理在线作业习题答案100分

《操作系统原理》习题答案 一、单项选择题 1、(信号量)是一种只能进行P、V操作的特殊变量。 2、一个进程是(PCB结构与程序和数据的组合)。 3、操作系统中,当(时间片完),进程从执行状态转变为就绪状态。 4,设有三个作业J1,J2,J3同时到达,运行时间分别为T1,T2,T3,且T1≤T2 ≤ T3。若它们在一台处理机上按单道运行,采用短作业优先算法,则平均周转时间为(T1+ 2/3T2 + 1/3T3)。 5、在操作系统中,死锁出现是指(若干进程因竞争资源而无限等待其他进程释放已占有的资源) 6.若系统有三个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是( 10 ) 。 7、预防死锁的论述中,(可以通过破坏产生死锁的四个必要条件之一或其中几个的方法,来预防发生死锁)条是正确的论述。 8、关于死锁与不安全状态的关系,下列描述正确的有(死锁是一种不安全状态): 9、银行家算法是一种(死锁避免)算法。 10、以下哪种算法不属于多个分区的可变分区存储管理方式的主存分配算法(最后适应分配算法) 11、在固定分区管理方式中,处理器执行作业时,对每条指令中的地址要求满足(下限地址≤绝对地址≤上限地址) 12、以下叙述中,不正确的是(采用动态和静态重定位的系统都支持“程序浮动”) 13、在页式存储管理中,假定地址用m个二进制位表示,其中页内地址部分占用了n个二进制位,那么最大的作业允许有(2(m-n) )个页面。 14、关于一个分区的存储管理,以下叙述不正确的是(一个分区的存储管理中,必须采用动态重定位的方式进行地址转换) 15、下面哪种算法不属于页式虚拟存储管理中的页面调度算法(优先数调度算法) 16、缺页中断率与哪个因素无关(作业的逻辑地址) 17、很好地解决了“零头”问题的存储管理方法是(页式存储管理) 18、在存储管理中,(可变分区管理)可与覆盖技术配合. 19、虚拟存储器的最大容量(由计算机的地址结构决定) 20、下述(先进先出)页面淘汰算法会产生BELADY现象. 21、计算机系统的二级存储包括(主存储器和辅助存储器) 22、以下关于主存空间的说法中正确的是(操作系统与硬件的接口信息、操作系统的管理信息和程序等存放在主存储器的系统区) 23、联想存储器在计算机系统中是用于(地址变换) 24、以下有关可变分区管理中采用的主存分配算法说法中错误的是(最佳适应算法是最好的算法,但后过的较大作业很难得到满足)

UnixLinux系统的安全性概述

计算机网络安全技术题目:Unix/linux系统的安全性概述 班级:09 级达内班 组长:朱彦文学号:09700308 组员:冯鑫学号:09700310 组员:刘新亮学号:09700309 组员:梁小文学号:09700312 组员:龚占银学号:09700313 组员:高显飞学号:09700304 组员:陶志远学号:09700305 时间:2011年6月

目录 1、linux系统的介绍 (1) 2、服务安全管理 (1) 2.1、安全防护的主要内容 (1) 3、linux系统文件安全 (1) 3.1、文件相关权限的设置 (2) 3.2、SUID和SGID程序 (2) 4、用户访问安全 (2) 4.1、口令安全 (2) 4.2、登录安全 (3) 5、防火墙、IP伪装个代理服务器 (4) 5.1、什么是防火墙 (4) 5.2防火墙分类 (4) 6、服务器被侵入后的处理 (5) 7、日常安全注意事项 (5) 8、参考文献 (6)

Unix/linux系统的安全性概述 1、linux系统的介绍 Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux 来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。Linux,其安全性漏洞已经广为流传,黑客可以很容易地侵入。而网络服务器往往储存了大量的重要信息,或向大量用户提供重要服务;一旦遭到破坏,后果不堪设想。所以,网站建设者更需要认真对待有关安全方面的问题,以保证服务器的安全。 2、服务安全管理 2.1、安全防护的主要内容 对于网站管理人员而言,日常性的服务器安全保护主要包括四方面内容: 文件存取合法性:任何黑客的入侵行为的手段和目的都可以认为是非法存取文件,这些文件包括重要数据信息、主页页面 HTML文件等。这是计算机安全最重要的问题,一般说来,未被授权使用的用户进入系统,都是为了获取正当途径无法取得的资料或者进行破坏活动。良好的口令管理 (由系统管理员和用户双方配合 ),登录活动记录和报告,用户和网络活动的周期检查都是防止未授权存取的关键。 用户密码和用户文件安全性:这也是计算机安全的一个重要问题,具体操作上就是防止 已授权或未授权的用户相互存取相互的重要信息。文件系统查帐、su登录和报告、用户意识、加密都是防止泄密的关键。 防止用户拒绝系统的管理:这一方面的安全应由操作系统来完成。操作系统应该有能力 应付任何试图或可能对它产生破坏的用户操作,比较典型的例子是一个系统不应被一个有意 使用过多资源的用户损害 (例如导致系统崩溃 )。 防止丢失系统的完整性:这一方面与一个好系统管理员的实际工作 (例如定期地备份文件系统,系统崩溃后运行 fsck检查、修复文件系统,当有新用户时,检测该用户是否可能使系统崩溃的软件 )和保持一个可靠的操作系统有关 (即用户不能经常性地使系统崩溃 )。

Linux操作系统部分复习题答案

第一章 Linux系统简介 一、思考题 1.UNIX的大部分代码是用一种流行的程序设计语言编写的,该语言是什么? C语言 2.UNIX系统的特点有哪些? ·多任务 ·多用户 ·并行处理能力 ·设备无关性 ·工具 ·错误处理 ·强大的网络功能 ·开放性 3.什么是Linux?其创始人是谁? Linux是一个功能强大的操作系统,同时它也是一个自由软件,是免费的、源代码开放的、可以自由使用的UNIX兼容产品。其创始人是Linus 4.Linux操作系统的诞生、发展和成长过程始终依赖者的重要支柱都有哪些? ·UNIX操作系统 ·MINIX操作系统 ·GNU计划 ·POSIX标准 ·Internet 5.简述Linux系统的特点。 ·自由软件 ·良好的兼容性 ·多用户、多任务 ·良好的界面 ·丰富的网络功能 ·可靠地安全性、稳定性 ·支持多种平台 6.常见的Linux的发行版本有哪些? ·Red Hat Linux ·Caldera OpenLinux ·SuSE Linux ·TurboLinux ·红旗Linux ·中软Linux 二、选择题 1.Linux最初是以MINIX 操作系统为模板而开发出来的。 2.关于Linux内核版本的说法,下列选项中错误的是(C)。 A.表示为主版本号.次版本号.修正号B.1.2.3表示稳定的发行版 C.1.3.3表示稳定的发行版D.2.2.5表示对内核2.2的第5次修正(补充:次版本号为偶数的是稳定版本;为奇数的则是测试版本。)

3.Linux属于自由软件。 4.自由软件的含义是软件可以自由修改和发布。 5.一下不具有多任务性的操作系统是DOS 第二章 Linux系统入门 一、思考题 1.Linux系统有哪些运行级别?其含义是什么? 可用级别为0~6,其中0:关闭系统;6:重新启动,其他略。 2.Linux系统下经常使用的两种桌面环境是什么? GNOME和KDE 3.什么是X-Window系统?它有什么特点? 图形界面(X-Window)是在Linux操作系统中提供的图形化用户界面(GUI),其支持的视窗系统也称为X,它的特点有:它采用了“客户端-服务器”模式;它是一个跨平台的操作环境。 7.默认情况下,超级用户和普通用户的登录提示符分别是什么? # 和 $ 二、选择题 1.系统引导的过程一般包括如下的几步:①MBR中的引导装载程序启动。②用户登录。③Linux内核运行。④BIOS自检。正确的顺序是④①③②。 2.Linux中使用Ctrl+Alt+BackSpace 组合键可以关闭X-Window图形用户界面。 3.字符界面下使用init命令关机所用的参数是0 。(参数6是重新启动) 4.字符界面下使用shutdown命令重启计算机时所用的参数是–r 。 5.使用man命令调阅相关的帮助信息时,用于逐页地下翻的功能键是Space 。 第三章 shell与shell命令 一、思考题 1.shell的基本功能有哪些? 命令解释执行、文件名替换、输入/输出重定向、连同管道建立、系统环境设置和shell编程。 2.Linux系统中的主要目录有哪些? /:系统的根目录 /dev:系统的设备目录 /home:用户主目录 /root:root用户主目录 /boot:Linux的启动目录 /usr:用户级目录 3.工作目录及其父目录课分别用什么表示? . 和 .. 5.常用的shell环境变量有哪些? ·HOME:用户家目录的完全路径名 ·LOGNAME:登录用户名 ·IFS:命令行内部域分割符 ·PATH:由冒号分隔的目录路径名

Linux操作系统学习心得

Linux操作系统学习心得 这学期有幸学习了《嵌入式系统设计》这门课,在胡佳文老师的教导下深入了解了有关于嵌入式系统,ARM9,Linux系统等很多方面的知识,获益良多,在学习过程中自己也遇到了很多问题,同时受到了很大的启发,现在就本学期的学习谈谈自己的学习心得体会。 Linux操作系统这个名词记得在很早以前就听过,知道这是一个开放性很大的系统,源代码是直接公布在互联网上,很多计算机高手可以根据自己的需求来修改这个程序,同时它比较不易死机,在自己的印象中一直是一种高大上的系统,但是更深入的了解确是零,对于这个学期选这门公共选修课,很大一部分原因是怀着一颗要了解一种早就想知道的东西的心选的.当然我平时也喜欢玩点电脑什么的,只是停留在用别人设计好的现成的东西。 经过一个学期linux操作系统的学习,在老师在课堂对linux系统的介绍及通过网络的了解下,知道了linux原来是一种和windows差不多的电脑操作系统,windows是图形界面的,linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,linux也能显示图形界面,也有开始菜单、桌面、图标等。Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而linux与windows类似,也有命令方式,linux 启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外linux上也有很多的应用软件,安装运行了这些软件后,你就可以在linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 当然我们对linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。它的产生和需要花钱买得windows系统形成了对比,因为 linux 的核心是免费的,自由使用的,核心源代码是开放的.任何人都可以根据自己的喜好来编辑创作适合自己的操作系统,linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以linux操作系统有着广泛的应用空间。 而且在课上随着老师的讲解和自己动手查资料,慢慢的学习到了更深入的知识,知道了linux的安装:硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题。学习了linux系统的进入,关闭和重启。掌握了linux系统的硬件配置,如显卡,声卡,网卡等,并且通过对linux系统基本命令的学习,尤其是shell命令语言(亦称命令解释器),熟悉了系统的基本操作。当然在学习中发现英文学得好也是学好linux的关键。同时还了解了linux对应下的一些常用软件及这些软件的安装。因为linux在服务器中广泛的应用,于是我们进一步学习了linux下接入internet的WEB服务器的安装与配置方法。之后还了解了linux的网络安全,系统的安全,用户的安全等。 眼看这个学期Linux的课程已经告一段落了,在这段时间的学习如果要问我在这门课中学到了什么,我觉得是一种为学的方法,使我受益非浅。 首先每学一部分内容前必定有很多疑问,想要独立解开疑问,从网络上找资

操作系统原理-Linux下的内存分配与回收的管理

广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室2014年11月19日 学院计算机科学与 教育软件学院 年级/专 业/班 姓 名 学号 实验课 程名称 操作系统实验成绩 实验项目名称Linux下的内存分配与回收的管理 指导 老师 张艳玲 一、实验目的 在Linux环境下利用下列系统调用malloc(),free()编写一段程序实现内存分配与回收的管理。 二、实验器材 1、计算机一台。 2、Linux 三、实验内容 1.返回已分配给变量的内存地址; 2.返回释放后的内存地址; 3.释放已分配的内存空间后,返回释放内存后未使用内存的大小。 四、实验步骤、记录和结果 源代码有错,不能正常运行,使用纯C语言,修改正如下。 黄色底色的为新增代码新增注释为绿色底色 #include /* For _MAX_PATH definition */ #include //#include //#include #include //void main() int main() { // int *string; char *string; // string =(int*) malloc(10 ); string = (char*) malloc(sizeof(char)*10); if( string == NULL )

printf( "Insufficient memory available\n" ); else { printf( "Memory space allocated for path name\n" ); /*printf ("string=%d\n",string);*/ // cout<<"string="< #include int main(){ char *string = (char*) malloc(sizeof(char)*10);

南开18秋学期(1703)《操作系统原理》在线作业

(单选题) 1: 当进程执行中需要等待从磁盘上读取数据时,进程的状态将()。 A: 从就绪变为运行态 B: 从运行变为就绪态 C: 从阻塞变为就绪态 D: 从运行变为阻塞态 正确答案: (单选题) 2: 在操作系统分类中对于可靠性和安全性要求较高的是()。 A: 批处理系统 B: 分时处理系统 C: 实时处理系统 D: 个人机操作系统 正确答案: (单选题) 3: 在设备管理中引入I/O缓冲机制是为了缓和()之间的速度不匹配问题。A: 内存与处理器 B: 内存与外设 C: 处理器与外设 正确答案: (单选题) 4: 在页式存储管理中,其虚地址存储空间是() A: 一维的 B: 二维的 C: 三维的 正确答案: (单选题) 5: UNIX文件系统采用( )逻辑结构对文件进行管理。 A: 网状文件 B: 记录式文件 C: 索引文件 D: 3流式文件 正确答案: (单选题) 6: 在文件系统中,使用( )信息实现对文件的管理。 A: 文件存储位置 B: 文件目录 C: 文件内容 正确答案: (单选题) 7: 进程所具有的()及并发性是两个很重要的属性。 A: 动态性 B: 易用性 C: 顺序性 D: 静态性 正确答案: (单选题) 8: 所谓进程调度,其调度的对象和任务分别是( )。 A: 进程,从就绪队列中按一定的调度策略选择一个进程占用CPU B: 数据,将程序中使用的数据调入内存 C: 指令,将指令从外存储空间调入内存 正确答案: (单选题) 9: 计算机系统采用多道并发技术将会() A: 缩短每个程序的执行时间 B: 使系统效率随着并行道数的增加成正比增加 C: 使用设备时不发生冲突 D: 提高了系统的整体执行效率 正确答案: (单选题) 10: 在系统中增加cache可以缓解()之间的速度不匹配性。 A: 硬盘与内存

浅谈linux操作系统的安全

毕业设计(论文)题目: 浅谈linux操作系统的安全

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

相关主题
文本预览
相关文档 最新文档