1 引论

1 引论

  1. 操作系统(OS)

    -管理计算机系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便有效地使用计算机,提供良好运行环境的一种系统软件

  2. 操作系统的目标

    1. 方便性 2. 有效性 3. 可扩充性 4. 开放性
  3. 操作系统的作用

    1. OS作为用户与计算机硬件系统之间的接口
    2. 计算机系统资源的管理者
    3. OS实现了对计算机资源的抽象
  4. OS发展的动力

    1. 不断提高计算机资源利用率
    2. 方便用户
    3. 器件的不断更新换代
    4. 计算机体系结构的不断发展
    5. 不断提出新的应用需求
  5. 操作系统的发展

    1. 20世纪50年代中期:批处理OS

    2. 20世纪60年代中期:多道程序批处理OS 分时系统 实时系统

    3. 20世纪70-90年代:微机OS 多处理机OS 网络OS

    4. 未配置操作系统的计算机系统

      1. 人工操作方式(用户独占全机 CPU等待人工操作)
      2. 脱机输入/输出(Off-Line I/O)方式
    5. 单道批处理系统

      -系统中的资源得不到充分的利用

    6. 多道批处理系统

      -资源利用率高

      -系统吞吐量大

      -平均周转时间长

      -无交互能力

    7. 分时系统(Time Sharing System)

      多路性 独立性 及时性 交互性

    8. 实时系统(Real Time System)

      1. 实时系统类型:

        1. 工业(武器)控制系统
        2. 信息查询系统
        3. 多媒体系统
        4. 嵌入式系统
      2. 实时任务类型:

        1. 周期性实时任务 || 非周期性实时任务
        2. 硬实时任务 || 软实时任务
      3. 实时系统特征:

        多路性 独立性 及时性 交互性 可靠性

    9. 微机操作系统的发展

      1. 单用户单任务操作系统 CP/M  MS-DOS
      2. 单用户多任务操作系统 (程序分成多个任务 多个任务可并发)
      3. 多用户多任务操作系统 (多用户多终端使用同一个机器)
    10. 操作系统的基本特性

      -并发 共享 虚拟 异步(批处理 分时 实时 都有)

      1. 并发

        -区别并行和并发

        并行性是指两个或多个事件在同一时刻发生。而并发性是指两个或多个事件在同一时间间隔内发生。

        -引入进程

        没引入进程只能顺序执行,引入进程后可以并发执行

      2. 共享

        1. 互斥共享

          系统中的某些资源,如打印机、磁带机等,虽然可以提供给多个进程(线程)使用,但应规定在一段时间内,只允许一个进程访问该资源

        2. 同时访问方法

          这里所谓的“同时”,在单处理机环境下是宏观意义上的,而在微观上,这些进程对该资源的访问是交替进行的。典型的可供多个进程“同时”访问的资源是磁盘设备。

      3. 虚拟

        1. 时分复用技术

          虚拟处理机技术 虚拟设备技术

        2. 空分复用技术

      4. 异步

    11. 操作系统的主要功能

      1. 处理机管理功能

        1.进程控制 2.进程同步 3.进程通信 4.调度((1)作业调度 (2)进程调度)

      2. 存储器管理功能

        1. 内存分配

          -为程序分配内存空间

          -提高存储器利用率

          -允许运行程序申请附加内存空间

          1. 内存分配的方式

            1. 静态分配方式

              -每个作业的内存空间是作业装入时确定的,装入后的整个运行期间不允许再申请新的内存空间,不允许作业在内存中移动

            2. 动态分配方式

              -每个作业的内存空间是作业装入时确定的,装入后的整个运行期间允许再申请新的内存空间,允许作业在内存中移动

        2. 内存保护

          -确保每道用户程序都仅在自己的内存空间内运行,互不干扰

          -不允许用户程序访问OS的程序和数据,不允许用户程序转移到非共享的其它用户程序中去执行

        3. 地址映射

          -将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址,该功能应该在硬件的支持下完成

        4. 内存扩充

          -借助于虚拟存储技术,从逻辑上扩充内存容量,系统必须设置内存扩充机制,用于实现请求调入功能和置换功能

      3. 设备管理功能

        1. 设备管理任务:

          完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作;提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备

        2. 功能:

          缓冲管理、设备分配、设备处理、虚拟设备

      4. 文件管理功能

        1. 文件存储空间的管理

        2. 目录管理

        3. 文件的读/写管理和保护

          -文件的读/写管理

          -文件保护

      5. 操作系统与用户之间的接口

        1. 用户接口

          1. 联机用户接口
          2. 脱机用户接口
          3. 图形用户接口
        2. 程序接口

          为用户程序在执行中访问系统资源而设置,是用户程序取得操作系统服务的唯一途径。它是由一组系统调用组成的,每一个系统调用都是一个能完成特定功能的子程序

      6. 现代操作系统的新功能

        1. 系统安全
          1. 认证技术
          2. 密码技术
          3. 访问控制技术
          4. 反病毒技术
        2. 网络的功能和服务
          1. 网络通信
          2. 资源管理
          3. 应用互操作
        3. 支持多媒体
          1. 接纳控制功能
          2. 实时调度
          3. 多媒体文件的存储
      7. os结构设计

        1. 传统操作系统结构

          1. 无结构操作系统(整体系统结构 复杂混乱)

          2. 模块化结构OS

            -模块化程序设计技术 20世纪60年代

            -模块独立性

            -模块接口法=无序模块法 实际需求难完成

          3. 分层式结构OS

        2. 客户/服务器模式 C/S

          1. 组成:客户机;服务器;网络系统

          2. 交互:

            1. 客户发送请求消息
            2. 服务器接收消息
            3. 服务器回送消息
            4. 客户机接收消息
          3. 优点:

            (1) 数据的分布处理和存储。

            (2) 便于集中管理。

            (3) 灵活性和可扩充性。

            (4) 易于改编应用软件。

        3. 面向对象的程序设计技术

          1. 面向对象技术-20世纪80年代初

          2. 对象:客观世界的实体

            在面向对象的技术中,利用被封装的数据结构(变量)和一组对它进行操作的过程(方法)来表示系统中的某个对象的。对象中的变量(数据)也称为属性,面向对象中的方法是用于执行某种功能的过程

          3. 类:类”来定义一组大体相似的对象。一个类同样定义了一组变量和针对该变量的一组方法,用它们来描述一组对象的共同属性和行为。类是在对象上的抽象,对象则是类的实例

          4. 继承

          5. 优点:重用 易修改 易扩展 正确性 可靠性

        4. 微内核OS结构

          1. 足够小的内核

          2. 基于客户/服务器模式

          3. 应用”机制与策略分离“原理

            所谓机制,是指实现某一功能的具体执行机构。而策略,则是在机制的基础上借助于某些参数和算法来实现该功能的优化,或达到不同的功能目标。

          4. 采用面向对象技术

          5. 微内核基本功能:

            1. 进程(线程)管理
            2. 低级存储器管理
            3. 中断和陷入处理
          6. 优点:

            1.提高了系统的可扩展性 2.增强了系统的可靠性 3.可移植性强 4.提供了对分布式系统的支持 5. 融入了面向对象技术。

你可能感兴趣的:(计算机操作系统,服务器,网络,数据库,操作系统)