2019-2020-1学期 20192422 《网络空间安全专业导论》 第五周学习总结

第十章 操作系统

一.操作系统的角色

  • 应用软件:帮助我们解决现实世界问题的程序
  • 系统软件:管理计算机系统并与硬件进行交互的程序
  • 操作系统:管理计算机资源并为系统交互提供界面的系统软件

    1.内存,进程与CPU管理

  • 多道程序设计:同时在主存中驻留多个程序,由它们CUP的技术。
  • 内存管理:了解主存中载有多少个程序以及它们的位置的动作。
  • 进程:程序执行过程中的动态表示法。
  • 进程管理:了解活动进程的信息的动作。
  • CUP调度:确定主存中的哪个进程可以访问CPU以便执行的动作。

    2.批处理

  • 在交付程序时,用户需要为执行程序所需的系统软件或其他资源提供一套单独的指令。程序和系统指令集合在一起,称为作业.
  • 在早期计算机上,为执行程序做准备是个耗时的过程。为了更有效地执行这一过程,操作员会把来自多个用户的自由作业组织分批。一个分批包含一组需要相同或相资源的作业,这样操作员就不必反复地载入和准备相同的资源。
  • 现术语“批”表示的是一个系统,在这个系统中,程序和系统资源的协作与执行不需用户和程序之间的交互。

    分时

  • 分时:为多个交互用户同时共享CPU时间的系统。
  • 虚拟机:分时系统创建的每个用户都有专有机器的假象。
  • 哑终端:在早期的分时系统中用于访问主机的一套显示器和键盘。
    (分时系统最初由一台主机和一组连接到主机的哑终端构成。哑终端只是一个显示器和一个键盘)

    4.其他OS要素

  • 随着计算计算的不断改进,机器自身体积也变得越来越小。大型计算机演变成了小型机, 这种机器不再需要专用的放置空间。微型机则第一次采用单个的集成芯片作为CPU,从而引发了个人计算机(PC)的想法。顾名思义,个人计算机不是为多个用户设计的,最初的个人计算机操作系统反映出了这种简单性。
  • 操作系统还必须把计算机通常要连接到网络这个因素考虑在内。
  • 操作系统要负责与各种各样的设备通信。
  • 操作系统的最后一个要素是需要支持实时系统的。
    • 实时系统:应用程序的特性决定了相应时间至关重要的系统
    • 响应时间:收到信号和生成响应之间的延迟时间。

      二.内存管理

      所有程序在执行时都存储在主存中。这些程序引用的数据也都存储在主存中,以便程序能够访问它们。
      本章前面介绍过多道程序设计环节,也就是在主存中同时驻留多个程序(和它们的数据)。因此,操作系统必须采用下列技术。
  • 跟踪一个程序驻留在内存的什么位置以及是如何驻留的。
  • 把逻辑程序地址转换成实际的内存地址

但我们却并不确切地知道程序载入了主存中的什么位置,解决方法是使用两种地址——逻辑地址和物理地址。

  • 逻辑地址:对一个存储值的引用,是相对于引用它的程序的。
  • 物理地址:主存储设备中的真实地址。
  • 逻辑地址和物理地址间的映射叫做地址联编。

    1.单块内存管理

    ==把应用程序载入一段连续的内存区域的内存管理方法。==
    在这种内存管理机制中,逻辑地址是、只是一个相对于程序起始位置的整数值。也就是说,创建逻辑地址就像将程序载入地址是0的主存中一样。因此,要生成物理地址,只要用逻辑地址加上程序在物理主存中的起始地址即可。
    ==单块内存管理法的优点在于实现和管理都很简单,但却大大浪费了内存空间和CPU时间。== 应用程序一般不可能需要操作系统剩余的所有空间,而且在程序等待某些资源的时候,还会浪费CUP的时间。

    2.分区内存管理

    有两种划分内存的方法,即固定分区法和动态分区法。固定分区和动态分区的地址联编基本上是一样的。与单块内存管理法一样,逻辑地址是相对于0起始点的整数。当CUP开始运行一个程序时,OS将把程序的分区起始地址存储到基址寄存器中。同样,分区的长度将被存入界限寄存器中。
  • 固态分区法:把内存分成特定数目的分区以载入程序的内存管理方法。
  • 动态分区法:根据容纳程序的需要对内存分区的内存管理方法。
  • 基址寄存器:存放当前分区的起始地址的寄存器。
  • 界限寄存器:存放当前分区的长度的寄存器。
    那么,对于一个新程序,应该分配给它哪个分区呢?下面有三种常用的分区选择法:
  • 最先匹配,即把第一个足够容纳程序的分区分配给它。
  • 最佳匹配,即把最小的能够容纳程序的分区分配给它。
  • 最差匹配,即把最大的能够容纳程序的分区分配给它。

    3.页式内存管理

    页式内存管理需要跟踪分配的内存,还要解析地址,从而给操作系统增加了很多负担。但是,这种方法提供的好处值得做出这些牺牲。
    在页式内存管理法中,主存被分成小的大小固定的存储块,叫做帧。进程被划分为页。在执行程序是,进程的页将被载入分散在内存中的各个未使用的帧中,因此,一个进程的页可能是四处散落的,无序的,与其他进程的页混合在一起。为了掌握进程页的分别,操作系统需要为内存中的每个进程维护一个独立的页映射表(PMT),把每个页映射到载入它的帧。
  • 页式内存管理法:把进程划分为大小固定的页,载入内存时存储在帧中的内存管理方法。
  • 帧:大小固定的一部分主存,用于存放进程页。
  • 页:大小固定的一部分进程,存储在内存帧中。
  • 页映射列表:操作系统用于记录页和帧之间关系的表。
  • 请求分页:页式内存管理法的扩展,只有当页面被引用(请求)是才会被载入内存。
  • 页面交换:把一个页面从二级存储设备载入内存,通常会使另一个页面从内存中删除。
  • 虚拟内存:由于整个程序不必同时处于内存而造成的程序大小没有限制的假想。
  • 系统颠簸:频繁的页面交换造成的低效处理。

    三.进程管理

    ==操作系统必须管理的另一个重要资源是每个进程使用的CPU时间==

    1.进程状态

    在操作系统的管理下,进程会经历几种状态,即==进入系统,准备执行,执行,等待资源以及执行结束==
  • 进程状态:在操作系统的管理下,进程经历的概念性阶段。
  • 分析进程的每个状态会发生那些事情:
    • 在创建阶段,将创建一个新进程。
    • 在准备就绪状态中,进程没有任何执行障碍。
    • 运行状态下的进程是当前CUP执行的进程。它的指令将按照读取-执行周期被处理。
    • 等待状态下的进程是当前在等待资源(除CUP以外的资源)的进程。
    • 终止状态下的进程已经完成了它的执行。

      2.进程控制块

      ==操作系统必须为每个活动进程管理大量的数据==
  • 进程控制块:操作系统管理进程信息使用的数据结构。
  • 上下文切换:当一个进程移出CPU时,另一个进程取代它时发生的寄存器信息交换。

    四.CPU调度

    所谓CUP调度,就是确定把那个处于准备就绪阶段的进程移入运行状态。
  • 非抢先调度:当当前执行的进程自愿放弃了CPU时发生的CPU调度。
  • 抢先调度:当操作系统决定照顾另一个进程而抢占当前执行进程的CPU资源是发生的CPU调度。
  • 周转周期:从进程进入准备就绪状态到它最终完成之间的时间间隔,是评估CPU调度算法的标准。

    1.先到先服务

    在先到先服务(FCFS)调度方法中,进程按照它们到达运行状态的顺序转移到CPU。
    在FCFS调度方法中,每个进程将依次访问CPU。
    由于我们假设所有进程同时到达,所以每个进程的周转周期等于它的完成时间。事实上,进程并非同时到达的。

    2.最短作业优先

    ==最短作业优先(SJN)CPU调度算法将查看所有处于准备就绪状态的进程,并分派一个具有最短服务时间的。==

    3.轮询法

    ==将把处理时间平均分配给所有准备就绪的进程==
  • 时间片:在CPU轮询算法中分配给每个进程的时间量。

    第十一章 文件系统和目录

    一.文件系统

  • 文件:数据的有名集合,用于组织二级存储设备。
  • 文件系统:操作系统为它管理的文件提供的逻辑框图。
  • 目录:文件的有名分组。

    1.文本文件和二进制文件

    ==所有文件都可以被归类为文本文件或二进制文件。==
  • 文本文件:包含字符的文件。
  • 二进制文件:包含特定格式的数据的文件,要求给为串一个特定的解释。

    2.文件类型

    无论是文本文件还是二进制文件,大多数文件都包含有特定类型的信息。
  • 文件类型:文件(如Java程序或Microsotf文档)中存放的关于类型的信息。
  • 文件扩展名:文件名中说明文件类型的部分。文件扩展名只说明了文件中存放的是什么。

    3.文件操作

  • 创建文件
  • 删除文件
  • 打开文件
  • 关闭文件
  • 从文件中读取数据
  • 把数据写入文件
  • 重定文件中的当前文件指针
  • 把数据附加到文件结尾
  • 删减文件(删除它的内容)
  • 重命名文件
  • 复制文件
    ==注:
    1 操作系统用两种方式跟踪二级存储设备
    2 大多数操作系统要求对文件执行读写操作前要先打开该文件。
    3 无论何时,一个打开的文件都有一个当前文件指针(一个地址),说明下一次读写操作要发生在什么位置。
    4 打开的文件的当前指针可以被重新定义到文件中的其他位置,以备下次读2或写操作。
    5 操作系统还提供了更改文件名的操作,叫做重命名文件。==

    4.文件访问

  • 顺序文件访问:以线性方式访问文件中的数据的方法。
  • 直接文件访问:通过指定逻辑记录编号直接访问文件中的数据的方法。

    5.文件保护

    控制文件的访问,以防止蓄意获取不正当访问的企图,以及最小化那些出于好奇的用户不经意引起的问题。

    二.目录

    目录是文件的有名集合,是一种按照逻辑方式对文件分组的方法。

    1.目录树

  • 目录树:展示文件系统的嵌套目录组织的结构。
  • 根目录:包含其他所有目录的最高层目录。
  • 工作目录:当前活动的子目录。

    2.路径名

    要用文本指示一个特定的文件,必须说明该文件的==路径==,即找到这个文件所必须经历的一系列目录。路径可以是绝对的,也可以是相对的。==绝对路径==名从根目录开始,说明了沿着目录树前进的每一步,直到到达了想要的文件或目录。==相对路径==名则从当前工作目录开始。
  • 路径:文件或者子目录在文件系统中的位置的文本名称。
  • 绝对路径:从根目录开始,包括所有后继子目录的路径。
  • 相对路径:从当前工作目录开始的路径。
  • 下面是示例目录树中的绝对路径名:
    C:\Program Files\MS Office\WinWord.exe
    C:\MY Documents\letters\applications\vaTech.doc
    C:\Windows\System\QuickTime
    UNIX中的绝对路径:
    /bin/tar
    /etc/sysconfig/clock
    /home/smith/reports/weekl.txt
  • 相对路径是基于当前工作目录而言的。假设列中当前工作目录是C:\My Documents\letters.,那么可以使用下列的相对路径名:
    cancelMag.doc
    applications\calState.doc
    -使用相对路径时,有时需要返回上层目录。如:
    ..\landscaps.jpg
    ..\csc111\proj2.java
    ..  ..\WINDIWS\Drivers\E55IC.ICM
    ..  ..\Program Files\WinZip
    UNIX中的相对路径:
    utilities/combine
    ../smith/reports
    .. / ../dev/ttyE71
    .. / ../usr/man/man1/1s.1.gz

    三.磁盘调度——决定先满足于哪个磁盘I/O请求的操作。

    1.先到先服务磁盘调度法

    FCFS算法按照当前请求到达的顺序处理它们,并不考虑读写头的当前位置。

    2.最短寻道时间优先磁盘调度法

    通过尽可能少的读写头移动满足所有未解决的请求。这种方法可能会在满足一个请求后改变读写头的移动方向。

    3.SCAN磁盘调度法

    在磁盘调度法中没有上下移动,而是读写头向轴心移动,然后再向盘边缘移动,就这样在轴心和盘片边缘来回移动。与其他算法不同的是,我们要决定读写头最初移动的方向。

猜你喜欢

转载自www.cnblogs.com/dahuangren/p/11789294.html