操作系统--引论

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bible_reader/article/details/52685627

操作系统引论

    计算机系统是由软件和硬件组成。操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充,其他的系统软件(比如编译和汇编程序)都是在操作系统的基础上进行工作的,它是最重要的系统软件。

1、操作系统作用

(1)作为用户与计算机硬件系统之间接口

    利用命令方式调用接口取得操作系统的服务
    利用操作系统提供的系统调用取得操作系统的服务
    利用图形和窗口形式取得操作系统的服务
(2)作为计算机系统资源的管理者
    计算机系统资源主要分为:处理机、存储器、I/O设备以及信息(数据和程序)。为了更好地方便用户使用计算机系统资源,操作系统需要管理这些计算机系统资源。
(3)抽象计算机系统资源
    纯粹的计算机裸机提供的是实际的硬件接口,用户是很难直接进行使用的,除非对硬件接口非常熟悉。操作系统作为计算机系统的第一层软件,必须向用户屏蔽实际的硬件接口并提供简单方便的操作指令或者图形化接口,让用户在使用这些计算机系统资源时不必关心内部的物理逻辑是怎样实现的,从而抽象计算机系统资源。

2、发展过程

(1)无操作系统的计算机系统

  • 人工操作方式
       将原始的记录程序和数据的纸带装入输入机,再启动输入机将程序和数据输入计算机,最后启动计算机运行程序。
       特点:用户独占全机、CPU需等待人工装和拆纸带等操作再运行。
  • 脱机输入输出方式
       输入时,利用外围机将输入机内的程序和数据输入到磁盘或磁带上,待CPU需要利用这些程序和数据时,直接从磁盘或磁带上调入内存;同样输出时,先利用外围机将数        据输出到磁盘或磁带上,然后在另一台外围机的控制下通过输出设备将数据输出。

       特点:减少了CPU的空闲时间、提高了I/O速度。

(2)单道批处理系统

    将一批作业以脱机的方式输入到磁盘或磁带上,在监督程序的控制上,让这一批作业依次一个一个的装入内存,再将控制权交给当前作业,待该作业处理完毕后,将控制权再交还给监督程序,监督程序将第二个作业装入内存...依此类推,计算机系统这样一个一个地将该批次作业处理完。由于内存中始终只能保留一道作业,所以称之为“单道批处理系统”。

    特点:作业具有自动性、顺序性、单道性。

(3)多道批处理系统

    将用户所提交的作业都先存放在外存上并排成一列,由作业调度程序按照一定的算法从作业队列中选择若干个作业同时调入内存(这些调入内存的作业共享CPU和系统的各种资源)。当某个作业因为I/O请求或者其他中断执行时,由系统调度程序选择另一道作业进行执行,从而使得CPU一直处于忙碌状态。

    特点:提高了CPU利用率、提高内存利用率、提高了I/O设备的利用率、增加了系统吞吐量,但是作业的周转周期可能会增长、用户对提交的作业不能进行交互操作。

(4)分时系统

    在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互的方式使用计算机,共享主机中的资源,系统则按照分时的原则为每个用户服务。

    特点:宏观上多个用户同时工作,微观上,每个用户的作业轮流运行一个时间片;每个用户各占一个终端,批次操作互不干扰;用户的请求能得到及时响应;用户可以交互地与系统进行人机对话。

(5)实时系统

    系统能够及时地响应外部事件的请求,在规定的时间内完成对事件的处理,并控制所有实时任务协调一致地运行。

3、基本特征

(1)并发性

    宏观上,一段时间内有多个程序在同时运行。(基于此,引入进程和线程)

(2)共享性

    系统中的资源可以供内存中的多个并发执行的进程(线程)共同使用,也称为资源复用。(互斥共享和同时访问方式)

(3)虚拟技术

  • 时分复用虚拟技术

       一段时间内,允许多道程序分时使用计算机系统资源。比如分时复用处理机,在该时间间隔内,可以允许多个程序通过时间片方式获得处理机的使用权。

  • 空分复用虚拟技术

       在计算机系统资源的空间维度上,对计算机系统资源进行划分。比如时分复用磁盘或磁带,将磁盘磁带划分为几个常用的区,这些区相当于一个子磁盘或子磁带。

(4)异步性

    作业在调入内存获取CPU使用权开始运行后,若需要使用的系统资源正被其他作业使用,则该作业必须等待系统资源被释放后才能继续执行后面的作业。内存中的进程什么时候获得处理机使用权限,什么时候需要等待请求的资源释放等,这些会造成作业的执行速度不可预知,此即异步性。

4、主要功能

    计算机操作系统的主要任务是为多道程序的运行提供良好的运行环境,以保证多道程序能够有条不紊、高效地运行,并能最大程度地提高系统中各种资源的利用率和方便用户的使用。

(1)处理机管理功能

    在多道程序之间,就处理机方面而言,需要解决的问题包括:如何分配被它们共享的处理机,使得CPU既能满足各程序的运行的需要,同时又能提高处理机的利用率,以及一旦把处理机分配给某程序后何时将处理机收回等。这些问题都是操作系统的处理机管理功能负责的。

由于处理机的分配和运行都是以进程为基本单位的,所以处理机的管理功能归结为对进程的管理:进程控制、进程同步、进程通信和进程调度等。

(2)存储器管理功能

    在多道程序之间,就存储器方面而言,需要解决的问题包括:应如何为每道程序分配必要的内存空间,使它们“各得其所”且不因相互重叠而丢失信息,以及应如何防止某道程序出现异常的情况而破坏其他程序等。这些问题是操作系统的存储器管理功能负责的。操作系统的存储器管理应该具有内存分配、内存保护、地址映射和内存扩充等功能。

(3)设备管理功能

    在多道程序之间,就I/O设备方面而言,需要解决的问题包括:如何分配各种类型的I/O设备、如何做到既能够方便用户对I/O设备的使用,同时提高设备的利用率。这些问题是操作系统的设备管理功能负责的。该功能主要是操作系统用于管理计算机系统的所有外围设备:完成用户进程提出的I/O请求、为用户进程提供所需的I/O设备、提高CPU和I/O设备的利用率、提高I/O速度等。

(4)文件管理功能

    用户进程有时需要使用以文件形式村反的的程序和数据,而这些文件的组织,安全性和一致性问题都是操作系统的文件管理功能负责的。操作系统的文件管理应该具有文件存储空间的管理、目录管理和文件读写保护和管理等功能。


阅读更多
换一批

没有更多推荐了,返回首页