• 操作系统的主要功能


    目录

    一.  处理机管理功能 

    1.1 进程控制

    1.2 进程同步

    1.3 进程通信

    1.4 进程调度

    二. 存储器管理功能

    2.1 内存分配 

    2.2 内存保护 

    2.3 地址映射

    2.4 内存扩充 

    三. 设备管理功能 

    3.1 缓冲管理

    3.2 设备分配

    3.3 设备处理    

    3.4 设备独立性和虚拟设备

    四. 文件管理功能 

    4.1 文件存储空间的管理

    4.2 目录管理

    4.3 文件的读/写管理和保护

    五. 用户接口

    5.1 命令接口

    5.2 程序接口    

    5.3 图形接口    


            操作系统是用户与硬件之间的桥梁,它主要负责管理计算机系统中的所有资源,并负责它们的调度和使用,充分发挥这些资源的作用和方便用户使用计算机。         

            从资源管理的角度来看,操作系统的功能主要有:

    • 处理机管理功能;
    • 存储器管理功能;
    • 设备管理功能;
    • 文件管理功能;
    • 用户接口;

    一.  处理机管理功能 

            处理机的分配和运行,都是以进程为基本单位,因而对处理机的管理,可归结为对进程的管理。

    1.1 进程控制

    • 为作业创建一个或多个进程,并为之分配必要资源。
    • 撤销已结束的进程,回收其占用的资源。
    • 控制进程运行过程的状态转换。 

    1.2 进程同步

    • 互斥方式:诸进程访问临界资源;锁机制;
    • 同步方式:在相互合作完成任务的进程之间由同步机构对执行次序加以协调;信号量机制;

    1.3 进程通信

    相互合作的诸进程之间需要互换信息,即合作进程间需要通信,以协调进程间的协作。 

    1.4 进程调度

    • 作业调度:为部分后备作业分配资源、将其调入内存、创建进程、插入到就绪队列,等待进程调度。
    • 进程调度:为就绪队列的某进程分配处理器,设置运行现场,使其能够运行。 
    处理机管理的主要功能

    二. 存储器管理功能

            存储器管理的主要任务,是为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及能从逻辑上扩充内存。

    2.1 内存分配 

            主要任务是为每道作业分配内存空间,减少内存碎片,提高内存利用率,允许正在运行的程序动态申请存储空间。      

    • 静态分配:装入作业时分配其所需全部存储空间,运行期间不可再申请存储空间,也不能“移动”。
    • 动态分配:装入作业时分配其所需的基本存储空间,运行期间可再申请存储空间,也可以“移动”。

    2.2 内存保护 

    • 通过设置界限寄存器实现,主要任务是保证各道程序之间互不干扰,各自在系统为其分配的内存空间运行,禁止用户程序访问操作系统的程序和数据。    
    • 为了确保每道程序都只在自己的内存区中运行,必须设置内存保护机制。设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。越界检查都由硬件实现。对发生越界后的处理,还须与软件配合来完成。
    • 下界寄存器:存放程序装入内存后的开始地址(首址);
    • 上界寄存器:存放程序装入内存后的末地址;
    • 判别式: 

    下界寄存器  ≤  物理地址  <  上界寄存器 

    2.3 地址映射

    • 程序中的地址称为“逻辑地址”或“相对地址”,这些程序的地址都是从“0”开始的,程序中的其它地址都是相对于起始地址计算的;
    • 内存中单元的地址称为“物理地址“或“绝对地址”,由内存中的一系列单元所限定的地址范围;
    • 多道程序下,进程装入内存后要由逻辑地址到内存物理地址进行变换,该功能应在硬件的支持下完成。

    2.4 内存扩充 

            借助于虚拟存储技术,从逻辑上去扩充内存容量,借助于虚拟存储技术。改善了系统的性能,基本上不增加硬件投资。

    • 请求调入:部分装入,即运行期间由操作系统在需要时装入所需部分。
    • 置换:内存空间不够时,可调出部分不活跃程序或数据到外存,将需要调入的部分放入内存。

    三. 设备管理功能 

            设备管理用于管理计算机系统中所有的外围设备, 而设备管理的主要任务是,完成用户进程提出的I/O请求;为用户进程分配其所需的I/O设备;提高CPU和I/O设备的利用率;提高I/O速度;方便用户使用I/O设备。为实现上述任务,设备管理应具有缓冲管理设备分配设备处理,以及虚拟设备等功能。

    3.1 缓冲管理

            匹配CPU和外设的速度,提高两者的利用率。最常见的缓冲区机制有单缓冲机制、能实现双向同时传送数据的双缓冲机制,循环缓冲以及能供多个设备同时使用的公用缓冲池机制。 

    3.2 设备分配

            根据用户请求,分配I/O设备及相应的控制器和通道。 

    3.3 设备处理    

            通过设备驱动程序完成,实现CPU和设备控制器之间的通信。   

    3.4 设备独立性和虚拟设备

    • 设备独立性:应用程序独立于物理设备,使得用户编制的程序与实际使用的物理设备无关。
    • 虚拟设备功能:每次仅允许一个进程使用的物理设备,变为能“同时”供多个进程共享的设备。(即多个对应的逻辑设备) 

    四. 文件管理功能 

            文件管理的主要任务:对用户文件和系统文件进行管理,以方便用户使用并保证文件安全。  

    4.1 文件存储空间的管理

    • 解决如何存放信息,以提高空间利用率和读写性能;
    • 存储空间的使用情况,空间分配与回收;

    4.2 目录管理

    • 解决信息检索问题,对众多目录项加以有效组织。
    • 目录项包括文件名、文件属性、文件在磁盘上的物理位置等。 

    4.3 文件的读/写管理和保护

    • 文件的读/写管理:
    1. 该功能是根据用户的请求,从外存中读取数据;或将数据写入外存。
    • 文件保护:
    1. 防止未经核准的用户存取文件;
    2. 防止冒名顶替存取文件;   
    3. 防止以不正确的方式使用文件。 

    五. 用户接口

            目标:提供一个友好的用户访问操作系统的接口。

    5.1 命令接口

    • 联机用户接口:这是为联机用户提供的,它由一组键盘操作命令及命令解释程序所组成。当用户在终端或控制台上每键入一条命令后,系统便立即转入命令解释程序,对该命令加以解释并执行该命令。
    • 脱机用户接口:该接口是为批处理作业的用户提供的,故也称为批处理用户接口。批处理作业的用户不能直接与自己的作业交互作用,只能委托系统代替用户对作业进行控制和干预。

    5.2 程序接口    

            该接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操作系统服务的惟一途径。它是由一组系统调用组成,每一个系统调用都是一个能完成特定功能的子程序,每当应用程序要求OS提供某种服务(功能)时,便调用具有相应功能的系统调用。

    5.3 图形接口    

            图形用户接口采用了图形化的操作界面, 用非常容易识别的各种图标(icon)来将系统的各项功能、各种应用程序和文件,直观、逼真地表示出来。用户可用鼠标或通过菜单和对话框,来完成对应用程序和文件的操作。 


            有兴趣的朋友还可以看一下下面的两篇,顺着看下去就好了: 

  • 相关阅读:
    postgresql源码学习(36)—— 事务日志11 - 日志归档
    华为机试 - 等和子数组最小和
    云原生之Docker简介和环境准备
    【Spring Boot】错误处理及流程解析
    Java基础 --- Array和List互相转换
    Centos7.9云计算CloudStack4.15 高级网络配置(3)
    ASEMI整流桥GBL610参数,GBL610尺寸,GBL610特征
    cdh3.6.2集成flink1.12.0
    经典链表问题:解析链表中的关键挑战
    学生HTML个人网页作业作品 (服装商城HTML+CSS)
  • 原文地址:https://blog.csdn.net/weixin_53919192/article/details/127461868