2021-2022-1学期 20212320 《网络空间安全专业导论》第五周学习学习总结
第十章 操作系统
10.1 操作系统的角色
应用软件:帮助我们解决现实世界问题的程序。
系统软件:管理计算机系统并与硬件进行交互的程序
操作系统:管理计算机资源并为系统交互提供界面的系统软件
一个计算机通常只有一个活动的操作系统,初始时载入永久性存储器(ROM)中存储的以小组系统指令。这些指令是从二级存储器(通常是)硬盘中载入的。
计算机可以具备两个或者更多个操作系统。这种配置称为双引导或多引导系统,不过任何时候都只有一个操作系统在控制计算机。
操作系统负责管理资源,而这些资源通常是由使用它们的程序共享的,多个并发执行的程序将共享主存,依次使用CPU,竞争使用输入/输出设备的机会。
10.1.1内存,进程,与CPU管理
多道程序设计:同时在主存中驻留多个程序,由它们竞争CPU技术。
内存管理:了解主存中载有多少个程序以及它们的位置和动作。
进程:程序执行过程中的动态表示法。
进程管理:了解活动进程的信息的动作。
CPU调度:确定主存中的哪个进程可以访问CPU以便执行的动作。
操作系统自身也是必须执行的程序,所以在内存中也要和其他系统软件及应用程序一起管理和维护OS进程。
10.1.2批处理 现代操作系统中的批处理概念允许用户把一组OS命令定义为一个批文件,以控制一个大型程序或一组交互程序的处理。
10.1.3分时 分时系统允许多个用户同时与计算机进行交互,分时系统中,每个用户都有自己的虚拟机
分时:多个交互用户同时共享CPU时间的系统。
虚拟机:分时系统创建的每个用户都有专有机器的假象。
主机:一个大型的多用户计算机,通常与早期的分时系统相关。
哑终端:在早期的分时系统中用户用于访问主机的一套显示器和键盘
10.1.4 其他OS要素 实时系统:应用程序的特性决定了响应时间至关重要的系统 响应时间:收到信号和生成响应之间的延迟时间。
10.2内存管理
主存中的每个字节或字都有一个对应的地址,这个地址只是一个整数,唯一标识了内存中的一个特定部分。
要知道载入主存的什么位置,使用两种地址,一个是逻辑地址,一个是物理地址
逻辑地址:对一个存储值的引用,是相对于引用它的程序的。
物理地址:主存储设备中的真实地址。
在编译程序时:对标识符的引用将被转化为逻辑地址,逻辑地址和物理地址间的映射叫作地址链编。
10.2.1单块内存管理
把主存分为两部分,操作系统得到了所需要的空间,余下的分配给了应用程序。这种方法称为单块内存管理,即把应用程序载入一段连续的内存区域的内存管理方法。逻辑地址只是一个相对于程序起始位置的整数值,要生成物理地址,只要用逻辑地址加上程序在物理主存中的起始地址即可。
单块内存管理法优点在于实现和管理都简单,但是大大浪费了内存空间和CPU时间,应用程序一般不可能需要操作系统剩余的所有空间,而且在程序等待某些资源的时候,还会浪费CPU时间。
10.2.2分区内存管理
固定分区法:主存将被划分为特定数目的分区,这些分区的大小不一定要相同,但在操作系统初始引导时他们的大小就固定了。
动态分区法:主存被看作一个大的空白分区,当载入程序时,将从主存划分出一块刚好能够容纳程序的空间,留下一块新的,小一些的空白分区。
当CPU开始运行一个程序时,OS将把分区起始地址存储到基址寄存器,同样,分区的长度将被存入界限寄存器。
基址寄存器:存放当前分区的起始地址的寄存器。 界限寄存器:存放当前分区的长度的寄存器。
分区内存管理同时把几个程序载入内存,从而可以有效地利用主存。在动态分区中,作业可以在内存中移动,以创建较大的空白分区。这个过程叫作压缩
10.2.3页式内存管理
主存被分成小的大小固定的存储块,叫作帧。进程被划分为页
帧:大小固定的一部分主存,用于存放进程页。 页:大小固定的一部分进程,存储在内存帧中。 页映射表:操作系统用于记录页和帧之间的关系的表。
在此模式中,地址被转化成两个值,页编号和偏移量。用页面大小除逻辑地址得到的商是页编号,余数是偏移量。
分页的优点在于不必再把进程存储在连续的内存空间中。。页式内存管理思想的一个重要扩展是请求分页,即只有当页面被引用时才会被载入内存。
从二级存储设备载入页面通常会把其他页面写回二级存储设备,这种行为叫作页面交换。
虚拟内存:由于整个程序不必同时处于内存而造成的程序大小没有限制的假象。 系统颠簸:连续的页面交换造成的低效处理。
10.3.1进程状态
10.3.2
进程控制块:操作系统管理进程信息使用的数据结构。PCB还存储了进程在其他所有的CPU寄存器中的值。 上下文切换:当一个进程移出去CPU,另一个进程取代它时发生的寄存器信息交换。
10.4CPU调度
CPU调度可以是在一个进程中从运行状态切换到等待状态或程序终止时发生的,非抢先调度
在一个进程从运行状态转移到准备就绪状态或从一个进程从等待转移到准备就绪时发生的,抢先调度
周转周期:从进程进入准备就绪状态到它最终完成之间的时间间隔,是评估CPU调度算法的标准。
10.4.1先到先服务
进程按照它们到达运行状态的顺序转移到CPU,一旦进程获得了CPU的访问权,那么除非它强制要求转入等待状态,否则将一直占用CPU。事实上进程并非是同时到达的,平均周转周期的计算方法是一样的。
10.4.2最短作业优先
和FSFS一样,为非抢先算法。它把CPU给予执行时间需要最短的时间的作业。
10.4.3轮询法
处理时间平均分配给所有准备就绪的进程,即在每个进程被抢占并返回准备就绪状态之前收到的时间量。
时间片:在CPU轮询算法中分配给每个进程的时间量。
注意的是,轮询算法是抢先的。时间片到期,进程就会被强制移出CPU,即从运行状态转移到准备就绪状态。
第十一章 文件系统和目录
11.1文件系统
主存是存放活动的程序和正在使用的地方。主存具有易失性,关掉电源后存储在主存中的信息就会丢失,二级存储设备则具有永久性,即使关闭电源,它存储的信息依然存在。
11.1.1文本文件和二进制文件
文本文件:包含字符的文件
二进制文件:包含特定格式的数据的文件,要求给位串一个特定的解释。
注意的是,用高级语言编写的程序也会被存储为文本文件,有时这种文件也叫作源文件。
11.1.2 文件类型 文件类型是文件中存放的关于类型的信息 文件拓展名:文件名中说明文件类型的部分。
操作系统具有一个能识别文件类型的清单,而且会把每种类型关联到特定的应用程序。在具有图形用户界面(GUI)操作系统中,每种文件类型还有一个特定的图标。
11.1.3文件操作
一个打开的文件都有一个当前的文件指针,即一个地址。说明下次读写操作发生的位置。读文件指的是操作系统提交文件中从当前文件指针开始的数据的副本,删减文件,是指删除文件的内容,但不删除文件表中的管理条目。
11.1.4文件访问
顺序文件访问:读写操作根据读写的数据量移动当前的文件指针,以线性方式访问文件中的数据的方法。
直接文件访问:通过指定逻辑记录编号直接访问文件中的数据的方法。文件会被概念性地划分为带编号的逻辑记录,直接访问允许用户指定记录编号。
11.1.5 文件保护
每个文件都由一个特定用户所拥有,通常是文件的创造者,owner具有文件的最高访问许可,一个文件可能具有一个相关的组名,分组只是一个用户列表。
11.2目录
目录是文件的有名集合,是一种按照逻辑方式对文件分组的方法。
11.2。1目录树
包含其他目录的叫作父目录,被包含的目录叫作子目录。根目录是包含所有目录的最高层目录。
嵌套的目录结构允许存在多个同名文件,任何一个目录下的所有的文件的名字必须是唯一的,但不同目录或子目录下的文件可以是同名的。
Windows根目录驱动器符号是,Unix是/。
11.2.2路径名
路径:文件或子目录在文件系统的位置的文本名称。
绝对路径:从根目录开始,包括所有后继子目录的路径。相对路径:从当前工作目录开始的路径。
使用相对路径时有时需要返回上层目录,注意使用绝对路径不会遇到这种情况,大多数操作系统使用两个点(..)来表示父目录,一个点表示当前工作目录。
11.3磁盘调度
决定先满足哪个磁盘的I/O请求的操作。磁盘驱动器被组织得像一叠盘片,每个盘片被分为几个磁道,每个磁道被分为几个扇区。所有盘片上对应的磁道构成了柱面。
寻道时间:是读写头到达指定柱面所花费的时间。
等待时间:是盘片旋转到正确位置以便读写数据所花费的时间。
以课本例子来说。假设某个特定时刻柱面请求顺序如下:49,91,22,61,7,62,33,35,假设此时在26
11.3.1先到先服务磁盘调度法
不考虑读写头的当前位置,读写头将从26移到柱面49,49到91,91到22,按照请求顺序以此类推。但是要注意的是,91到22过程中,会经过多个当前未解决的请求所要求的柱面。
11.3.2最短寻道时间优先磁盘调度法
通过尽可能少的读写头移动满足所有未解决的请求。可能会在满足一个请求后改变读写头的移动方向顺序是,26,22,33,49,61,62,91,7
这种方法不能保证读写头整体移动最少。假设已有的请求还未解决,而新的请求仍进来,新的请求总是比早期的请求所需要的柱面离当前位置更近。早期的请求将永远得不到满足,因为不断到来的请求总有优先权。这种情况叫作饿死,先到先服务不会有这种情况。
11.3.3 SCAN磁盘调度法
读写头向轴心移动,然后向边缘移动,这样轴心和盘片边缘之间来回移动。我们要决定读写头最初移动的方向。顺序是26,22,7,1,33,35,49,61,62,91
这种机制下对新的请求没有任何处理。如果新的请求恰好在读写头到达柱面之前到达,它将被立即处理。
读写头只移动到请求的最外面或最里面的柱面,不再移动到盘片边缘或轴心。它会先预判读写头是否应该继续按照当前方向移动。
问题:本章的学习过程中依旧是接触了更多的新概念,以及对原来的认知进行了一个更详细的划分。理解上会略有一些麻烦,知识串联度高。比如两章书都提到了一个先到先服务之类的处理方法
解决方法:利用两章书和前面的知识结合去记忆和理解,比如树状图其实与目录图两者之间是有很相似的联系的,可以加强记忆。