操作系统概述

操作系统发展历程

  多道程序设计是个很重要的概念。早期的批处理系统一次只能处理一个任务,多道程序设计使得批处理系统可以一次处理多个任务,大大提升系统运行效率。多道程序设计是指在计算机内存中同时存放多个程序,程序之间相互不干扰,在计算机的管理程序之下相互穿插运行。对多道程序的管理是操作系统的重要功能。

  操作系统对多道程序和系统资源的管理,可以分为五大功能:进程管理存储管理作业管理文件管理设备管理

操作系统概述

  操作系统是管理计算机硬件和软件资源的计算机程序,本质是个软件程序。操作系统管理配置内存、决定资源供需顺序、控制输入输出设备等;操作系统也提供让用户和系统交互的操作界面。操作系统的种类是多样的,不局限于计算机,从手机到超级计算机,操作系统可简单也可复杂,在不同设备上,操作系统可向用户呈现多种操作手段。

操作系统基本功能

  计算机系统中有几大资源:处理器资源、存储器资源、IO设备资源、文件资源。操作系统第一个基本功能是统一管理计算机资源。

  操作系统的第二个功能是实现了对计算机资源的抽象,用户无需面向硬件接口编程:如IO设备管理软件提供读写接口、文件管理软件提供文件操作接口。

  操作系统的第三个基本功能是提供了用户与计算机之间的接口。有三种接口形式:图形窗口形式(比如Windows界面)、命令形式(shell终端敲入命令)、系统调用形式(程序调用的接口)。

操作系统特性

并发性

  并发性是后面三种特性的前提,只有理解了并发性,才能理解其他特性。

  并发需要和并行区分理解:并行是指两个或多个事件可以在同一时刻发生;并发是指两个或多个事件可以在同一时间间隔内发生。

  多道程序设计是并行和并发的基础。在单处理器的系统中只存在并发的概念,同一时刻只有一个程序占用CPU,多个程序交替执行;多处理器系统中,单个处理器并发执行,所有处理器并行执行。

共享性

  共享性表现为操作系统中的资源可供多个并发程序共同使用,这种共同使用的形式称之为资源共享。

  资源共享根据属性可以分为互斥共享形式和同时访问形式:

  • 互斥共享:当资源被程序A占用时,其他想使用资源的话只能等待A使用完,比如打印机资源;
  • 同时访问:某种资源在一段时间内并发的被多个程序访问,这种“同时”是宏观的,从宏观看资源可以被同时访问,比如硬盘资源;

虚拟性

  虚拟性表现为把一个物理实体转变为若干个逻辑实体,物理实体是真实存在的,逻辑实体是虚拟的。虚拟技术主要有时分复用技术空分复用技术

  • 时分复用:资源在时间上进行复用,不同程序并发使用,多道程序分时使用计算机的硬件资源,时分复用可以提高资源利用率;
  • 空分复用:用来实现虚拟磁盘、虚拟内存等,提高资源的利用率,提升编程效率;

异步性

  异步性表现为在多道程序的环境下,允许多个进程并发执行。由于进程在使用资源时可能需要等待或放弃,所以进程的执行并不是一气呵成的,而是以走走停停的形式推进。