2019-2020-1学期 20192415
《网络空间安全专业导论》第五周学习总结
第十章 操作系统
10.1 操作系统的角色
软件:
1.应用软件(applacaation software):帮助我们解决现实世界问题的程序。
为满足特定需求而编写的。
2.系统软件(system software):管理计算机系统并与硬件进行交互的程序。
在基础层上管理计算机系统,为创建和运行应用软件提供工具和环境。
通常直接与硬件交互,提供的功能比硬件自身提供的多。
- ★★★计算机的操作系统是系统软件的核心。
- 其他系统软件支持特定目的。
操作系统(operatingsystem):管理计算机资源并为系统交互提供界面的系统软件。
①操作系统负责管理硬件资源,允许应用软件直接地或通过其他系统软件访问系统资源。
资源由使用的程序共享。多个并发执行的程序将共享主存,依次使用CPU,竞争使用输入/输出设备的机会。
操作系统将担任现场监控,确保每个程序都能够得到执行的机会。
②操作系统提供直接的人机交互页面。
一台计算机通常只有一个活动的操作系统,在系统运行中负责控制工作。
计算机可以拥有两个及以上个操作系统(双引导或多引导系统),但任何时候都只有一个操作系统在控制计算机。
10.1.1 内存、进程和CPU管理
正在执行的程序都驻留在主存中,其中的指令以读取——解码——执行这种周期性方式被一个接一个地处理。
操作系统自身也是必须执行的程序。执行OS的CPU就是执行其他程序的CPU,因此也要把OS排进竞争CPU的队列中。
多道程序设计(multiprogramming): 同时在主存中驻留多个程序,由它们竞争CPU的技术。
所有现代操作系统都采用多道程序设计技术。
进程(process): 程序执行过程中的动态表示法。
程序只是一套静态指令,进程则是动态的实体,表示正在执行的程序。
内存管理(memory management):了解主存中载有多少个程序以及它们的位置的动作。
进程管理( process management):了解活动进程的信息的动作。
内存管理和进程管理都需要CPU调度。
CPU调度(CPU scheduling):确定主存中的哪个进程可以访问CPU以便执行的动作。
10.1.2 批处理
作业:程序和系统指令(为执行程序所需的系统软件或其他资源所单独提供的)集合在一起。
一个分批包含一组需要相同或相似资源的作业;当一个分批中的作业被载入内存中时,它们将竞争CPU和其他共享资源的使用权。
10.1.3 分时
分时(timesharing):多个交互用户同时共享CPU时间的系统。
虚拟机(virtual machine):分时系统创建的每个用户都有专有机器的假象。
主机(mainframe):一个大型的多用户计算机,通常与早期的分时系统相关。
哑终端(dumb terminal):在早期的分时系统中用户用于访问主机的一套显示器和键盘。
CPU时间由所有用户创建的所有进程共享。每个进程顺次得到一小段CPU时间。→CPU要足够快
许多台式计算机运行的操作系统都以分时的方式支持多个用户。其他用户可以用其他计算机通过网络连接到这台计算机上。
10.1.4 其他OS要素
- OS必须考虑计算机通常要连接到网络
- OS要负责与各种各样的设备通信
OS需要支持实时系统
实时系统(real-time system):应用程序的特性决定了响应时间至关重要的系统。
响应时间(response time):收到信号和生成响应之间的延迟时间。
10.2 内存管理
逻辑地址(logical address):对一个储存值的引用,是相对于引用它的程序的。
物理地址(physical address):主存设备中的真实地址。
把逻辑地址联编到物理地址的时间越迟,得到的灵活度越大。
地址联编(address binding):逻辑地址和物理地址之间的映射。
采用十进制进行地址联编计算。
多种内存管理策略:
单块内存管理
单块内存管理(single contiguous memory management):把应用程序载入一段连续的内存区域的内存管理方法
物理地址=起始地址+逻辑地址
优点:实现与管理简单
缺点:大大浪费内存空间和CPU时间
分区内存管理
固定分区法(fixed-partition technique):把内存分成特定数目的分区以载入程序的内存管理方法
动态分区法(dynamic-partition technique):根据容纳程序的需要对内存分区的内存管理方法
基址寄存器(base register):存放当前分区的起始地址的寄存器 界限寄存器(bounds register):存放当前分区长度的寄存器
分区选择法:
页式内存管理
页式内存管理法( paged memory technique):把进程划分为大小固定的页,载人内存时存储在帧中的内存管理方法。
帧(frame):大小固定的一部分主存, 用于存放进程页。
页(page):大小固定的一部分进程 ,存储在内存帧中。
页映射表(Page Map Table, PMT): 操作系统用于记录页和帧之间的关系的表。
两种无效逻辑地址:①越过进程界限②偏移量大于帧大小
请求分页( demand paging):页式内存管理法的扩展,只有当页面被引用(请求)时才会被载人内存。
页面交换(page swap):把一个页面从二级存储设备载人内存,通常会使另一个页面从内存中删除。
虚拟内存(virtualmemory):由于整个程序不必同时处于内存而造成的程序大小没有限制的假象。
系统颠簸(thrashing): 频繁的页面交换造成的低效处理。
10.3 进程管理
10.3.1 进程状态
注:可能同时有多个进程处于准备就绪或等待状态,但只有一个进程处于运行状态。
10.3.2 进程控制块
进程控制块(process control block):操作系统管理进程信息使用的数据结构。
上下文切换(context switch):当一个进程移出CPU时,另一个进程取代它发生的寄存器信息交换。
10.4 CPU调度
- 先到先服务FCFS
- 最短作业优先SJN
轮询法
可能是应用最广泛的,一般支持所有的作业,被认为是最公平的算法。