关于计算机操作系统的定义_第1页
关于计算机操作系统的定义_第2页
关于计算机操作系统的定义_第3页
关于计算机操作系统的定义_第4页
关于计算机操作系统的定义_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一关于术语的定义对任何一个名词概念,应该如何解释、定义、描绘它?要解释、定义、描绘到何种程度?这首先涉及,什么是定义?笔者早在多年前就提出,A的定义应是能足以用来判断任何一个东西事物是A或不是A的判断工具和根据1-2。所以达标的定义一定要明确、明晰、严格到可以作为上述判断工具的程度,否那么就只能算是解释或描绘或者说定义未达标。也就是说,A的定义一定要能提醒A的唯一性能把A与非A这世上所有其他事物区分开来的唯一性。对是什么问题的答案,在不同场合和情形下,对于不同提问对象,对答案的要求级别是不同的,有时需要给出最严格的定义,有时只需给出某种程度或角度的解释或描绘。而术语工作者,辞典和百科全书编纂者

2、,以及教材和老师等,有责任给出达标的定义要尽量给出符合以上定义的定义要求的最准确的答案,而非泛泛的不明确的解释或描绘。例如在操作系统原理等课程中介绍什么是操作系统时,假如学生学完后不能把操作系统与网管软件区分开,那就是定义未达标。再例如在操作系统原理等课程中介绍什么是虚存时,假如学生学完后不能把虚存与交换技术、多道、分区等区别开本文由论文联盟.Ll.搜集整理并理清关系,那就是定义未达标。下面以操作系统的定义为例进展讨论。二国内外对操作系统的常见定义操作系统定义通常出如今辞典、百科全书、教材中,我们以最有代表性的教材为例。目前国外最著名的操作系统原理教材?现代操作系统?3中,没有对操作系统给出一

3、个专门的定义,而是在什么是操作系统中通过作为扩展机器的操作系统作为资源管理者的操作系统这两小节来详细分述操作系统的两个作用或功能。另一本比拟著名的教材,?操作系统精华?4中,没有专门提出或答复操作系统是什么的问题,而是在操作系统的目的与功能这一节中,有以下一段总的介绍:操作系统是控制应用程序执行的程序,并充当应用程序和计算机硬件之间的接口。它有以下三个目的:方便操作系统使计算机更易于使用;有效允许以更有效的方式使用计算机系统资源;扩展才能在构造操作系统时,应该允许在不阻碍效劳的前提下有效地开发、测试和引进新的系统功能。接下来,该教材以三个小节分别讲述这三个目的:作为用户/计算机接口的操作系统作

4、为资源管理器的操作系统操作系统的易扩展性。国内外其他教材和辞典中操作系统的定义大都与以上两个定义类似,限于篇幅,不再一一列举。三对以上定义的评析和看法笔者认为,以上定义与角度虽然都是操作系统的重要特性,但都不能提醒操作系统的本质特性,因为它们都缺乏以把操作系统与其他软件区分开来因为以上定义角度或特性都也可以用于描绘很多上层软件。例如资源管理观点,计算机系统中很多上层应用软件都具有资源管理功能或特性,都可以看作是对某种或某些资源的管理,如数据库管理软件、网管软件等。所以,从资源管理角度不能把操作系统与其他软件区分开来。即便是说操作系统是管理硬件资源的,那网管软件和一些第三方厂商的设备管理工具也是

5、管理硬件资源的,又如何区分?同样的理由,以上其他定义角度也都不能作为操作系统的本质特性只能作为其重要特性和区分于其他软件的区分判断工具。四操作系统的定义笔者认为,只有硬件相关、应用无关才是操作系统的本质特性才是据此和真正足以能把操作系统与其他软件区分开来的唯一判断工具,才能作为操作系统的本质定义。因此,笔者早在1997年就提出了以下关于操作系统的定义:操作系统是计算机中最重要和最底层的系统软件,是这样的一组系统程序的集成:这些系统程序在整个计算机系统的运行过程中,在用户对计算机的使用过程中,在用户程序的运行过程中包括用户程序的装入、启动、运行、完毕和退出的完好过程中,负责完成所有硬件相关、应用

6、无关的根本使用工作,为使计算机系统能高效、平安、可靠、方便地运转,而从最底层统一提供所有通用的帮助和统一的管理。2见图1、图2下面对上述定义中诸要点进展详细的理解分析和解释说明。一关于定义的由来操作系统的存在本身是从整个计算机系统的运行目的和用户要求出发安排的,即,是从整个计算机系统的方便、效率、可靠、平安的整体目的出发安排的。为实现该整体目的,整个计算机系统有明确的功能分工层次划分见图1,这种功能分工层次划分及操作系统在其中的位置具有如下特点和优点:1.整个计算机系统的这种分工分层的主要划分原那么是,把上层子集所共需的功能,从上层别离出来,集中到下层中,使下层的功能是上层子集所共需的。这样做

7、的目的是防止功能重复和代码重复导致的重复劳动和重复存储。而根据这种下层为上层所共需的特性来类推,最底层的功能就是上层所有各层软件所共需的功能。而在计算机系统的整体功能分工层次中图1,操作系统的角色分工正是处于软件层次的最底层,即,操作系统的功能是上层所有其他软件所共需的。这正是应用无关的由来之一。2.在上述分工分层中,操作系统处于所有软件最底层,因此恰好处于硬件与其他软件的分界限上和接口上,操作系统出现和存在的理由和原因之一,就是作为硬件与其他软件之间的分界限和接口,负责完成所有硬件相关的工作,对上层屏蔽了所有硬件相关细节,使上层所有软件都是硬件无关的,从而使上层软件可以不受底层硬件变化的影响

8、,并大大减轻上层软件的编程负担。这正是硬件相关的由来。3.分工分层同时也就意味着下层对上层具备了集权和隔离。整个计算机系统拥有众多的用户、用户程序和各种资源中央处理器、内存、外存、各种输入/输出设备、大量数据和信息资源等,显然,需要从整个计算机系统对所有这些用户、程序、资源进展统一管理,以确保整个计算机系统及其所有组成成分,所有用户、程序和资源的可靠、平安、效率和方便。而上述图中的分工分层同时也正是通过这种集权和隔离而为整个计算机系统的统一管理提供了可能性。最底层意味着最集权,因此这种最统一的管理正是由最底层的操作系统承当的。同时,这种统一管理也是应用无关和硬件相关的。尤其是硬件相关的内容,对

9、系统平安与可靠性至关重要。还有,如今这种统一管理通常是强迫的导致前述统一帮助也是强迫的。4.操作系统具有提供帮助和统一管理的双重角色,这双重角色多少也来自于上述整个计算机系统的功能分工分层中的同样特性:下层对于上层既提供上层所共需的帮助功能,同时也对于上层起到管理和集权、隔离的权威作用。而最底层那么在提供所有上层共需帮助的同时,也对所有上层具有管理权威。这最底层即操作系统。5.上述的功能分工分层,是整个计算机系统软硬件各层次分工包括软件与硬件之间的分工,硬件各层次间的分工,软件各层次间的分工及至整个人类社会分工都在基于同样理由而普遍采用的技术之一。目的都是为了方便、效率、可靠、平安。6.从操作

10、系统在历史上最初出现至今,操作系统在计算机系统中的层次地位和角色分工、功能作用、本质特性,就一直如上所述。二关于硬件相关和应用无关的详细含义1.什么是硬件相关和硬件无关1什么是硬件相关hardaredependent,ahinedependent:硬件相关在不同场合有不同含义,笔者将之归结为直接狭义与间接广义两种:一个程序、软件或一段代码是狭义的或直接的硬件相关的,是指这个程序或这段代码中包含对I/设备硬件物理地址、设备接口存放器、设备接口缓冲区等的直接读写。计算机系统中的所有软件中通常只有操作系统才是狭义的硬件相关的。一个程序或软件是广义的或间接的硬件相关的,是指这个程序或软件包含或涉及硬件

11、物理地址或设备接口存放器等硬件物理细节。如DEBUG程序、故障诊断程序、编译程序、网管软件、以及一些第三方厂商的设备管理工具等。这些广义硬件相关程序与操作系统即狭义硬件相关程序最根本的区别是,这些广义的硬件相关程序的代码中不包含对物理地址和设备接口的直接读写。当这些广义的硬件相关程序想获取或控制硬件相关状态时,它们必须间接通过调用操作系统来进展。这些广义硬件相关程序中的硬件相关性通常表达在数据中而非表达在代码中。2什么是硬件无关hardarEindependent,ahineindependent与上述硬件相关的定义相应,硬件无关的定义或解释是:一个程序、软件或一段代码是狭义的或直接的硬件无关

12、的,是指这个程序或这段代码中不包含任何硬件相关的因素。一个程序或软件或一段代码是广义的硬件无关的,是指这个程序或软件不包含对I/设备硬件物理地址或设备接口存放器、设备接口缓冲区等的直接读写。即,广义硬件无关由狭义硬件无关加上广义硬件相关而组成。大多数应用程序是硬件无关的,例如编辑软件等。2应用无关和应用相关1什么是应用无关appliatinindependent一个工作、功能或代码是应用无关的,是指不管用计算机来做什么,不管在计算机上运行什么应用程序,都要普遍和频繁涉及的工作,是用户共需的,且工作过程都是一样的,是有共性可循的,却又与应用本身的问题没有直接关系的。2什么是应用相关appliat

13、independent一个工作是应用相关的,是指该工作与详细应用相关,是只有某一类型详细应用才会需要和涉及的,且其工作过程随不同应用而变化。三关于用户程序运行期间上述对于操作系统定义中用户程序运行期间的界定和强调,不仅进一步界定和强调了操作系统的这一重要特性,还进一步区分了操作系统与编译系统。其实,对狭义与广义硬件相关的区分,已经足以把编译程序与操作系统区分开来,编译程序是广义硬件相关的,而操作系统是狭义硬件相关的。而这里的区分是:编译程序只用于产生目的代码,而操作系统那么是在目的代码运行期间提供帮助。四云操作系统、机群操作系统、网格操作系统、虚拟机操作系统等是否操作系统云操作系统、并行操作系

14、统、机群集群操作系统、分布式操作系统、网格操作系统等,在本质上都是在宿主机操作系统上运行的应用程序,这五种操作系统的功能不构成典型完好独立的操作系统,依赖于并与底层的宿主机操作系统互相补充,从而形成一个广义的大的操作系统,管理由多台计算机资源组成的一个合集。虚拟机的情况比拟复杂多样,有些虚拟机在宿主机操作系统下运行,有些虚拟机在裸机上运行,还有些其他更复杂的情况。但无论哪种情况,都可以并应该这样理解:在本文提出的操作系统定义中,操作系统所基于的计算机,可以是一个真实的物理的计算机,也可以是一个虚拟机。但无论基于哪个,本文操作系统定义中的操作系统所有特性和功能都不变,即,基于真实计算机的操作系统

15、与基于虚拟机的操作系统是没有区别的。正因如此,才会有这样一种奇妙现象的普遍出现:同样一个操作系统版本,既可以安装于一个真实计算机上,也可以不加改变而安装于一个虚拟机上。所以,虚拟机操作系统的功能是完好独立的,是典型和普通的操作系统,与基于真实计算机的操作系统没有任何区别,只不过是基于虚拟机运行。相对于前述云操作系统等五种操作系统要依赖于宿主机操作系统而言,当虚拟机在宿主机操作系统上运行时,基于虚拟机的操作系统是完全独立于和无关于宿主机操作系统的。就图1展示的计算机系统层次而言,基于裸机的虚拟机相当于在最底层的操作系统之下又加了一层虚拟机。但无论虚拟机是基于裸机还是基于宿主机操作系统,在虚拟机所

16、模拟的计算机中、所向上展示和构成的计算机系统中,在这个虚拟机计算机系统中,图1的层次是不变的,只不过底层计算机硬件换成了虚拟机。五关于操作系统译名笔者认为,peratingsyste译为操作系统并不适宜,运行系统似乎更适宜一些。原因如下:perating在英文中不仅有操作的含义,还有运行、运转、运营等含义;而peratingsyste这个计算机专业英文词组本身在当初命名时1962年,取代监控程序nitr等,似乎更多地是取其运行含义,而非操作含义。这是因为,peratingsyste的功能,更多地、更主要是表达在对整个计算机系统的运行控制和每个用户程序的运行控制上,而非重点表达在对用户操作的实现

17、和控制上。虽然操作系统提供了大量用户操作命令和图形界面操作,但操作系统的最主要和本质界面是操作系统内核对外提供的系统调用界面,而系统调用界面是在用户程序运行期间被用户程序调用的,作用于程序运行级,而非用户操作级。举个极端的例子,一些自动化系统,除了开关机外,需要的用户操作很少,甚至不需要用户再进展除开关机外的任何操作,更甚至,连开关机都不需要用户操作,而是自动检测自动进展开关机的,这样的自动化系统上,当然也有操作系统,显然其对运行控制的功能更明显一些、侧重一些。虽然普通的计算机系统上用户操作的数量没有少到这么极端,但举这个极端例子是想说明,任何操作系统的侧重点都是对系统运行和程序运行的控制和实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论