引论

一 操作系统的目标和作用
  
  1 操作系统紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境)
  2 执行用户程序,并使用户问题更易解决
          有效性:以一种高效率上的方式使用资源
      方便性:使计算机系统更易于使用
      可扩充性:采用层次化结构,易于增,删,改
      开放性:要求统一开放的环境,能通过网络集成化,并正确,有效地协同工作,实现应用程序的移植
  3 OS作为用户与计算机硬件系统之间的接口
   OS作为计算机系统资源的管理者
     处理机管理
     存储器管理
     设备管理
     文件管理
   OS实现了对计算机资源的抽象(用作扩充机器/虚拟机)
    

二 操作系统的发展过程

    1 三种基本的操作系统

    (多道)批处理操作系统,分时操作系统,实时操作系统

  2 通用操作系统

    如果一个操作系统兼有批处理,分时和实时系统三者或者二者的功能,则称该操作系统为通用操作系统

    通用OS包括微机OS和网络OS

三 操作系统的基本特征

  1 并发性(Concurrence)

    1.1 最重要的特性,其他三种特性以此为前提

    1.2 在一段时间内同时存在多道运行的程序(进程)

        宏观:多道程序同时在执行

        微观:在单道批处理系统中,任何时刻只有一道程序在执行,即微观上多道程序在CPU上交替执行

    1.3 并发执行能有效改善系统资源利用率,但使系统复杂化,因此操作系统必须对冰法活动进行控制和管理(引入进程和线程)

        进程(Process):在系统中作为资源分配的基本单位并能独立运行的活动实体

        线程(Threads):作为独立运行和独立调度的基本单位

  2 共享性(Sharing)

    1.1 系统中的资源不再为某道程序独占,而是供多道程序共同使用

    1.2 并发性和共享性是OS的两个最基本的特征,二者互为存在条件

  3 虚拟性(Virtual)

    1.1 把一个物理实体映射为若干个对应的逻辑实体

      时分复用:eg:虚拟处理机,虚拟设备

      空分复用:eg:虚拟磁盘,虚拟存储器

    1.2 是OS管理系统资源的重要手段,可提高资源利用率

  4 异步性(Asynchronism)

    1.1 在进程执行过程中,其执行时间,顺序,向前推进的速度和完成的时间等都是不可预知的

    1.2 “不确定性”是指同一道程序的多次运行所需的时间不确定,同一批程序的多次运行的运行序列和总运行时间不确定

四 操作系统的基本功能

  1 处理机管理

    1.1 主要任务:

      对处理机进行分配

      对处理机运行进行有效的控制和管理

      处理机的分配和运行以进程为单位,因此对处理机的管理可归为对进程的管理

    1.2 功能

      进程控制(创建,撤销,状态转换)

      进程同步(互斥,同步)

      进程通信

      进程调度(作业调度,进程调度)

  2 存储器管理

    1.1 主要任务

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

      方便用户使用存储器

      提高存储器的利用率

      从逻辑上扩充内存

    1.2 功能

      内存分配(静态与动态,分配与回收)

      内存保护

      地址映射

      内存扩充(请求调度,置换)

  3 设备管理

    1.1 主要任务

      完成用户提出的I/O请求,为用户分配I/O设备

      提高I/O设备的利用率及速度,方便用户使用I/O设备

    1.2 功能

      缓冲管理

      设备分配

      设备处理(驱动程序)

      虚拟设备

  4 文件管理

    1.1 主要任务

      对用户文件和系统文件进行管理

      方便用户使用文件

      保证文件的安全性

    1.2 功能

      文件存储空间的管理

      目录管理

      文件的读写管理

      文件的共享和保护

  5 用户接口

      1.1 主要任务

        方便用户使用OS

      1.2 用户接口

        提供给用户使用的借口呀,由一组键盘操作命令及解释程序所组成

      1.3 程序接口

        提供给程序员在编程时使用的接口,是用户取得OS服务的唯一途径,由一组系统调用组成

五 操作系统的结构设计

   OS的结构设计的发展经历了以下几代:

    1.1 传统的OS:

        无结构OS:

          由众多的过程直接构成,各过程之间可相互调用,但OS内容不存在任何结构

        模块化OS

          采用“模块化程序设计”技术,按其功能划分为若干个独立的模块,同时规定模块之间的接口

        分层式OS

          分层式OS结构是把OS划分为若干个层次,每一层都要只能用其底层所提供的功能和服务,从硬件开始,一层一层的自底层向桑增添相应的功能的软件

    1.2 现代OS:

        微内核OS

          在单处理机环境下,采用基于客户/服务器模式的微内核结构,将OS划分为两大部分:微内核和多个服务器

        微内核的结构设计:

          客户/服务器模式,面向对象技术,机制与策略分离

原文地址:https://www.cnblogs.com/roxy/p/6108741.html