操作系统阅读报告:操作系统概述
2018-03-11

操作系统概述

操作系统的功能

  • 操作系统是介于计算机硬件与用户之间的中间程序,它的设计目的是为了让人们更加方便高效地使用计算机。但目前来说,并没有一个关于操作系统的十分完整的定义。

  • 对于用户来说,操作系统的主要功能是为了让其更加方便地操作硬件,优化日常进行的工作,而并不那么关心资源使用率。当然,在某些情况下,比如工作站,操作系统的功能是个人使用性能和资源使用率的折中。

  • 对于计算机来说,操作系统是一个资源分配器,它管理、调度、分配各种资源,使计算机更加有效而公平地运行。同时,操作系统也是控制程序,它管理用户程序执行,防止计算机被错误使用,对异常进行处理。

操作系统的结构

  • 操作系统有一种称为“多道程序设计”的重要机制,它使得CPU总有一个作业可以执行,充分提高的CPU的利用率。操作系统将多个作业保存在内存中并选择一个开始执行,这个作业可能需要等待另一个任务完成(如I/O操作)。此时,操作系统将切换到另一个作业执行,在前一个作业等待完成后切换回去。如此一来,只要有作业可以执行,CPU就不会空闲。
  • 多道程序设计并没有提供与计算机系统直接交互的能力,因此有了分时系统,它是多道程序设计的延伸。分时系统的每个命令或动作都比较短,因此在不同作业之间切换的频率较高,用户可以在程序运行期间与之交户并感觉到整个系统都为自己所用,尽管事实上可能为许多用户共享。

操作系统的操作

  • 现代操作系统是由中断驱动的。如果没有进程执行和用户请求,操作系统将默默等待直至事件发生。对于每一种中断,操作系统定义不同代码并由中断处理器来处理。异常也是一种中断,它源于出错。由于不同程序共享了硬件,操作系统必须设计一些保护,以防止某个程序出错时影响其他程序。
  • 许多操作系统采用双重模式操作,也就是区分操作系统代码和用户定义代码。用户程序正在运行时,系统处于用户模式。当用户通过系统调用请求操作系统的服务时,模式转换为系统模式。另外,出现中断和异常时,也会切换为系统模式,操作系统获得控制权。双重操作模式也提供了保护操作系统和用户程序不受错误影响的方法,即把能引起机器损坏的指令作为特权指令。如果在用户模式下试图执行特权指令,那么硬件将不予执行,并以异常的形式通知操作系统。显然,转换到用户模式是一个特权指令,I/O控制、中断管理也是特权指令。
  • 为了使操作系统保持对CPU的控制,防止用户程序陷入死循环,可以设定定时器。操作系统在将控制权交给用户程序前,为定时器设置一个时间,在时间到达后自动产生中断,控制权将交回操作系统。

操作系统的主要模块

  • 操作系统的主要模块有进程管理、内存管理、存储管理。
  • 正在执行中的程序称为进程,它是系统工作的单元。值得注意的是,程序本身并不是进程,程序是存储在磁盘中的静态信息,而进程是活动的实体。进程包括系统进程和用户进程,并需要一些资源来完成任务。操作系统负责创建进程并分配资源给进程,提供进程同步机制、通信机制,提供死锁处理机制,并在删除进程时回收资源。
  • 内存是现代操作系统操作的中心,是CPU所能直接访问的唯一大容量存储器。当一个程序将要运行时,它先被装入内存中,然后CPU才可以读取指令和数据。操作系统在内存管理上的作用是分配和释放内存空间,记录内存哪些部分正在被使用和被哪个程序使用,决定哪些进程可以装入内存。
  • 文件是由创建者定义的一组信息的集合,可以存储在不同的物理介质中(如磁盘)。操作系统的文件管理活动主要有创建和删除文件,创建目录组织文件,同时对大容量存储器的空间进行调度和分配。另外,操作系统还管理高速缓存。高速缓存是为了使CPU更快地读取信息,它将内存中的信息复制到其中,以便下一次的快速重复使用。它的设计和置换策略十分重要,其中一个重要的问题是如何确保高速缓存一致性。

操作系统的保护与安全

  • 计算机系统可能有多个用户并允许多个进程同时运行,那么只有进行系统地管理,才能确保每个用户每个进程只在属于自己的空间中进行,并按时转交CPU控制权。
  • 保护是一种控制进程和用户对计算机系统资源的访问的机制。系统将通过授权的方式分配资源,只有获得了系统的授权,用户和进程才能访问相应的资源。
  • 安全是防止系统受到外部或内部攻击的机制。这些攻击包括病毒、蠕虫、拒绝服务攻击等。近年来操作系统的安全问题成为许多研究关注的领域。
  • 操作系统实现保护与安全的一个重要前提是操作系统能区分它的所有用户。在一般的系统中,使用用户ID和组ID就足够了。如果用户需要访问受限的设备,则需要通过升级特权的方式获得使用权。

分布式系统和专用系统

  • 分布式系统是将一组物理上分开的,各种不同结构的计算机连接在一起,而网络则是它们之间的通讯路径。分布式系统将各种资源整合在一起,增加了计算速度和可靠性。
  • 专用系统与通用系统的区别是它的功能有限,只在某些专门的领域内运行。专用系统包括实时嵌入式系统(如各种工业上的控制系统)、多媒体系统和手持系统(如PDA和手机)。

参考文献:

[1] Abraham Silberschatz. 操作系统概念. 高等教育出版社, 2010.1.

搜索
背景设置