第一篇:操作系统思考题
习题一
2.计算机系统的资源可分成哪几类?试举例说明。
答:软件和硬件。软件包括系统软件和应用软件;硬件CPU、内存条、外部I/O设备,以及系统总线。3.什么是操作系统?计算机系统配置操作系统的主要目标是什么?
答:操作系统是管理系统资源、控制程序执行、发送人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便而有效地使用计算机提供良好运行环境的最基本的系统软件。A.方便用户使用;B.扩充机器功能;C.管理各类资源;D.提高系统效率;E.构筑开放环境。4.操作系统如何实现计算与操作过程的自动化?
答:大致可以把操作系统分为以下几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。其中批处理操作系统能按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。又可分为批处理单道系统和批处理多道系统。单道系统每次只有一个作业装入计算机系统的主存储器运行,多个作业可自动、顺序地被装入运行。批处理多道系统则允许多个作业同时装入主存储器,中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需的外围设备,这样可以充分利用计算机系统的资源,缩短作业时间,提高系统吞吐率。
5.操作系统要为用户提供哪些基本的和共性的服务?
答:操作系统为用户提供的基本和共性服务有:1)创建程序和执行程序。2)数据I/O和信息存取。3)通信服务。4)差错检测和处理。为了保证自身高效率、高质量地工作,使得多个应用程序能够有效地共享系统资源,提高系统效率,操作系统还具备其他一些功能:资源分配、统计、保护等。
6.试述操作系统所提供的各种用户接口。答:操作系统通过程序接口和操作接口将其服务和功能提供给用户。程序接口由一组系统调用组成,在应用程序中使用“系统调用”可获得操作系统的低层服务,访问或使用系统管理的各种软硬件资源,是操作系统对外提供服务和功能的手段;操作接口由一组命令和(或)作业控制语言组成,是操作系统为用户提供的组织和控制作业执行的手段。7.什么是系统调用?可分为哪些类型? 答:操作系统为了达到为应用程序的运行提供良好的环境,系统内核提供了一系列具备预定功能的内核函数,这一组特殊接口被称为系统调用。操作系统所提供的系统调用按功能可分为六类:1)进程管理。2)文件操作。3)设备管理。4)主存管理。5)进程通信。6)信息维护。
8.什么是实用程序?可分为哪些类型?
答:实用程序又称支撑程序,是为应用程序的开发、调试、执行和维护解决共性问题或执行公共操作提供的一组程序。按功能可分为:1)文件管理。2)语言支持。3)状态修改。4)支持程序执行。5)通信等。9.试述系统调用的实现原理。
答:操作系统实现系统调用功能的机制称为陷阱或异常处理机制。其实现原理是:首先编写系统调用函数并且设计系统调用入口地址表,每个入口地址都指向一个系统调用的内核函数,有些还包含系统调用自带参数的个数。然后开辟现场保护区,用以保存发生系统调用时的处理器现场。
10.试述系统调用与过程调用之间的主要区别。
答:在程序执行系统调用或过程调用中两者的订要区别是:1)调用的形式和实现的方式不同。2)被调用的代码的位置不同。3)提供方式不同。11.试述API、库函数与系统调用之间的关系。
答:API是由同名的封装把系统调用封装成应用程序能够直接使用的应用接口。所以,一个库函数就是一种API,一个API的实现可能会用到一个系统调用或多个系统调用,也可能若干API封装相同的系统调用,即使完全不使用系统调用,也不存在任何问题。12.试解释脱机I/O与假脱机I/O。
答:1)脱机输入输出方式(Off-Line I/O)是为了解决人机矛盾CPU和I/O设备之间速度不匹配而提出的。它减少了CPU的空闲等待时间,提高了I/O速度。具体内容是将用户程序和数据在一台外围机的控制下,预先从低速输入设备到磁带上,当CPU需要这些程序和数据时,在直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU等待输入的时间,这就是脱机输入技术;当程序运行完毕或告一段落,CPU需要时,无需直接把计算结果送至低速输出设备,而是高速把结果输出到磁带上,然后在外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就是脱机输出技术。2)若这种输入输出操作在主机控制下进行,则称之为联机输入输出方式。13.为什么对作业进行批处理可以提高系统效率?
答:多道程序系统是利用CPU的等待时间来运行其它程序。
14.举例说明计算机体系结构不断改进是操作系统发展的主要动力之一。
答:计算机体系的基本结构遵循冯.诺依曼体系结构,主要由运算器、控制器、存储器、输入设备、输出设备五部分组成。随着CPU不断等级,存储器的容量不断增大,计算机体系结构不断的改进,从而,要求计算机的操作系统不断的更新,由原来的DOS到后来的Windows 98,Windows 2000,Windows XP,UNIX,LINIX和Windows 2003等。15.什么是多道程序设计?多道程序设计技术有什么特点? 答:多道程序设计是指允许多个作业同时进入计算机系统的主存并启动交替计算的方法。其特点是:1)CPU、主存和设备的利用率高。2)系统的吞吐率提高,单位时间内完成的作业数增加。3)充分发挥了系统的并行性,设备与设备之间、CPU与设备之间均可并行工作。16.简述实现多道程序设计所必须解决的基本问题。
答:实现多道程序设计所必须解决的三个上问题:1)存储保护和地址重定位;2)处理机管理和高度;3)资源的管理和分配。
17.计算机系统采用通道部件后,已实现处理器与外部设备的并行工作,为什么还要引入多道程序设计技术? 答:引入多道程序设计技术的根本目的是提高CPU的利用率,充分发挥计算机系统部件的并行性,一些应用问题也只有靠多道程序设计技术才能有效解决。18.什么是实时操作系统?试述实时操作系统的分类。
答:实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对任务协调一致运行的操作系统。分类:
1)过程控制系统:如生产过程控制系统、导弹制导系统、飞机自动驾驶系统、火炮自动控制系统。
2)信息查询系统:计算机同时从成百上千的终端接受服务请求和提问,并在短时间内作出回答和响应。如情报检索系统。
3)事务处理系统:计算机不仅要对终端用户及时作出响应,还要频繁更新系统中的文件或数据库。如银行业务系统。
19.在分时系统中,什么是响应时间?它与哪些因素有关? 答:分时系统的响应时间是指用户从终端发出一个命令到系统处理完这个命令并做出回答所需要的时间。这个时间受时间片长度、终端用户个数、命令本身功能、硬件特性、主存与辅存的交换速度等影响。
20.试比较批处理操作系统和分时操作系统的不同点。
答:分时操作系统与批处理操作系统的区别:1)追求目标不同:批处理操作系统以提高系统资源利用率和作业吞吐能力为目标,分时操作系统强调公平性对于联机用户的立即执行命令需要快速响应。2)适应作业不同:批处理操作系统适应已调试好的大型作业,分时操作系统适应正在调试的小型作业。3)资源利用率不同:批处理操作系统可合理安排不同负载的作业,使资源利用率达到最佳;在分时操作系统中,多个终端的作业使用同类型的系统’运行系统和共同子程序使系统的高度开销小,能公平的调配CPU和存储资源。4)作业控制方式不同:批处理操作系统由用户通过(JCL)书写作业控制流,预先提交脱机作业;分时操作系统交互作业由用户从键盘输入控制命令以交互方式联机工作。21.试比较实时操作系统和分时操作系统的不同点。答:分时操作系统是指在一个系统中多个用户分时地使用同一台计算机;实时操作系统是指计算机及时响应外部事件地请求并在规定时限内完成对该事件的处理,控制所有实时高备和实时任务协调一致地运行。
实时操作系统和分时操作系统的主要区别有两点: 1)分时操作系统的目标是提供一种通用性很强的系统,有较强的交互能力;而实时操作系统则大都是具有特殊用途的专用系统,交互能力略差。
2)分时操作系统对响应时间虽有要求,但一般来说,响应时间由人所能承受的等待时间来确定;而实时操作系统对响应时间要求很高,一般由控制系统或信息处理磁头所能接受的延迟时间来决定。
22.试比较单道和多道批处理系统。
答:1)单道批处理系统是最早出现的一种OS,它具有自动性,顺序性和单道性的特点;多道批处理系统则具有调度性,无序性和多道性的特点。2)单道批处理系统是在解决要机矛盾及CPU和I/O设备之间速度不匹配的矛盾中形成的,旨在提高系统资源利用率和系统吞吐量,但是仍然不能很好的利用系统资源;多道批处理系统是对单道批处理系统的改进,其主要优点烛资源利用率高,系统吞吐量大;缺点是平均周转时间长,无交互能力。23.试述网络操作系统的主要功能。
答:网络操作系统的主要功能:1)实现网络中各节点机之间的通信;2)实现网络中硬、软件资源的共享;3)提供多种网络服务软件;4)提供网络用户的应用程序接口。24.试述分布式操作系统的主要功能。
答:1)支持同样的通结构:通信结构是指支持各个计算机联网,以提供分布式应用的软件。在分布式系统中,尽管每台计算机都有自己独立的操作系统,并且这些计算机和操作系统的各类又可以是不同的,但它们都应该支持同样的通信结构。2)由网络操作系统提供网络服务功能:分布式系统的硬件环境是计算机网络,系统中的个人计算机可以是单用户工作站或服务器,因此它需要由网络操作系统进行管理并提供网络服务功能。3)有一个公共的分布式操作系统:在分布式系统中,各计算机共享一个公共的分布式操作系统。分布式操作系统由内核以及提供各种系统功能的模块和进程所组成。系统中的每一台计算机都必须保存分布式操作系统的内核,以实现对计算机系统的基本控制。25.试述嵌入式操作系统的发展背景及其特点。答:嵌入式操作系统的发展背景可以分为三个阶段:第一阶段:无操作系统的嵌入算法阶段,通过汇编语言编程对系统进行直接控制,运行结束后清除内存。系统结构和功能都相对单一,处理效率较低,存储容量较小,几乎没有用户接口,比较适合于各类专用领域中。第二阶段:以嵌入式CPU为基础、简单操作系统为核心的嵌入式系统。CPU各类繁多,通用性比较差;系统开销小,效率高;一般配备系统仿真器,操作系统具有一定兼容性和扩展性;应用软件较专业,用户界面不够友好;系统主要用来控制系统负载以及监控应用程序运行。第三阶段:通用的嵌入式实时操作系统阶段,以嵌入式操作系统为核心的嵌入式系统。能运行于各种类型的微处理器上,兼容性好;内核精小、效率高,具有高度的模块化和扩展性;具备文件和目录管理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能;具有大量的应用程序接口API;嵌入式应用软件丰富。
特点:1)实时性;2)可剪裁性;3)可靠性。
26.现代操作系统具有哪些基本功能?请简单叙述之。
答:现代操作系统的功能:管理计算机的软硬件资源(包括:处理机管理,作业管理,存储管理,设备管理,文件管理)、提高资源的利用率、方便用户。27.试述现代操作系统的基本特性及其所要解决的主要问题。
答:操作系统的四个基本特征:1)并发性(concurrence),2)共享性(sharing),3)虚拟性(virtual),4)异步性(asynchronism)。
所要解决的主要问题是:提高计算机系统的效率;增强系统的处理能力;充分发挥系统的利用率;文便用户使用。
28.为什么操作系统会具有随机性特性? 答:
29.组成操作系统的构件有哪些?请简单叙述之。答:
30.什么是操作系统内核? 答:
31.列举内核的分类、属性和特点。答:
32.解释单内核操作系统及其优、缺点。答:
33.解释微内核及客户—服务器结构操作系统及其优、缺点。答:
34.什么是层次式结构操作系统?说明其优、缺点。答: 35.什么是模块式结构操作系统?说明其优、缺点。答:
36.什么是虚拟器操作系统?试对其作简单说明。答:
37.从执行方式来看,试述操作系统各种运行模型。答:
38.分析下列操作系统使用了或具有哪些体系结构的特点:UNIX/Linux、Windows 2003、VM/370、Mach。答:
39.试述Windows 2003操作系统的结构特点。答:
40.试述Windows 2003操作系统的主要组件及其功能。答:
41.试述Windows 2003的设备驱动程序类型,其各自的主要功能是什么? 答:
42.试分析Windows 2003达到了哪些设计目标? 答:
43.通用操作系统具有批处理和分时处理两种功能,试问这样做有何优点及缺点? 答:
44.客户—服务器模型在分布式系统中很流行,它能够用于单机系统吗? 答:
45.解释操作系统资源管理的主要技术:资源复用、资源虚化、资源抽象。答:
46.说明抽象资源与物理资源之间的区别,并列举两个例子。答:
47.说明多级资源抽象,并列举两个例子。答:
48.以驾驶汽车为例,说明如何应用抽象原理及抽象的重要性。答:
49.什么是虚拟计算机?分析其组成。答:
50.何谓POSIX?试述POSIX1003.1的内容。答:
51.试述POSIX1003.1与Linux操作系统之间的关系。答:
52.试从资源管理的观点出发,分析操作系统在计算机系统中的角色和作用。答:
53.试从服务用户的观点出发,分析操作系统在计算机系统中的角色和作用。答:
54.试述操作系统是建立在计算机硬件平台上的虚拟计算机系统。答:
第二篇:操作系统比较
常见操作系统比较一、三种操作系统简介
(一)Windows操作系统简介
Windows是Microsoft公司在1985年11月发布的第一代窗口式多任务系统,它使PC机开始进入了所谓的图形用户界面时代。在图形用户界面中,每一种应用软件(即由Windows支持的软件)都用一个图标(Icon)表示,用户只需把鼠标移到某图标上,连续两次按下鼠标器的拾取键即可进入该软件,这种界面方式为用户提供了很大的方便,把计算机的使用提高到了一个新的阶段。
Windows1.X版是一个具有多窗口及多任务功能的版本,但由于当时的硬件平台为PC/XT,速度很慢,所以Windows1.X版本并未十分流行。1987年底Microsoft公司又推出了MS-Windows2.X 版,它具有窗口重叠功能,窗口大小也可以调整,并可把扩展内存和扩充内存作为磁盘高速缓存,从而提高了整台计算机的性能,此外它还提供了众多的应用程序:文本编辑Write、记事本Notepad、计算器Calculator、日历Calendar……等。随后在88年、89年又先后推出了MS-Windows/286-V2.1和MS-Windows/386 V2.1这两个版本。1990年,Microsoft公司推出了Windows3.0,它的功能进一步加强,具有强大的内存管理,且提供了数量相当多的Windows应用软件,因此成为386、486微机新的操作系统标准。随后,Windows发表3.1版,而且推出了相应的中文版。3.1版较之3.0版增加了一些新的功能,受到了用户欢迎,是当时最流行的Windows版本。
1995年,Microsoft公司推出了Windows95。在此之前的Windows都是由DOS引导的,也就是说它们还不是一个完全独立的系统,而Windows95是一个完全独立的系统,并在很多方面作了进一步的改进,还集成了网络功能和即插即用(Plug and Play)功能,是一个全新的32位操作系统。
1998年,Microsoft公司推出了Windows95的改进版Windows98,Windows98的一个最大特点就是把微软的Internet浏览器技术整合到了Windows里面,使得访问Internet资源就像访问本地硬盘一样方便,从而更好地满足了人们越来越多的访问Internet资源的需要。Windows98是目前实际使用的主流操作系统。
在90年代初期Microsoft推出了Windows NT(NT是New Technology即新技术的缩写)来争夺Novell Netware的网络操作系统市场。相继有Windows NT 3.0,3.5,4.0等版本上市,逐渐蚕食了中小网络操作系统的大半江山。WindowsNT是真正的32位操作系统,与普通的Windows系统不同,它主要面向商业用户,有服务器版和工作站版之分。2000年,Microsoft公司推出了Windows 2000,它包括四个版本:Data center Server是功能最强大的服务器版本,只随服务器捆绑销售,不零售;Advanced Server和Server版是一般服务器使用;Professional版是工作站版本的NT和Windows98共同的升级版本。目前还有一个主要面向家庭和个人娱乐,侧重于多媒体和网络的Windows Me存在。
2001年10月25日,Microsoft发布了功能及其强大的Windows XP,该系统采用Windows 2000/NT内核,运行非常可靠、稳定,用户界面焕然一新,使用起来得心应手,这次微软终于可以和苹果的Macintosh软件一争高下了,优化了与多媒体应用有关的功能,内建了极其严格的安全机制,每个用户都可以拥有高度保密的个人特别区域,尤其是增加了具有防盗版作用的激活功能。
(二)Unix操作系统简介
Unix系统是1969年在贝尔实验室诞生,最初是在中小型计算机上运用。最早移植到80286微机上的Unix系统,称为Xenix。Xenix系统的特点是短小精干,系统开销小,运行速度快。
UNIX为用户提供了一个分时的系统以控制计算机的活动和资源,并且提供一个交互,灵活的操作界。UNIX被设计成为能够同时运行多进程,支持用户之间共享数据。同时,UNIX支持模块化结构,当你安装UNIX操作系统时,你只需要安装你工作需要的部分,例如:UNIX支持许多编程开发工具,但是如果你并不从事开发工作,你只需要安装最少的编译器。用户界面同样支持模块化原则,互不相关的命令能够通过管道相连接用于执行非常复杂的操作。UNIX 有很多种,许多公司都有自己的版本,如 AT&T、Sun、HP等。最初的Unix是用汇编语言编写的,一些应用是由叫做B语言的解释型语言和汇编语言混合编写的。B语言在进行系统编程时不够强大,所以汤普逊和里奇对其进行了改造,并与1971年共同发明了C语言。
1973年汤普逊和里奇用C语言重写了Unix。在当时,为了实现最高效率,系统程序都是由汇编语言编写,所以汤普逊和里奇此举是极具大胆创新和革命意义的。用C语言编写的Unix代码简洁紧凑、易移植、易读、易修改,为此后Unix的发展奠定了坚实基础。
(三)linux操作系统简介
简单地说,Linux是一套免费使用和自由传播的类 Unix操作系统,它主要用于基于 Intel x86系列 CPU的计算机上。这个系统是由世界各地的成千上万的程序员 设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的 Unix兼容产品。Linux的出现,最早开始于一位名叫 Linus Torvalds 的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。他的目的是想设计一个代替 Minix(是由一位名叫 Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统,这个操作系统可用于 386、486或奔腾处理器的个人计算机上,并且具有 Unix操作系统的全部功能,因而开始了 Linux雏形的设计。Linux以它的高效性和灵活性著称。它能够在 PC计算机上实现全部的 Unix特性,具有多任务、多用户的能力。Linux是在 GNU公共许可权限下免费获得的,是一个符合 POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的 Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的 X-Windows图形用户界面,如同我们使用 Windows NT一样,允许我们使用窗口、图标和菜单对系统进行操作。Linux是当今电脑界一个耀眼的名字,它是目前全球最大的一个自由免费软件,其本身是一个功能可与Unix和Windows相媲美的操作系统,具有完备的网络功能,它的用法与UNIX非常相似,因此许多用户不再购买昂贵的UNIX,转而投入Linux等免费系统的怀抱。
二、各操作系统特点
(一)Windows操作系统特点
从某种意义上说,Windows用户界面和开发环境都是面向对象的。用户采用“选择对象-操作对象”这种方式进行工作。比如要打开一个文档,我们首先用鼠标或键盘选择该文档,然后从右键菜单中选择“打开”操作,打开该文档。这种操作方式模拟了现实世界的行为,易于理解、学习和使用。
1.用户界面统一、友好、漂亮:
Windows应用程序大多符合IBM公司提出的CUA(Common User Acess)标准,所有的程序拥有相同的或相似的基本外观,包括窗口、菜单、工具条等。用户只要掌握其中一个,就不难学会其他软件,从而降低了用户培训学习的费用。
2.丰富的设备无关的图形操作:
Windows的图形设备接口(GDI)提供了丰富的图形操作函数,可以绘制出诸如线、圆、框等的几何图形,并支持各种输出设备。设备无关意味着在针式打印机上和高分辨率的显示器上都能显示出相同效果的图形。
3.多任务:
Windows是一个多任务的操作环境,它允许用户同时运行多个应用程序,或在一个程序中同时做几件事情。每个程序在屏幕上占据一块矩形区域,这个区域称为窗口,窗口是可以重叠的。用户可以移动这些窗口,或在不同的应用程序之间进行切换,并可以在程序之间进行手工和自动的数据交换和通信。
(二)Unix操作系统特点
早期UNIX的主要特色是结构简炼、便于移植和功能相对强大,经过30来年的发展和进化,形成了一些极为重要并稳定的特色,其中主要包括:
1.技术成熟,可靠性高
经过30来年开放式道路的发展,UNIX的一些基本技术已变得十分成熟,有的已成为各类操作系统的常用技术。实践表明,UNIX是能达到大型主机(mainframe)可靠性要求的少数操作系统之一。目前许多UNIX大型主机和服务器在国外的大型企业中每天24小时,每年365天不间断地运行。例如,不少大企业或政府部门,即所谓肩负关键使命的场合/部门将其整个企业/部门信息系统建立并运行在以UNIX为主服务器的Client/Server结构上。但到目前为止,世界上还没有一家大型企业将其重要的信息系统完全建立在NT上。
2.极强的可伸缩性
UNIX系统是世界上唯一能在笔记本电脑、PC、工作站,直至巨型机上运行的操作系统,而且能在所有主要CPU芯片搭建的体系结构上运行(包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC芯片)。至今为止,世界上没有第二个操作系统能达到这一点。此外,由于UNIX系统能很好地支持SMP、MPP和Cluster等技术,使其可伸缩性又有了很大的增强。目前,商品化UNIX系统能支持的SMP,CPU数已达到几百甚至更多个,MPP系统中的节点甚至已超过1024个UNIX支持的异种平台Cluster技术也已投入使用。UNIX的伸缩性远远超过了NT操作系统目前所能达到的水平
3.网络功能强
网络功能是UNIX系统的一又一重要特色,作为Internet网技术和异种机连接重要手段的TCP/IP协议就是在UNIX上开发和发展起来的。TCP/IP是所有UNIX系统不可分割的组成部分。因此,UNIX服务器在Internet服务器中占80%以上,占绝对优势。此外,UNIX还支持所有常用的网络通信协议,包括NFS、DCE、IPX/SPX、SLIP、PPP等,使得UNIX系统能方便地与已有的主机系统,以及各种广域网和局域网相连接,这也是UNIX具有出色的互操
作性(Interoperability)的根本原因。
4.强大的数据库支持能力
由于UNIX具有强大的支持数据库的能力和良好的开发环境,因此多年来,所有主要数据库厂商,包括Oracle、Informix、Sybase、Progress等,都把UNIX作为主要的数据库开发和运行平台,并创造出一个又一个性价比的新记录。UNIX服务器正在成为大型企业数据中心替代大型主机的主要平台。
5.开发功能强
UNIX系统从一开始就为软件开发人员提供了丰富的开发工具。成为工程工作站的首选和主要的操作系统和开发环境。可以说,工程工作站的出现和成长与UNIX是分不开的。至今为止,UNIX工作站仍是软件开发厂商和工程研究设计部门的主要工作平台。有重大意义的软件新技术的出现几乎都在UNIX上,如TCP/IP、WWW、OODBMS等。
6.开放性好
开放性是UNIX最重要的本质特性。开放系统概念的形成与UNIX是密不可分的。UNIX是开放系统的先驱和代表。由于开放系统深入人心,几乎所厂商都宣称自己的产品是开放系统,确实每一种系统都能满足某种开放的特性,如可移植性、可兼容性、可伸缩性、互操作性等。但所有这些系统与开放系统的本质特征—不受某些厂商的垄断和控制相去甚远,只有UNIX完全符合这一条件。
7.标准化
过去,Unix界被分析家和用户批判,因为没有为所有Unix操作系统提供统一的标准。其实,到目前为止,国际标准化组织(ISO)、工业团体恰恰是以UNIX基础制订了一系列标准化,如ISO/IEC的POSIX标准、IEEE POSIX标准、X/Open组织的XPG3/4工业标准以及后来的Spec 1170(因为它包含了1170个应用编程接口,后来改名为UNIX’95)标准。不少人对标准及标准化组织的作用及职权产生了误解。事实上,当标准化组织企图驾驭互相竞争的力量,和企图为用户规定他们的要求时是注定要失败的。比方说,标准只能用于给出道路的规则,而不应用于制造汽车。如果厂家被强迫完全遵从单一的标准,而不允许他们产品有特色,则用户将受害,Unix将变成象任何单一厂家的产品一样,没有任何特色。
(三)Linux操作系统特点
Linux作为自由软件有两个特点:一是它免费提供源码,二是爱好者可以按照自己的需要自由修改、复制和发布程序的源码,并公布在Internet上。这就吸引了世界各地的操作系统高手为Linux编写各种各样的驱动程序和应用软件,使得Linux成为一种不仅只是一个内核,而且包括系统管理工具、完整的开发环境和开发工具、应用软件在内,用户很容易获得的操作系统。
Linux是一个UNIX系统变种,因此也就具有了Unix系统的一系列优良特性,Unix上的应用可以很方便地移植到Linux平台上,这使得Unix用户很容易掌握Linux。
三、三种操作系统比较
(一)Linux操作系统和Windows操作系统比较
1.可完全免费得到
Linux操作系统可以从互联网上免费下载使用,只要您有快速的网络连接就行;而且,Linux上跑的绝大多数应用程序也是免费可得的。用了Linux就再也不用背”使用盗版软件”的黑锅了。
2.可以运行在386以上及各种RISC体系结构机器上
Linux最早诞生于微机环境,一系列版本都充分利用了X86CPU的任务切换能力,使X86CPU的效能发挥得淋淋尽致,而这一点连Windows都没有做到。此外,它可以很好地运行在由各种主流RISC芯片(ALPHA、MIPS、PowerPC、UltraSPARC、HP-PA等)搭建的机器上。
3.Linux是UNIX的完整实现
从发展的背景看,Linux与其他操作系统的区别是,Linux是从一个比较成熟的操作系统发展而来的,而其他操作系统,如WindowsNT等,都是自成体系,无对应的相依托的操作系统。这一区别使得Linux的用户能大大地从Unix团体贡献中获利。无论是Unix的作者还是Unix的用户,都认为只有Unix才是一个真正的操作系统,许多计算机系统(从个人计算机到超级计算机)都存在Unix版本,Unix的用户可以从很多方面得到支持和帮助。因此,Linux作为Unix的一个克隆,同样会得到相应的支持和帮助,直接拥有Unix在用户中建立的牢固的地位。UNIX上的绝大多数命令都可以在Linux里找到并有所加强。UNIX的可靠性、稳定性以及强大的网络功能也在Linux身上一一体现。
4.真正的多任务多用户
只有很少的操作系统能提供真正的多任务能力,尽管许多操作系统声明支持多任务,但并不完全准确,如Windows。而Linux则充分利用了X86CPU的任务切换机制,实现了真正多任务、多用户环境,允许多个用户同时执行不同的程序,并且可以给紧急任务以较高的优先级。
5.完全符合POSIX标准
POSIX是基于UNIX的第一个操作系统簇国际标准,Linux遵循这一标准这使UNIX下许多应用程序可以很容易地移植到Linux下,相反也是这样。
6.具有图形用户界面
Linux的图形用户界面是Xwindow系统。Xwindow可以做MSWindows下的所有事情,而且更有趣、更丰富,用户甚至可以在几种不同风格的窗口之间来回切换。
7.具有强大的网络功能
实际上,Linux就是依靠互联网才迅速发展了起来,Linux具有强大的网络功能也是自然而然的事情。它可以轻松地与TCP/IP、LANManager、Windows for Workgroups、Novell Netware或Windows NT网络集成在一起,还可以通过以太网或调制解调器连接到Internet上。Linux不仅能够作为网络工作站使用,更可以胜任各类服务器,如X应用服务器、文件服务器、打印服务器、邮件服务器、新闻服务器等等。
8.是完整的UNIX开发平台
Linux支持一系列的UNIX开发工上,几乎所有的主流程序设计语言都已移植到Linux上并可免费得到,如C、C++、Fortran77、ADA、PASCAL、Modual2和
3、Tcl/TkScheme、SmallTalk/X等。总而言之,Unix就是可供各种用户选择的对象。一个操作系统已经使分布式计算成为现实。一个操作系统正在使新形式的交互娱乐成为现实并正确领导通向新的工程和商业应用的路。这就是Unix所体现的精神。但Unix还不止于此。主要地,Unix给用户选择最佳应用、最佳开发环境、最佳网络功能和最佳硬件的自由,以满足用户的业务要求。Unix还给用户选择何时升级系统的自由,甚至当用户改变主意时,用户可以以最少的痛苦来安装一个新系统,只要业务需要。Unix专门献身于使用户保持选择的权力。
(二)UNIX操作系统WINDOWS操作系统比较
unix操作系统是主要是用于服务器类行,一些功能大多是以命令来实现的,大型企业大多
用这个做服务器,安全全性很好.WINDOWS一般是用于家庭,现在对于图形界面是最好的选择.
UNIX系统的安全性和权限分配上要比WINDOWS好的多,但是WINDOWS更适合家庭及普通办公人员使用,有些要求安全性较高的场所,向一些服务器,重要地点机房,还是要用unix的。
windows的优点是用户多,一般软件产商做个人桌面软件时都会有windows版本
linux的优点是可定制强,你安装系统可以选择不同版本内核、桌面(GNOME、KDE 都很漂亮,很好用)、和软件包管理软件等等。而且都是免费的,而且现在的基于linux的系统(ubuntu、fedora)安装软件都比较方便,它的添加删除程序里只要你选择了你要安装的软件包,就可以自己下载自己安装(官方的源里都有上万个软件包,而且免费)。unix一般用于服务器,但是很少用于桌面,(三)Linux操作系统与Unix操作系统的比较
某些PC机的Unix和Linux在实现方面相类似。几乎所有的商业Unix版本都基本支持同样的软件、程序设计环境和网络特性。然而,Linux和Unix的商业版本依然存在许多差别。Linux支持的硬件范围和商业Unix不一样。一般来说,商业Unix支持的硬件多一些,可是Linux支持的硬件也在不断扩大。突出的是,Linux至少和商用Unix一样稳定。对许多用户来说,最重要的因素是价格。Linux是免费软件,用户可以从Internet网上下载。如果上网不方便,可以很便宜地通过邮购得到Linux的磁盘或CD-ROM。当然也可以直接从朋友那里得到。商业Unix的价值不应被贬低。除了软件本身的价格外,用户还需支付文档、售后支持和质保费。对于较大的机构,这些都很重要,但是PC机用户也许从中得不到什么好处。许多商业公司和大学等单位已经发现,在实验室用廉价的PC机运行Linux比用工作站运行商业Unix还好。Linux可以在PC机上提供工作站的功能,而PC机的价格是工作站的几分之一。也有一些针对PC机的便宜的Unix,其中最有名的是386BSD。在许多方面,386BSD软件包和Linux兼容,但Linux更适合用户的需求。最显著的是,Linux的开发是开放的,任何志愿者都可以对开发过程做出贡献。相比之下,386BSD是由封闭的团队开发的。正是这样,这两种产品存在着严重的概念上和设计上的差别:Linux的目标是从头开始开发一个完整的Unix系统;386BSD的目标则是对现有的BSD做些修改,以适合80386系统。
第三篇:操作系统复习资料
第一章P45 ⒉什么是操作系统?操作系统追求的主要目标是什么?
答:操作系统是计算机系统中的一个系统软件,是能有效地组织和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行的一组程序模块的集合。操作系统追求的主要目标包括四个方面,分别是:方便性、有效性、可扩充性、开放性。⒍从资源管理观点看,操作系统具有哪些功能?
答:处理机管理、存储器管理、I/O设备管理、文件管理。⒑什么叫多道程序系统?其主要特性是什么?
答:用户所提交的作业都先存放在外存并排成一个队列,该队列被称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源,以达到提高资源利用率和系统吞吐量的目的,这样的系统称为多道程序系统。主要特征有:多道性、无序性、调度性。
⒒什么叫分时系统?其主要特点是什么? 答:分时系统是指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可通过自己的终端以交互方式使用计算机。其主要特点是:多路性、独立性、及时性和交互性。⒓什么叫实时系统?主要有哪几大类?
答:实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成该事件的处理,并控制所有实时任务协调一致地运行。按任务执行时是否呈现周期性来划分可分为周期性实时系统和非周期性实时系统,按对截止时间的要求来划分可分为强实时系统和弱实时系统。
第二章P61 ⒍系统采用不能移动已在主存储器中作业的可变分区方式管理主存储器,现有供用户使用的主存空间100K,系统配有4台磁带机,有一批作业见表2.6。表2.6 作业序号 进输入井时间 要求计算时间 需要主存量 申请磁带机数 1 l0:00 25分钟 15K 2台 2 10:20 30分钟 60K 1台 3 10:30 10分钟 50K 3台 4 10:35 20分钟 10K 2台 5 10:40 15分钟 30K 2台
该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所花的时间,请分别写出采用“先来先服务调度算法”、“计算时间短的作业优先算法”和选中作业执行的次序以及各个作业的装入主存时间、开始执行时间、完成时间、周转时间以及它们的平均周转时间。
答:先来先服务调度算法”、“计算时间短的作业优先算法”和选中作业执行的次序以及它们的平均周转时间的结果是一样的:
选中作业的次序:选中作业执行的次序均为1,2,4,5,3。
作业1的周转时间:25分钟;
作业2的周转时间:35分钟;
作业3的周转时间:70分钟;
作业4的周转时间:40分钟;
作业5的周转时间:50分钟;
平均周转时间:(25+35+70+50+40)/5=44分钟
7、在一个批处理单道系统中,采用响应比高者优先的作业调度算法。当一个作业进入系统后就可以开始调度,假定作业都仅是计算,忽略调度花费的时间。现有3个作业,进入系统的时间和需要计算的时间如表2-2所示。
表2-2 进入系统的时间和需要计算的时间表
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 — — — 2 9:10 45分钟 — — — 3 9:15 25分钟 — — —
(1)求出每个作业的开始时间、完成时间及周转时间。(2)解答: 先来先服务:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:00 10:45 95分钟 3 9:15 25分钟 10:45 11:10 115分钟 响应比高者优先:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:25 11:10 120分钟 3 9:15 25分钟 10:00 10:25 70分钟 短作业优先:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:25 11:10 120分钟 3 9:15 25分钟 10:00 10:25 70分钟
(2)计算三个作业的平均周转时间应为多少?
解答:
先来先服务:
(60+95+115)/3=90(分钟)响应比高者优先:(60+120+70)/3=83.33(分钟)短作业优先:(60+120+70)/3=83.33(分钟)
第三章P95 ⒈何谓进程,它与程序有哪些异同点?
答:进程是具有独立功能的可并发执行的程序在一个数据集合上的运行过程,是系统进行资源分配和调度的独立单位。或者说,进程是进程实体的运行过程。
①进程是程序的一次执行,它是一个动态的概念,程序是完成某个特定功能的指令的有序序列,它是—个静态的概念。但进程是把程序作为它的运行实体,没有程序,也就没有进程。进程和程序的区别还在于:一个进程可以执行一个或几个程序。反之,同一程序也可能由多个进程同时执行。②进程是系统进行资源分配和调度的一个独立单位;程序则不是。
③程序可以作为一种软件资源长期保存,而进程是程序的一次执行过程,它是临时的,有生命期的。表现在它由创建而产生,完成任务后被撤消。
④进程是具有结构的。为了描述进程的运行变化过程,应为每个进程建立一个结构——进程控制块。从结构上看,进程是由程序、数据和进程控制块三部分组成。⒉进程控制块的作用是什么?它主要包括哪几部分内容?
答:进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。也就是说,操作系统是根据进程控制块PCB来对并发执行的进程进行控制和管理的。PCB是进程存在的惟一标志。在进程控制块中,主要包括下述四个方面用于描述和控制进程运行的信息:
⑴ 程表示符信息 ⑵处理机状态信息 ⑶进程调度信息 ⑷进程控制信息
3. 进程有哪几种基本状态?试举出使进程状态发生变化的事件并描绘它的状态转换图。
进程有以下三种基本状态:
① 就绪状态。当进程已分配到除CPU以外所有必要的资源后,只要能再获得处理机便可立即执行,这时的状态称为就绪状态。
② 执行状态。进程已获得处理机,程序正在执行。
③ 阻塞状态。进程因发生某种等待事件(如I/O请求、申请缓冲空间等)而暂停执行时的状态,亦即进程的执行受到阻塞,故称这种状态为阻塞状态,有时也称为“等待”状态或“睡眠”状态。(2)进程状态的转换
进程在运行期间不断地从一个状态转换到另一个状态,进程的各种调度状态依据一定的条件而发生变化,它可以多次处于就绪状态和执行状态,也可多次处于阻塞状态,但可能排在不同的阻塞队列中。进程的三种基本状态及其转换如图3-1所示。
6.有5个进程(A~E)几乎同时到达一计算中心。它们的估计运行时间分别为10、6、2、4和8分钟。其优先数(由外部设定)分别为3、5、2、1和4,其中5设为最高优先级。对于下列每种调度算法,计算其平均进程周转时间,可忽略进程切换的开销。
(1)时间片轮转调度算法(时间片为4)。(2)优先级调度算法。
(3)先来先服务调度算法(按照次序10、6、2、4、8运行)调度算法。(4)最短进程优先调度算法。对(1),假设系统具有多道处理能力,每个进程均获得公平的处理机时间,对(2)~(4)假设任—时刻只有一个作业运行,直到结束。
时间片轮转法的平均周转时间是21 优先级调度的平均周转时间是20 先来先服务的平均周转时间是19 最短作业优先的平均周转时间是14 第四章P148 2什么叫临界资源?什么叫临界区?对临界区的使用应符合哪些规则? 答:临界资源是一种多个进程共享的资源。其属性是:共享临界资源的进程必须互斥得访问它,也就是说,同一时刻只允许一个进程访问的共享资源叫临界资源 在每个进程中访问临界资源的那段代码称为临界区。
每个进程在进入临界区之前应先对欲访问的临界资源进行检查,看它是否正被访问。如果此时临界资源未被访问,该进程便可进入临界区对该资源进行访问,并设置它正被访问的标志;如果此刻该临界资源正被某进程访问,则本进程不能进入临界区。因此,必须在临界区前面增加一段用于进行上述检查的代码。相应地,在临界区后面也要加上一段代码,用于将临界区正被访问的标志恢复为未被访问标志。
2若信号量s表示某一类资源,则对s执行P、v操作的直观含意是什么? p操作(wait)v操作(signal)答:P操作相当于申请一个资源,得不到阻塞;V操作相当于归还一个资源,如有等待该资源的进程,则唤醒。
5当进程对信号量s执行P、V操作时,s的值发生变化,当s>0、s=0和s<0时,其物理意义是什么? 答:S>0时 S表示可使用的资源数或表示可使用资源的进程数; S=0时 S表示无资源可供使用或表示不允许进程再进入临界区;
S<0时 S表示等待使用资源的进程个数或表示等待进入临界区的进程个数。
7.有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:(1)为描述读者的动作,应编写几个程序,设置几个进程?(2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。
算法的信号量有三个:seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。读者进入阅览室的动作描述getin:
while(TRUE){P(seats);/*没有座位则离开*/ P(mutex)/*进入临界区*/ 填写登记表;进入阅览室读书;V(mutex)/*离开临界区*/ V(readers)
} 读者离开阅览室的动作描述getout:
while(TRUE){P(readers)/*阅览室是否有人读书*/ P(mutex)/*进入临界区 */消掉登记; 离开阅览室;
V(mutex)/*离开临界区*/ V(seats)/*释放一个座位资源*/ }
8、复印室里有一个操作员为顾客复印资料,有5把椅子供顾客休息等待复印。如果没有顾客,则操作员休息。当顾客来到复印室时,如果有空椅子则坐下来,并唤醒复印操作员;如果没有空椅子则必须离开复印室。利用信号量机制解决该同步互斥问题。
设置3个信号量:customers表示正在等待复印的顾客数量(不包括正在复印的顾客);operator记录正在等候顾客的操作员数,只有1和0;mutex用于对变量waiting的互斥访问。1个变量:waiting表示等待的顾客数量。
semaphore customers=0,operator=0,mutex=1;waiting=0;
process operator()//操作员进程 { while(1){ wait(customers);//等待顾客到来 复印; signal(operator);//通知顾客已经完成复印 } } process cusotmeri()//顾客进程i { wait(mutex);if(waiting<5){ waiting++;signal(customers);signal(mutex);
wait(operator);
wait(mutex);waiting--;signal(mutex);} Else { signal(mutex);离开复印室; } } main(){ cobegin { operator();customeri();} }
12什么是死锁?
答:死锁是指在多道程序系统中,一组进程中的每一个进程均无限期地等待被该组进程中的另一个进程所占有且永远不会释放的资源;这种现象称系统处于死锁状态,简称死锁。13死锁产生的四个必要条件是什么?
答:产生死锁的四个必要条件是:⑴互斥条件 ⑵请求和保持条件 ⑶不剥夺条件 ⑷环路等待条件
16假定系统有4个同类资源和3个进程,进程每次只申请或释放1个资源。每个进程最大资源需求量为2。请问这个系统为什么不会发生死锁?
解:由于每个进程最多需要2个资源,最坏情况下,每个进程获得1个,系统还剩1个。这1个资源,无论分给谁,都能完成。完成进程释放资源后,使剩余进程也完成。故系统不会发生死锁
19一个计算机系统有6个磁带驱动器n个进程。每个进程最多需要两个磁带驱动器。问当n为什么值时,系统不会发生死锁?
方法一:对于3个进程,每个进程能够有两个驱动器。对于4个进程,驱动器可以按照(2,2,1,1)的方法进行分配,使前面两个进程先结束。对于5个进程,可以按照(2,1,1,1,1)的方式进行分发,使一个进程先结束。对于6个进程,每个进程都拥有一个磁带驱动器同时需要另外一个驱动器,产生了死锁。因此,对于n〈6的系统来说是无锁的。
方法二:已知系统中的每个进程需要2个驱动器。那么在最坏的情况下,各进程都占用了其中的一个,而且都在请求自己所需要的另一个。如果此时系统尚有多于一个,那么就可以满足其中一个进程运行完毕。当该进程运行完毕释放出它所有占有的驱动器后,又可进一步满足其他进程。系统不会出现死锁。因此,如果将(6-1)个驱动器机分配给n个进程,满足每个进程一个的话,进程数量n必然小于等于5,此时系统中不会发生死锁。
第五章P192 ⒌可变分区常用的分区算法有哪几种?它们各自的特点是什么?
答:首次适应算法、循环首次适应算法、最佳适应算法、最差适应算法(第二问 略)
⒐简述分页存储管理方式的基本思想和页表的作用。
答:基本思想:在分页存储管理中将作业地址空间和存储空间按相同长度为单位进行等划分。把每个作业的地址空间(逻辑空间)分成一些大小相同的片段,叫做页面或页(Page)。把内存的存储空间也分成大小与页面相同的片段,叫做物理块或页框(Frame)。在分配存储空间时,总是以块为单位,按照作业的页数分配物理块。分配的物理块可以连续也可以不连续 页表的作用:实现从页号到物理块号的地址映射
⒒简述快表的作用。
答:提高了存取速度,使得指令执行速度大大加快
⒓简述段和页的区别。
答:分页和分段有许多相似之处,但是在概念上两者完全不通,主要表现在: ①页是信息的物理单位,分页是为了系统管理内存的方便而进行的,故对用户而言,分页是不可见的,是透明的;段是信息的逻辑单位,分段是作业逻辑上的要求,对用户而言,分段是可见的。②页的大小是固定的,由系统决定;段的大小是不固定的,由用户作业本身决定。
③从用户角度看,分页的地址空间是一维的,而段的地址空间是二维的。
⒔什么叫虚拟存储器?
答:所谓虚拟存储器,是指仅把作业的一部分装入内存便可运行作业的存储器系统。具体地说,所谓虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。
⒗某虚拟存储区的用户空间共32个页面,每页1KB,主存16KB。假定某时刻系统为用户的第0、1、2、3页分别分配的物理块号为5、10、4、7,将逻辑地址0A5CH和093CH变换为物理地址。答:125CH、113CH
⒘在一个分页虚拟存储管理方式中,采用LRU页面置换算法时,假如一个作业的页面走向为1、3、2、1、1、3、5、1、3、2、1、5,当分配给该作业的物理块数M分别是3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。
答:M是3时,缺页次数是6,缺页率是50% M是4时,缺页次数是3,缺页率是25%
第四篇:《操作系统》-简答题
计算机应用专业
《操
作
系
统》复习题
1、什么是操作系统?它有什么基本特征?
操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。操作系统的基本特征是:并发、共享和异步性。
2、操作系统的含义及其功能是什么?
1)、含义:OS是一组系统软件,它是软硬件资源的控制中心,它以尽量合理有效的方法组织多个用户共享计算机的各种资源。
2)功能:管理计算机的软硬件资源(包括:处理机管理,作业管理,存储管理,设备管理,文件管理)、提高资源的利用率、方便用户。
3、什么是多道程序设计技术
多道程序设计技术就是在系统(内存)中同时存放并运行多道相互独立的程序(作业),主机以交替的方式同时处理多道程序。它是一种宏观上并行,微观上串行的运行方式。
4、分时系统和实时系统有什么不同?
答:分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。
5、SPOOLing的含义是什么?试述SPOOLing系统的特点、功能。
答:SPOOLing是Simultaneous Peripheral Operation On-Line(即并行的外部设备联机操作)的缩写,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为“假脱机技术”。
SPOOLing技术是在通道技术和多道程序设计基础上产生的,它由主机和相应的通道共同承担作业的输入输出工作,利用磁盘作为后援存储器,实现外围设备同时联机操作。SPOOLing系统由专门负责I/O的常驻内存的进程以及输入井、输出井组成;它将独占设备改造为共享设备,实现了虚拟设备功能。
6、作业与进程有何不同?它们之间有什么关系?(1)、不同:
作业:是用户在一次上机活动中,要求计算机系统所做的一系列工作的集合。也称作任务(task)。
进程:是一个具有一定独立功能的程序关于某个数据集合的一次可以并发执行的运行活动。
作业是一个宏观的执行单位,它主要是从用户的角度来看待的。作业的运行状态是指把一个作业调入内存,然后产生若干个进程可以去竞争CPU。
进程是微观的执行单位,它主要从系统的角度来看待的,它是抢占CPU和其他资源的基本 6
计算机应用专业
《操
作
系
统》复习题
单位。进程的执行状态是指一个进程真正占用了CPU。
(2)、关系:一个作业调入内存以后,处于执行状态,则此作业对应在系统建立若干个进程。进程的所有状态对应作业的执行状态,通过这若干个进程的执行,来完成该作业。
7、什么是进程?什么是线程?它们的关系是什么?
进程是一个具有一定独立功能的程序关于某个数据集合的一次可以并发执行的运行活动。线程是 进程内可以并行执行的单位,即处理机调度的基本单位。
它们的关系是:一个线程只能属于一个进程,而一个进程可以有多个线程;资源分配给进程,同一进程的所有线程共享该进程的所有资源;处理机分给线程,即真正在处理机上运行的是线程;线程在运行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。
8、在OS中,引起进程调度的因素有哪些?
1、完成任务;正在运行的进程完成任务,释放CPU
2、等待资源;等待资源或事件,放弃CPU
3、运行时刻;规定时间片已用完,时钟中断,让出CPU
4、发现标志;核心处理完中断或陷入事件后,发现“重新调度标志”被置上,执行进程调度。
9、进程调度的主要功能是什么?(1)保存当前正在运行进程的现场;
(2)从就绪队列中挑选一个合适的进程(使用一定的调度算法),将其状态改为运行态,准备分配CPU给它;
(3)为选中的进程恢复现场,分配CPU
10、请说明作业调度与进程调度的区别?
(1)作业调度是宏观调度,它所选择的作业只是具备获得处理机的资格,但尚未占有处理机,不能立即在其上实际运行;而进程调度是微观调度,它动态地把处理机实际地分配给选中进程,使之活动;
(2)进程调度相当频繁,而作业调度的执行次数很少;(3)有的系统可以不设作业调度,但进程调度必不可少。
11、简述时间片轮转(RR)调度算法的实现思想? 答:系统把所有就绪进程按先入先出的原则排成一个队列,新来的进程加到就绪队列末尾。每当执行进程调度时,进程调度程序总是选出就绪队列的队首进程,让它在CPU中运行一个时间片的时间。当进程用完分配给它的时间片后,调度程序便停止该进程的运行,并把它放入就绪队列的末尾;然后,把CPU分配给就绪队列的队首进程。
12、简述优先级调度算法的实现思想?
计算机应用专业
《操
作
系
统》复习题
答:(1)从就绪队列中选出优先级最高的进程,把CPU分配给它;
(2)非抢占式优先级法是当前占用CPU的进程一直运行直到完成任务或阻塞才让出CPU,调度优先级高的进程占用CPU。
(3)抢占式优先级法是当前进程在运行时,一旦出现一个优先级更高的就绪进程,调度程序就停止当前进程的运行,强将CPU分给那个进程。
13、进程间同步和互斥的含义是什么? 同步:并发进程之间存在的相互制约和相互依赖的关系。
互斥:若干进程共享一资源时,任何时刻只允许一个进程使用。
14、什么是虚拟存储器,其基本特征是什么?虚拟存储器的容量主要受到哪两方面的限制?
答: 虚拟存储器是由操作系统提供的一个假想的特大存储器。
虚拟存储器的基本特征是:
(1)虚拟性。即不是物理上而是逻辑上扩充了内存容量;
(2)兑换性(部分装入)。即每个作业不是全部一次性地装入内存,而是只装入一部分,将当前不运行的程序、数据调至外存盘交换区;
(3)离散性,即不必占用连续的内存空间,而是“见缝插针”;(4)多次性,即所需的全部程序和数据要分成多次调入内存。
虚拟存储器的容量主要受到指令中表示地址的字长和外存的容量的限制。
15、存储管理的主要功能是什么?
答:存储管理的主要功能是解决多道作业的主存空间的分配问题。主要包括:(1)内存区域的分配和管理:设计内存的分配结构和调入策略,保证分配和回收。(2)内存的扩充技术:使用虚拟存储或自动覆盖技术提供比实际内存更大的空间。(3)内存的共享和保护技术。除了被允许共享的部分之外,作业之间不能产生干扰和破坏,须对内存中的数据实施保护。
16、何谓系统的“抖动”现象?当系统发生“ 抖动”时,你认为应该采取什么措施来加以克服。
答: “抖动”是指内外存交换频繁使效率下降的现象(刚调出的页马上又要调入,所造成页面的频繁转换现象)
抖动现象与内存中并发的用户进程数以及系统分配给每个用户的物理块数有关.减少抖动的方法有:采取局部置换策略、在CPU调度中引入工作集算法、挂起若干进程等。
17、为什么分段技术比分页技术更容易实现程序或数据的共享?
答:1)每一段在逻辑上是相对完整的一组信息,分段技术中共享信息是在段一级出现的。8
计算机应用专业
《操
作
系
统》复习题
因此,任何共享的信息可以单独作一个段,同样段中所有内容就可以用相同的方式进行使用,从而规定相同的使用权限;
2)而页是信息的物理单位,在一个页面中可能存在逻辑上互相独立的两组或更多组信息都各有不同的使用方式和存取权限。
因此,分段技术较分页技术易于实现程序或数据的共享。
18、分页式和分段式内存管理有什么区别?
(1)分页是出于系统管理的需要,分段是出于用户应用的需要。一条指令或一个操作数可能会跨越两个页的分界处,而不会跨越两个段的分界处。(2)页大小是系统固定的,而段大小则通常不固定。
(3)逻辑地址表示:分页是一维的,各个模块在链接时必须组织成同一个地址空间;分段是二维的,各个模块在链接时可以每个段组织成一个地址空间。
(4)通常段比页大,因而段表比页表短,可以缩短查找时间,提高访问速度。
19、什么是物理设备?什么是逻辑设备?两者之间有什么区别和联系? 进行实际输入输出操作的硬件设施是物理设备.操作系统中规定用户程序中不要直接使用设备的物理名称,而用一另外的名称代之来操作,这就是逻辑设备.逻辑设备是物理设备属性的表示,它并不特指某个具体的物理设备,而是对应于一批设备,具体的对应则在操作系统启动初始化时确定,或在运行过程中根据设备的使用情况由系统或用户再次确定.20、在设备管理中设置缓冲区的作用是什么?根据系统设置缓冲区的个数,缓冲区可以分为哪几种?
答:在设备管理中设置缓冲区的作用:(1)缓和CPU和I/O设备之间速度不匹配的矛盾。(2)减少中断CPU的次数。(3)提高CPU和I/O设备之间的并行性。
根据系统设置缓冲区的个数,可以分为单缓冲、双缓冲、多缓冲以及缓冲池等四种。
21、何谓文件系统?为何要引入文件系统?文件系统所要解决的问题(功能)主要有哪些?
文件系统是指负责存取和管理文件信息的机构,也就是负责文件的建立、撤销、组织、读写、修改、复制及对文件管理所需要的资源(如目录表、存储介质)实施管理的软件部分。
引入文件系统的目的: 实现文件的“按名存取”,力求查找简单;使用户能借助文件存储器灵活地存取信息,并实现共享和保密。
文件系统所要解决的问题(功能)主要有:1)、有效地分配文件存贮器的存贮空间(物理介质)。2)、提供一种组织数据的方法(按名存取、逻辑结构、组织数据)3)、提供合适的存取方法(顺序存取、随机存取等)。4)、方便用户的服务和操作。5)、可靠的保护、9
计算机应用专业
《操
作
系
统》复习题
保密手段。
22、试说明文件系统中对文件操作的系统调用处理功能。
答:系统调用是操作系统提供给编程人员的唯一接口。利用系统调用,编程人员在源程序中动态请求和释放系统资源,调用系统中已有的功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。系统调用如同一个黑匣子,对使用者屏蔽了具体操作动作,只是提供了有关功能。
有关文件系统的系统调用是用户经常使用的,包括文件的创建(create)、打开(open)、读(read)、写(write)、关闭(close)等。
23、在磁盘调度算法中,SSTF和C_SCAN算法分别是如何实现的?并比较它们的性能。(1)、SSTF方法:根据磁头的当前位置,首先选择请求队列中距磁头距离最短的请求为之服务。
(2)、C_SCAN方法:磁头从盘面上的一端(逐柱面地)向另一端移动,遇到请求立即服务;回返时直接快速移至起始端而不服务于任何请求。如此往返单向地扫描并平均地为各种请求服务。
(3)、性能比较:SSTF方法可以获得较短的寻道时间,但可能有饿死现象。适合于负载不大的系统。C_SCAN方法在负载较大的系统中,可以获得较好的性能,并且不存在饿死现象。给出进程的五种状态变化图,并说明状态变化原因。答:变化原因在图上说明。
第五篇:操作系统实验
操作系统实验
实验一
Linux常用命令实验
一.目的和要求
本实验的目的是熟悉Linux操作系统的命令接口、图形接口和程序接口;了解Linux操作系统的启动过程;了解Linux操作系统的目录结构;用vi编辑器编写简单的C语言程序,并用gcc编译器编译、运行。
二.实验内容
1、实现开机、登录、退出与关机:
(1)如果以root用户登录,则命令窗口的提示符为#;如果以普通用户登录,则命令窗口的提示符为$;登陆用户名:user 密码:123456(2)修改口令(修改口令操作不做):成功进入系统后,在命令提示符后输入“passwd”并键入回车键
(3)退出帐号:命令方式下:logout(4)关机或重启:
命令方式下:halt或reboot 窗口方式下:“桌面”->“注销”
2、掌握的基本常用命令列表
(1)关于目录的操作命令:cd、ls、mkdir、rmdir、pwd等;
(2)关于文件的操作命令:cat、find、man/help、vi/vim、cp、rm、mv、dd、du、df、chmod、ln等;
(3)关于进程管理的操作命令:ps、kill、top、free 等;
(4)关于系统管理的操作命令:whoami、passwd、adduser/useradd、addgroup、userdel、groupdel、su、who、Ctrl+Alt+Fn(n=1、2、3、4、5、6)(在X-Window界面下切换到字符界面,重新登录,Ctrl+Alt+F7返回图形界面)、Alt+Fn(n=1、2、3、4、5、6)(在6个虚拟终端之间切换)等;
(5)安装和卸载文件系统:mount、umount等;
(6)显示有关计算机系统信息的命令:uname(显示操作系统的名称)、uname –n(显示系统域名)、uname –p(显示系统的CPU名称)
(7)其它命令:time、date、cal 等。
3、阅读/etc/inittab 文本文件,思考问题:如果要求启动Linux系统之后进入字符 1
操作系统实验
界面,应如何修改/etc/inittab文件?用户应具有什么权限?
4、切换到不同的虚拟终端,登录到Linux系统
5、vi 编辑器的使用(1)进入和退出vi(2)利用文本插入方式建立一个文件(3)在新建的文本文件上移动光标。
(4)对文本文件执行删除、复原、修改、替换操作。
6、熟悉gcc编译环境:编写一个C语言程序myfile1.c,求1~100中偶数的和,编译并运行。
(1)编译 gcc myfile1.c 运行./a.out(2)编译 gcc –o myfile1 myfile1.c
运行./myfile1
7、编写一个C语言程序myfile2.c,显示字符串“Hello, Linux!”,并将其反向输出。
8、熟悉Linux系统的目录结构,使用命令或者编写C语言程序报告Linux内核的行为。
报告以下内容: CPU类型和型号 内核版本
从系统最后一次启动以来经历了多长时间?形式为dd:hh:mm:ss 当前配置的内存数量 当前可用内存数量
自系统启动以来,发生的所有的中断的次数 从系统启动开始创建的进程数 内核执行的上下文转换的次数
三.实验提示
1、Linux安装
(1)安装前的准备工作 <1>.基本的硬件配置
由于安装涉及到各种硬件的设置,所以在安装前必须了解机器各种硬件的型号,硬盘的使用情况,内存的大小,鼠标的类型及接口,声卡,网卡,显卡,显示器的型号。
操作系统实验
<2>.有关网络的信息
IP地址,掩码,网关IP地址,域名服务器IP地址,域名,宿主机名。<3>.安装方式的选择
•从CD-ROM安装 •从FTP站点安装 •从NFS服务器安装 •从硬盘安装 硬盘分区
硬盘空间必须和计算机上安装的其他操作系统所使用的硬盘空间分开。特别要注意,如果硬盘空间很大,切忌不能将Linux装在8G以后。安装Red Hat Linux至少需要两个硬盘分区:一个或多个“Linux native”类型的分区,一个“Linux swap”类型的分区
分区命名设计Linux 通过字母和数字的组合来表示硬盘分区。
前两个字母-----分区名的前两个字母表明分区所在设备的类型。hd指IDE硬盘,sd指SCSI硬盘。
下一个字母-----分区在哪个设备。例如,/dev/hda(第一个IDE硬盘),/dev/sdb(第二个SCSI硬盘)。
数字-----代表分区。前四个分区(主分区或扩展分区)用数字1到4表示。逻辑分区从5开始。例如, 若IDE硬盘在安装Linux前安装了Windows系统并划分了C盘和逻辑分区D盘,那么D盘就是/dev/hda5, /dev/hda5表示第一个硬盘的第一个逻辑分区。
对于Linux初学者来说,为Linux分两个区(根分区和交换分区)是比较简单方便的。
一个交换分区:用来支持虚拟内存。一个根分区:根分区是/(根目录)的所在地,其中包含启动系统所需的文件和系统配置文件。这个分区要足够大。
一个/usr分区: /usr是Linux系统许多软件所在的地方。一个/home分区:这是用户的主目录所在地。(2)开始安装
注意点:我们一般选择的是图形化的安装方式。它的主要部分是相同的。
可能会在安装完成后第一次启动时才进行网卡的检测。
操作系统实验
在选择图形化界面时,有两种方式gnome和kde;它们各有优缺点。 系统会让你选择启动时是图形化方式,还是字符方式。请大家选择字符方式。
在选择防火墙的时候,在安装时请先不用防火墙。
图形化安装方式下,不能选择启动时的开启服务。可在系统安装完成后用setup命令进行修改。
2、进入Linux(1)登录
第一次登录系统,必须作为“root”登录。这个帐号对系统的一切都有完全的访问权限。
在login:提示符处输入root。按[Enter](或[Return]键).会出现Password提示。输入口令,应该看到类似以下的信息:
[root@localhost /root] #(2)退出
输入[Ctrl]-[D](3)帐号和口令 <1>.帐号
创建新的帐号有几种方法,最基本的方法:useradd命令.[root @ localhost / root] # useradd
Tom
[root @ localhost / root] # <2>.口令
passwd 命令可以用来: 为新创建的用户分配口令。 修改已存在的用户的口令。 修改登录的用户的口令。此时必须以root登录。如:
[root @ localhost / root]# passwd Tom
New UNIX password:
Retype new UNIX password:
passwd:all authentication tokens updated successfully 4
操作系统实验
[root @ localhost / root]#
用新帐户登录:
Red Hat Linux release 7.1(Manhattan)
Kernel 2.0.34 on an i586
login: Tom
Password:
[Tom@ localhost Tom] $ <3>.su 命令
用su,当前的登录段能变成root(或其他用户)的登录段。如:
[Tom@ localhost Tom] $ su
Password:
[root@ localhost Tom] # 也可以用su变成其他用户。这时,必须作为root运行su,给出用户名。<4>.关闭系统
关闭系统时,必须告诉所有的进程结束运行,使用shutdown命令。且只能由root 运行,格式是:
shutdown
-h-------在关闭完成后(Halt)停止系统。
-r--------在关闭完成后重启动(Reboot)系统。
3、vi 编辑器的使用(1)进入和退出vi <1>进入vi 在系统提示符($)下输入命令vi和想要编辑(建立)的文件名(如example),便可进入vi。
<2>退出vi 在命令方式下可有几种方法退出vi编辑器:
:wq 把编辑缓冲区的内容写到正在编辑的文件中,退出编辑器,回到Linux shell下。
:ZZ 仅当作过修改时才将缓冲区内容写到文件上。
操作系统实验
:x 与 :ZZ 相同。
:q!强行退出vi。感叹号(!)告诉vi,无条件退出,丢弃缓冲区内容。这样,先前对该文件所做的修改或输入都被抛弃。(2)新建文件
<1>在Linux提示符$之后,输入命令 :vi myfile,然后按〈Enter〉键。<2>输入插入命令i(屏幕上看不到字符i)。<3>然后,输入以下文本行: To the only book tht I, For mang year you have been my favourite book <4>发现这两行有错,进行改正: 按〈Esc〉键,从插入方式回到命令方式。按光标上移键,使光标移到第一行。
按光标左移键,使光标移到“tht”的第二个“t”处。
输入i(这是插入命令),然后输入a。该行变成如下形式: To the only book that I, 按光标右移键,使光标移到“I”上。
我们想在“I”之后输入一个空格和单词“like”。为此,输入附加命令“a”。结果屏幕显示为:
To the only book that a I,没有出现预期的效果......原来是:我们先前使用了插入命令i,至今并未用〈Esc〉键返回命令方式。所以,输入的所有字符都作为输入文本予以显示。<5>按〈Esc〉键,返回命令方式。
利用x命令删除错误字符。然后,进入插入方式,输入正确字符。<6>最后输入如下所示的文本: To the only book that I like, For many year you have been my favourite book I liveeyou all the time and could not have picked much better.<7>将编辑的文本文件存盘。(利用“:wq”命令,或者“:x”命令)<8>重新进入vi编辑程序,编辑上面的文件。(如:$ vi myfile)
操作系统实验
<9>在屏幕上见到myfile文件的内容。在屏幕底边一行显示出该文件的名称、行数和字符个数:“myfile”4 lines,130 characters 它仍然有错,需进一步修改。
<10>将光标移到第二行的year的r处。输入a命令,添加字符s。
<11>按〈Esc〉,回到命令方式。输入命令10〈Space〉,光标移至何处?---光标右移10个字符位置。
<12>利用取代命令r将liveeyou改为live you。
<13>将光标移至第三行。输入新行命令O(大写字母),屏幕上有什么变化?---光标移至上一行(新加空行)的开头。<14>输入新行的内容: We've been through much together 此时,vi处于哪种工作方式? <15>按〈Esc〉,回到命令方式。将光标移到第四行的live的v字母处。利用替换命令s将v改为k。
<16>在第四行的you之后添加单词very much。<17>修改后的文本是以下内容: To the only book that I like, For many years you have been my favourite book We've been through much together I like you very much all the the time and could not have picked much better.将该文件存盘,退出vi。
<18>重新编辑该文件。并将光标移到最后一行的have的v字母处,使用d$命令将v至行尾的字符都删除。
<19>现在想恢复17步的原状,怎么办?(使用复原命令u)
<20>使用dd命令删除第一行;将光标移至through的u字母处,使用C(大写字母)命令进行修改,随便输入一串字符。将光标移到下一行的开头,执行5x命令;然后执行重复命令(.)。
<21>屏幕内容乱了!现在想恢复17步的原状,怎么办?(不写盘,强行退出vi)
4、Linux内核
操作系统实验
Linux 内核源程序目录结构(/usr/src/redhat/SOURCES)如下: /document :保存帮助文档
/arch
:包含多个子目录,每个存放与特定体系结构相关的代码。如arch/i386(intel 386 体系结构),arch/sparc,arch/alpha等。每个子目录下至少又包含三个子目录:
kernel(存放支持该体系结构特有的诸如信号处理和SMP之类特征的实现);
lib(存放该体系结构特有的诸如Strlen和memcpy之类的高效率函数); mm(存放该体系结构特有的诸如内存管理程序的实现)
/drivers :该目录占内核代码一半以上,包括显卡、网卡、SCSI适配器、软驱、PCI设备和其他外设的软件驱动程序。/fs:包含linux支持的文件系统。
/include :包含源程序中大部分包含(.h)文件。/init: 包含main.c,保存大部分协调内核初始化的代码。/ipc:实现了SYSTEM V的进程间通讯IPC。
/kernel:包含了linux最重要的部分:实现平台独立的基本功能,包括Sched.c、fork.c、exit.c。
/lib :存放字符串和内存操作函数。
/mm:包含与体系结构无关的内存管理代码。/net:包含了linux应用的网络协议代码。/script :包含用来配置内核的脚本。
5、报告Linux状态(/proc 中的信息)
在终端窗口提示符下,可以使用cat命令显示相关文件的内容,如: cat /proc/cpuinfo 通过编写程序,显示相关文件内容:应用文件操作,将相关 /proc中的文件读入到缓冲区中,可用fgets()函数按行取文件中数据,通过strstr()检验包含所需数据字符串。如存在,用printf()函数输出。(1)CPU类型和型号
/proc/cpuinfo文件提供了有关CPU的多种信息,这些信息是从内核里对CPU的测试代码中得到的。文件列出了CPU个数:processor;CPU制造商:vendor_id;CPU架构:model;CPU名称:model name;CPU时钟频率:cpu MHz;CPU缓存大小: 8
操作系统实验
cache size;CPU包含的指令集:flags。文件还包含了以bogomips表示的处理机速度,而且如果检测到CPU的多种特性或bug,文件还会包含相应的标志。该文件的格式为:文件由多行构成,每行包括一个域名称、一个冒号和一个值。
通过fopen()函数打开包含CPU类型和型号的文件cpuinfo,把内容读入字符数组char_all,然后通过strstr()函数查找CPU类型和型号所在的位置,用strncpy()函数拷贝到字符数组中,通过printf()标准输出函数输出。(2)存储器信息
/proc/meminfo 文件给出了内存状态的信息。它显示出系统中物理内存的总量:MenTotal;未使用的物理内存的总量:MemFree;用做文件缓冲的物理内存的总量:buffers;用做缓冲的物理内存的总量:Cached;活跃的内存大小:Active;不活跃的内存大小:Inactive;交换分区的总量:SwapTotal;交换分区未使用的总量:SwapFree等信息。(3)内核版本
文件/proc/version显示了正在运行的内核版本、编译此内核的gcc版本以及该内核的编译时间。
(4)从系统最后一次启动以来的时间,形式为dd:hh:mm:ss uptime读出的时间是以秒计的,所以根据要求要转换为天:小时:分钟:秒。1天为86400秒,1小时为3600秒,1分钟为60秒。通过两个运算符就可以很好的转换:“/”做除法取整运算,“%”做除法取余运算。举例:86800秒,(86800/86400)=1(天),(86800%86400)=400(余400秒);400秒,(400/3600)=0小时,(400%3600)=400(余400秒);400秒,(400/60)=6分钟,(400%60)=40(余40秒)。所以最后结果为:1:0:6:40。(5)其他信息的读取 从/proc/stat中读取信息
CPU花费在用户态、系统态和空闲态的时间——cpu 自系统启动以来,发生的所有的中断的次数——intr 内核执行的上下文转换的次数----ctxt 系统最后启动的时间----btime 从系统启动开始创建的进程数----processes
6、Linux的目录结构
操作系统实验
对于Linux来讲它的树型结构与Windows不同,Windows可以有多个分区,每个分区都有根,但Linux 只有一个根,其他的所有文件、目录或硬盘分区、软盘、光盘、U 盘都必须mount(挂载)到Linux 根下的一个目录中才能被访问和使用。下面列出根目录下的常见系统目录及其用途。
/bin
bin是binary的缩写。这个目录沿袭了UNIX系统的结构,存放着使用者最经常使用的命令。例如cp、ls、cat,等等。
/boot
这里存放的是启动Linux时使用的一些核心文件。
/dev
dev是device(设备)的缩写。这个目录下是所有Linux的外部设备,其功能类似DOS下的.sys和Win下的.vxd。在Linux中设备和文件是用同种方法访问的。例如:/dev/hda代表第一个物理IDE硬盘。
/etc
这个目录用来存放系统管理所需要的配置文件(例如配置文件inittab)和子目录。
/home
用户的主目录,比如说有个用户叫wang,那他的主目录就是/home/wang,也可以用~wang表示。
/lib
这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows里的.dll文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found
这个目录平时是空的,当系统不正常关机后,这里就成了一些无家可归的文件的避难所,有点类似于DOS下的.chk文件。
/media
用来挂载光盘、U盘等文件系统的目录。/misc
用来挂载NFS 共享目录。
/mnt
用于挂载其他硬盘分区系统的目录(如挂载xp分区)。
/opt
某些第三方软件商软件的安装地点,如国产红旗office就存放于此。/proc
这个目录是一个虚拟的目录,它是系统内存的映射,可以通过直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里。
/root
系统管理员(也叫超级用户)的主目录。作为系统的拥有者,总要有些特权,比如单独拥有一个目录。
/sbin
s就是Super User的意思,也就是说这里存放的是系统管理员使用的管理程序。
/tmp
这个目录是用来存放一些临时文件的地方。
/usr
这是最庞大的目录,要用到的应用程序和文件几乎都存放在这个目录 10
操作系统实验
下。其中包含以下子目录:
/usr/X11R6
存放X-Window的目录; /usr/bin
存放着许多应用程序;
/usr/sbin
给超级用户使用的一些管理程序就放在这里;
/usr/include
Linux下开发和编译应用程序需要的头文件,在这里查找; /usr/lib
存放一些常用的动态链接共享库和静态档案库;
/usr/local
这是提供给一般用户的/usr目录,在这里安装软件最适合; /usr/src
Linux开放的源代码就存在这个目录。
/var
这个目录中存放着那些不断在扩充着的东西,为了保持usr的相对稳定,那些经常被修改的目录可以放在这个目录下,实际上许多系统管理员都是这样做的。另外,系统的日志文件就在/var/log目录中。
我们一般日常能经常访问的目录有/home 目录、/mnt目录、/media 目录、/usr 目录。