zoukankan      html  css  js  c++  java
  • 操作系统的四个特性

    一、操作系统的四个特性
     
    1)并发(concurrence)
    并发:指处理多个同时性活动的能力。
    并行性与并发性这两个概念是既相似又区别的两个概念。
    并行性是指两个或者多个事件在同一时刻发生,这是一个具有微观意义的概念,即在物理上这些事件是同时发生的;不同程序在多台机器上同时执行;
    而并发性是指两个或者多个事件在同一时间的间隔内发生,它是一个较为宏观的概念。
     
    单CPU上,多个程序运行:
    宏观上:同时执行;
    微观上:任何时刻只有一个程序真正执行,即这些程序在CPU上是轮流执行的; 
     
    在多道程序环境下,并发性是指在一段时间内有多道程序在同时运行,但在单处理机的系统中,每一时刻仅能执行一道程序,故微观上这些程序是在交替执行的。 
    应当指出,通常的程序是静态实体,它们是不能并发执行的。为了使程序能并发执行,系统必须分别为每个程序建立进程。
    进程,又称任务,简单来说,是指在系统中能独立运行并作为资源分配的基本单位,它是一个活动的实体。
    多个进程之间可以并发执行和交换信息。一个进程在运行时需要运行时需要一定的资源,如 cpu,存储空间,及i/o设备等。在操作系统中引入进程的目的是使程序能并发执行。
     
     
    2)共享 (sharing)
    所谓共享是指,系统中的资源可供内存中多个并发执行的进程共同使用。
    由于资源的属性不同,故多个进程对资源的共享方式也不同,可以分为:互斥共享方式 和 同时访问方式
    互斥共享:例如打印机
    同时共享:例如磁盘文件
     
     
    3)虚拟 (virtual)
    是指通过技术吧一个物理实体映射为若干个逻辑实体(分时或分时间)。在操作系统中虚拟的实现主要是通过分时的使用方法。显然,如果n是某一个物理设备所对应的虚拟逻辑设备数,则虚拟设备的速度必然是物理设备速度的1/n。
    虚拟是操作系统管理系统资源的重要手段,可提高资源的利用率。
     
    4)异步 (asynchronism)---随机
    操作系统必须对不可预测的次序发生的事件进行响应并处理。
    在多道程序设计环境下,允许多个进程并发执行,由于资源等因素的限制,通常,进程的执行并非“一气呵成”,而是以“走走停停”的方式运行。
    内存中每个进程在何时执行,何时暂停,以怎样的方式向前推进,每道程序总共需要多少时间才能完成,都是不可预知的,或者说,进程是以一步的方式运行的。
    尽管如此,但只要运行环境相同,作业经过多次运行,都会获得完全相同的结果。
     
     
     二、从资源管理观点看,操作系统具有五大功能:  

     

    存储器管理-----处理机管理------设备管理--------文件管理--------作业管理

     

    1. 存储器管理

    主要任务:

    为多道程序的并发运行提供良好环境;

    便于用户使用存储器;

    提高存储器的利用率;

    能从逻辑上来扩充内存。

     

    存储器管理应具有以下功能:

    内存分配:多道程序能并发执行的首要条件是,各道程序都有自己的内存空间,因此,为每道程序分配内存空间是存储器管理的最基本功能。

    OS实现内存分配可采取以下两种方式:静态分配方式、动态分配方式。

     内存保护:为保证各道程序都能在自己的内存空间运行而互不干扰,要求每道程序在执行时能随时检查对内存的所有访问是否合法。

     地址映射:在多道程序的系统中,操作系统必须提供把程序地址空间中的逻辑地址转换为内存空间对应的物理地址的功能。

    内存扩充:由于物理内存的大小可能限制了大型作业或多个作业的并发执行,为了满足用户的要求并改善系统性能,必须对内存加以扩充。

     

    2. 处理机管理

    主要任务:是对处理机进行分配并对其运行实施有效管理。对处理机的管理,可归结为对进程的管理。

     进程管理包括以下四方面功能:

     A.进程控制:当用户作业要运行时,应为之建立一个或多个进程,并为它分配除处理机以外的所有资源,将它放入进程就绪队列。当进程运行完成时,立即撤消该进程,以便及时释放其所占有的资源。

     B.进程同步:所谓进程同步是指系统对并发执行的进程进行协调。有两种协调方式:进程互斥方式、同步方式。

        方式1. 是最基本的进程同步方式,是使诸进程以互斥方式访问临界资源。

        方式2. 对彼此相互合作去完成共同任务的诸进程,由同步机制对它们的执行次序加以协调。

     C.进程通信:对于相互合作的进程,在它们运行时,相互之间往往要交换一定的信息,这种进程间所进行的信息交换称为进程通信。

     D.调度:包括作业调度、进程调度两步。作业调度是按一定算法从后备队列中选出若干个作业,为它们分配资源,建立进程,使之成为就绪进程,并把它们按一定算法插入就绪队列。

                   进程调度是指按一定算法,如最高优先算法,从进程就绪队列中选出一进程,把处理机分配给它,为该进程设置运行现场,并使之投入运行。

     

    3.设备管理

    主要任务有以下五个:

    A.完成用户提出的I/O请求;

    B.为用户分配I/O设备;

    C.提高CPU和I/O设备的利用率;

    D.提高I/O速度;

    E.方便用户使用I/O设备。

     

    为实现上述任务,设备管理应具有下述四种功能:

    A.缓冲管理:基本任务是管理好各种类型的缓冲区。几乎所有的外围设备与处理机交换信息时,都要利用缓冲区来缓和CPU与I/O设备间速度不匹配的矛盾,提高CPU与I/O设备、设备与设备间操作的

                          并行程度,以提高CPU和I/O设备的利用率。

    B.设备分配:基本任务是根据用户的I/O请求和所采用的分配算法对设备进行分配,并将未获得所需设备的进程放进相应设备的等待队列。

    C.设备处理:基本任务是实现CPU和设备控制器之间的通信,即启动指定的I/O设备,完成用户规定的I/O操作,并对由设备发来的中断请求进行及时响应,根据中断类型进行相应的处理。

    D虚拟设备:系统可通过某种技术使该设备成为能被多个用户共享的设备,以提高设备利用率及加速程序的执行过程。可使每个用户都感觉到自己在独占该设备。

     

    4.文件管理

    文件管理应具有下述四个功能:

    A.文件存储空间的管理;

    B.目录管理;

    C文件读、写管理;

    D.文件的共享与保护

     

    5. 作业管理

    主要任务:是根据系统条件和用户需要,对作业的运行进行合理的组织及相应的控制。

     

    作业管理应具备两方面的功能:

    A.作业调度:作业调度是指根据系统的能力和当前作业的运行情况,按一定策略,从后备作业队列中选出一批作业,为它们分配所需的I/O设备和存储空间,

                          将它们调入内存并为之建立相应的进程,使之成为具有获得处理机资格的候选进程。

     B.作业控制:作业控制是指作业从进入系统开始,直到运行完成的整个过程中,用户可通过某种形式向系统发出各种命令,以对自己的作业进行控制和管理。

     

     

    三、操作系统的类型也可以分为几种:

    批处理系统,分时操作系统,实时操作系统,网络操作系统等。

    1)  批处理系统:首先,用户提交完作业后并在获得结果之前不会再与操作系统进行数据交互,用户提交的作业由系统外存储存为后备作业;数据是成批处理的,有操作系统负责作业的自动完成;支持多道程序运行。

    2)  分时操作系统:首先交互性方面,用户可以对程序动态运行时对其加以控制;支持多个用户登录终端,并且每个用户共享CPU和其他系统资源。

    3)  实时操作系统:会有时钟管理,包括定时处理和延迟处理。实时性要求比较高,某些任务必须优先处理,而有些任务则会被延迟调度完成。

    4)  网络操作系统:网络操作系统主要有几种基本功能

    (1)      网络通信:负责在源主机与目标主机之间的数据的可靠通信,这是最基本的功能。

    (2)      网络服务:系统支持一些电子邮件服务,文件传输,数据共享,设备共享等。

    (3)      资源管理:对网络中共享的资源进行管理,例如设置权限以保证数据源的安全性。

    (4)      网络管理:主要任务是实现安全管理,例如通过“存取控制”来确保数据的存取安全性,通过“容错性”来保障服务器故障时数据的安全性。

    (5)      支持交互操作:在客户/服务器模型的LAN环境下,多种客户机和主机不仅能与服务器进行数据连接通信,并且可以访问服务器的文件系统

     
  • 相关阅读:
    猴子搬香蕉问题
    IE浏览器上传文件后返回结果会自动弹出下载框
    webstorm忽略node_modules目录
    webstorm中sass编译时目录或内容包含中文字符报错
    echarts实现自动轮播tooltip
    IIS处理并发请求时出现的问题及解决
    Zuul 2.1.5 设计分析
    基于 Canal 设计可扩展、高可用 binlog 同步集群
    k8s-coredns内部解析
    Istio使用Envoy转发Http请求错误码426 Upgrade Required
  • 原文地址:https://www.cnblogs.com/Allen-rg/p/7170640.html
Copyright © 2011-2022 走看看