首页 > 代码库 > OS概论1

OS概论1

  1.设计现代OS的主要目标是什么?

  在计算机上配置操作系统,其主要目标是:方便性,有效性,可扩充性,开放性。

  一个没有OS的操作系统,就必须用机器语言书写程序,如果在计算机上配置了OS,系统便可以使用编译命令将用户使用高级语言书写的程序翻译成机器代码,或者直接通过OS所  提供的各种命令操作计算机系统,极大地方便了用户。

  在未配置OS的计算机系统中,处理机,I/O等设备经常处于空闲状态,各种资源无法得到充分的利用,而OS可以通过合理地组织计算机的工作流程,加速程序的运行,缩短程序的  运行周期,从而提高了系统资源的利用率和系统的吞吐量。

  OS从无结构发展成模块化结构,进而又发展成层次化结构,近年来采用的是微内核结构,一步一步的发展主要是为了系统的可扩充性,而微内核结构能够方便地添加新的功能和模  块,以及对原有的功能和模块进行修改,具有良好的可扩充性。

  随着计算机应用的日益普及,计算机硬件和软件的兼容性问题便受到了关注,世界各国相应地指定了一系列的软,硬件标准,使得不同厂家按照标准生产的软,硬件都能在本国范  围内很好地相互兼容。

  所谓开放性,是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准,事实上,凡遵循国际标准所开发的硬件和软件,都能彼此兼容,方便地实现互连。

  2.操作系统的作用可表现在哪几个方面?

    OS作为用户与计算机硬件系统之间的接口

    OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统,或者说,用户在OS的帮助下能够方便,快捷,可靠地操作计算机硬件和运行自己的程序。

    用户可以通过三种方式使用计算机  1.通过命令方式 2.系统调用方式 3.图标--窗口方式  实现与操作系统的通信,并取得它的服务

    OS作为计算机系统资源的管理者

    在一个计算机系统中,通常都含有多种硬件和软件资源,操作系统的主要功能也是对这些资源进行有效的管理。当一台计算机系统同时供多个用户使用时,很多用户对系统    中共享资源的需求有可能发生冲突,因此,操作系统必须对使用资源的请求进行授权,以协调多用户对共享资源的使用。

    OS实现了对计算机资源的抽象

    对于一台完全无软件的计算机系统,由于它向用户提供的是硬件接口,因此用户必须对物理接口的实现细节有充分的了解,为了方便用户使用I/O设备,人们在裸机上覆盖    上一层I/O设备管理软件,由它来实现对I/O设备操作的细节,并向上将I/O设备抽象为一组数据结构以及一组I/O操作命令,这样用户就可以利用这些命令来进行数据输入输    出,而无须关心I/O是如何具体实现的。即在裸机上铺设的I/O软件隐藏了I/O设备的具体细节,向上提供了一组抽象的I/O设备。

    技术分享

    通常把覆盖了上述软件的机器称为扩充机器或虚机器,它向用户提供了一个对硬件操作的抽象模型。

    I/O设备管理软件实现了对计算机硬件操作的第一个层次的抽象。

    同理,为了方便用户使用文件系统,又可在第一层软件(I/O管理软件)上在覆盖一层用于文件管理的软件,,由它来实现对文件操作的细节,并向上层提供一组实现对文    件进行存取操作的数据结构和命令,即,文件管理软件实现了对硬件资源操作的第二个层次的抽象,依次类推,如果在文件管理软件上在覆盖一层面向用户的窗口软件,则    用户便可以在窗口环境下方便地使用计算机,从而形成一台功能更强的虚拟机。

    OS是铺设在计算机硬件上的多层软件的集合,它们不仅增强了系统的功能,还隐藏了对硬件操作的具体细节,实现了对计算机硬件操作的多个层次的抽象模型。

    不仅可以在底层对一个硬件资源加以抽象,还可以在高层对该资源底层已抽象的模型再次进行抽象,成为更高的抽象模型,随着抽象层次的提高,抽象接口所提供的功能就    越强,用户使用起来也越方便。

  3.为什么说操作系统实现了对计算机资源的抽象?

  隐藏了具体的细节,向上提供了一组抽象。

  4.何为脱机I/O和联机I/O?

  在脱离主机的情况下,进行数据的输入和输出,称为脱机输入/输出方式,把在主机的直接控制下进行的输入输出的方式称为联机输入输出方式。脱机的优点有1.减少了CPU的  空闲时间,2.提高了I/O速度。

  5.单道批处理系统

  为实现对作业的连续处理,需要把一批作业以脱机的方式输入进去,并在系统中配上监督程序,在它的控制下,使这批作业能一个接一个地处理。虽然系统对作业的处理是成批  进行的,但在内存中始终只保持一道作业,故称为单道批处理系统。

  6.多道批处理系统

  在该系统中,用户所提交的作业先存放在外存上,并排成一个队列,称为‘后备队列’,然后由作业调度程序按一定的算法,从后备队列中选择若干个作业调入内存,使它们共享  CPU和系统的各种资源。由于同时在内存中装有若干道程序,这样便可以在运行程序A时,利用其因I/O操作而暂停执行时的CPU空挡时间,在调度另一道程序B运行,同样可以  利用程序B在I/O操作时的CPU空挡时间,在调度程序C,使多道程序交替运行,这样便可以保持CPU处于忙碌状态。

  7.分时系统

  分时系统是指,在一台主机上连接多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。

  为了实现人机交互,必须解决的问题是,如何使用户能与自己的作业进行交互。为此,系统必须能提供多个终端,同时给多个用户使用,再是,当用户在自己的终端上键入命令  时,系统能及时接收,并及时处理该命令,在将结果返回给用户。此后,用户可根据系统返回的响应情况,在继续键入下一条命令,这就是人机交互。而且,允许有多个用户同  时通过自己的键盘键入命令,系统也能全部及时接收并处理。

  及时接收

  要做到及时接收多个用户键入的命令或数据,只需在系统中配置一个多路卡就可以了,比如,主机需要连接64个终端时,就配置一个64用户的多路卡。多路卡的作用是,实现  分时多路复用,即主机以很快的速度周期性地扫描各个终端,在每个终端处停留很短的时间,用于接收从终端发来的数据。这样,就可以用很短的时间完成一次扫描,这样就分  时地接收各个用户从终端上输入的数据一次。为了能使从终端上输入的数据被依次地进行处理,还需要为每个终端配置一个缓冲区,用来暂存用户键入的命令或数据。

  及时处理

  人机交互的关键在于,用户键入命令后,能对自己的作业及运行及时地实施控制,或进行修改,因此,各个用户的作业都必须驻留在内存中,并能频繁地获得处理机运行。否   则,用户键入的命令将无法作用到自己的作业上。

  作业直接进入内存,因为作业在磁盘上是不能运行的,所以作业应直接进入内存

  采用轮转运行方式,如果一个作业独占CPU连续运行,那么其他的作业就没有机会被调度执行,为避免一个作业长期独占处理机,引入了时间片的概念,一个时间片,就是一段  很短的时间,系统规定每个作业只能运行一个时间片,然后就暂停该作业的运行,并立即调度下一个作业运行,如果在不长的时间内能够使所有的作业都执行一个时间片的时   间,便可以使每个用户都能及时地与自己的作业进行交互,从而可使用户的请求得到及时响应。

  分时系统的特征:多路性,独立性,及时性,交互性。

OS概论1