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

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

时间: 2024-12-24 22:48:22

OS概论1的相关文章

OS概论2

实时系统 实时即表示及时,实时计算可以定义为这样一类计算:系统的正确性,不仅由计算的逻辑结果来确定,而且还取决于产生结果的时间.事实上,实时系统最主要的特征,是将时间作为关键参数,它必须对所接收到的某信号做出‘及时’或‘实时’的反应.由此得知,实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行. 实时系统的类型 (1)周期性实时任务和非周期性实时任务.周期性实时任务是这样一类任务,外部设备周期性地发出激励信号给计算机,要求它按指定周期循环

自考《操作系统概论》之宏观理解

操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在"裸机"上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行. 操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口.操作系统的功能包括管理计算机系统的硬件.软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持,让计算机系统所有资源最大限度地发挥作用,提供各种形式的用户界面,使用户有一个好的工作环境,为其它软件的开发提供必要的服务和相应

Core OS 层

Core OS层的底层功能是很多其他技术的构建基础.通常情况下,这些功能不会直接应用于应用程序,而是应用于其他框架.但是,在直接处理安全事务或和某个外设通讯的时候,则必须要应用到该层的框架. Accelerate 框架 iOS 4.0引入了Accelerate框架(Accelerate.framework).该框架的接口可用于执行数学.大数字以及DSP运算.和开发者个人编写的库相比,该框架的优点在于它根据现存的各种iOS设备的硬件配置进行过优化.因此,您只需一次编码就可确保它在所有设备高效运行.

iOS框架介绍(六)---Core OS 层(转)

目录 Core OS 层 Accelerate 框架 External Accessory 框架 Security 框架 System Core OS 层 Core OS层的底层功能是很多其他技术的构建基础.通常情况下,这些功能不会直接应用于应用程序,而是应用于其他框架.但是,在直接处理安全事务或和某个外设通讯的时候,则必须要应用到该层的框架. Accelerate 框架 iOS 4.0引入了Accelerate框架(Accelerate.framework).该框架的接口可用于执行数学.大数字

计算机组成原理和结构图式(第一章 概论)

计算机组成原理和结构图式(第一章 概论) 1.计算机硬件概念 CPU(中央处理器) 构成:运算器.控制器.寄存器组 运算器:算术运算(定点数.浮点数)和逻辑运算 控制器:微命令(组合逻辑和微程序控制方式) 寄存器组:存放数据信息和控制信息 存储器 缓存>主存>外存 主存:固定地址CPU按地址访问,与CPU合称主机 外存:先调入主存 高速缓存:CPU和主存之间,集成在CPU内部 输入/输出设备(Input/Output,I/O)外设 总线 分时共享:一发多收 系统总线分为 (1)数据总线(运算器

os -- 进程的控制

os -- 进程的控制 新建 模板 小书匠 参考 <计算机操作系统>(第四版) 汤小丹等编著 概念引入 进程控制 进程控制是最基本的功能,负责创建进程.结束进程等功能,一般由 OS 内核中的原语来实现 原语 所谓原语,就是由若干条指令组成的,用于完成一定功能的一个过程,算是不可分割的.最基本的操作 Note 接下来原语基本用于所有的操作 操作系统内核 操作系统将一些常用或者运行频率较高的模块(如时钟管理.进程调度等)常驻内存,这些就被称为 OS 内核 两大功能 支撑功能 中断处理 时钟管理 原

Day5模块-os和sys模块

os模块:操作系统调用的接口 -------------------------------------------------------------------------------------------- >>> os.listdir() #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印['.android', '.PyCharm2016.3', '.PyCharm2017.1', '.VirtualBox', '.YYBox', 'AppData', 'Ap

JVM学习(2)——技术文章里常说的堆,栈,堆栈到底是什么,从os的角度总结--转载http://www.cnblogs.com/kubixuesheng/p/5202561.html

转载自---http://www.cnblogs.com/kubixuesheng/p/5202561.html 俗话说,自己写的代码,6个月后也是别人的代码--复习!复习!复习!涉及到的知识点总结如下: 堆栈是栈 JVM栈和本地方法栈划分 Java中的堆,栈和c/c++中的堆,栈 数据结构层面的堆,栈 os层面的堆,栈 JVM的堆,栈和os如何对应 为啥方法的调用需要栈 属于月经问题了,正好碰上有人问我这类比较基础的知识,无奈我自觉回答不是有效果,现在深入浅出的总结下: 前一篇文章总结了:JV

Qt在Mac OS X下的编程环境搭建(配置Qt库和编译器,有图,很清楚)

尊重作者,支持原创,如需转载,请附上原地址:http://blog.csdn.net/libaineu2004/article/details/46234079 在Mac OS X下使用Qt开发,需要配置Qt库和编译器.编译器只能使用苹果公司自主研发的Clang.1.分别下载并安装XCode和Command Line Tools(必须安装),安装完毕后,Clang就有了. https://developer.apple.com/downloads/ 2.下载Qt并默认安装 http://down