导图社区 软件设计师【第4章 操作系统知识】
软件设计师【第4章 操作系统知识】从操作系统概述、进程管理、存储管理、设备管理、文件管理、作业管理这几个方面详细描述了操作系统包括的内容
编辑于2022-07-13 15:52:43软件设计师【第4章操作系统知识】
操作系统概述
基本概念
定义
能有效地组织和管理系统中的各种软/硬件资源,合理地组织计算机系统工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口
作用
通过资源管理提高计算机系统的效率
改善人机界面向用户提供友好的工作环境
操作系统是计算机系统的资源管理者,首要作用就是通过CPU管理、存储管理、设备关联和文件管理对各种资源进行合理的分配
改善资源的共享和利用程度,最大限度地发挥计算机系统的工作效率,提高计算机系统在单位时间内处理工作的能力(称为系统的“吞吐量”)
操作系统特征与功能
操作系统的4个特征
并发性、共享性、虚拟性和不确定性
进程管理
实质上是对处理机的执行“时间”进行管理,采用多道程序等技术将CPU的时间合理地分配给每个任务,主要包括进程控制、进程同步、进程通信和进程调度
文件管理
主要包括文件存储空间管理、目录管理、文件的读/写管理和存取控制
存储管理
存储管理是对主存储“空间”进行管理,主要包括存储分配和回收、存储保护、地址映射(变换)和主存扩充
设备管理
实质是对硬件设备的管理,包括对输入/输出设备的分配、启动、完成和回收
作业管理
包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等
操作系统的5大功能
操作系统的分类
批处理操作系统
批处理操作系统分为单道批处理和多道批处理
单道是指一次只有一个作业装入内存执行
作业由用户程序、数据和作业说明书(作业控制语言)3个部分组成
多道批处理操作系统允许多个作业装入内存执行
多道批处理系统主要有3个特点:多道、宏观上并行运行、微观上串行运行
分时操作系统
分时操作系统是将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务
实时操作系统
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应
实时系统对交互能力要求不高,但要求可靠性有保障
实时系统分为实时控制系统和实施信息处理系统
实时控制系统主要用于生产过程的自动控制,例如数据自动采集
实时信息处理系统主要用于实时信息处理,例如飞机订票系统
实施系统与分时系统的区别
系统的设计目标不同。分时系统是设计一个多用户的通用系统,交互能力强,而实时系统大多是专用系统
交互性的强弱不同。分时系统是多用户的通用系统,交互能力强;而实时系统是专用系统,仅允许操作并访问有限的专用程序,不能随便修改,且交互能力差
响应时间的敏感程度不同。分时系统是以用户能接收的等待时间为系统的设计依据;而实时系统是以被测物体所能接受的延迟为系统设计依据。因此,实时系统对响应时间的敏感程度更强
网络操作系统
网络操作系统是使联网计算机能方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合
网络操作系统是网络用户和计算机网络之间的一个接口,它除了应具备通常操作系统应具备的基本功能外,还应有联网功能
一个典型的网络操作系统的特征包括:硬件独立性、多用户支持
网络操作系统的功能包括
可靠的网络通信
对网络中共享资源(在LAN中有硬盘、打印机等)的有效管理
提供电子邮件、文件传输、共享硬盘和打印机等服务
网络安全管理
提供互操作能力
网络操作系统分为三类
集中模式:UNIX就是这类系统的典型例子
客户端/服务器模式
对等模式
在采用这种模式的操作系统网络中,各个站点是对等的
网络操作系统的三大阵营:UNIX、Windows NT、NetWare
分布式操作系统
分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息
分布式操作系统能直接对系统中的各类资源进行动态分配和调度、任务划分、信息传输协调工作,并为用户提供一个统一的界面、标准的接口
分布式操作系统是网络操作系统的更高级形式
微型计算机操作系统
常用的有Windows、Mac OS、Linux都是微型操作系统
嵌入式操作系统
嵌入式操作系统运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等资源进行统一协调、处理、指挥和控制
特点
微型化
可定制
实时性
可靠性
易移植性
进程管理
程序与进程
程序顺序执行的特征
前趋图是一个有向无循环图,由结点和有向边组成,结点代表各程序段的操作,而结点间的有向边表示两个程序段操作之间存在的前趋关系(-->)
程序段Pi和Pj的前趋关系表示成Pi-->Pj,其中,Pi是Pj的后继,其含义是Pi执行结束后Pj才能执行
3个结点的前驱图
程序顺序执行时的主要特征包括:顺序性、封闭性和可再现性
程序并发执行的特征
失去了程序的封闭性
程序和机器的执行程序的活动不再一一对应
并发程序间的相互制约性
进程的组成
进程是程序的一次执行,该程序可以和其他程序并发执行
进程通常是由程序、数据和进程控制块PCB组成的
PCB
PCB是进程存在的唯一标志
程序
程序部分描述了进程需要完成的功能
数据
数据部分包括程序执行时所需的数据及工作区
该部分只能为一个进程所专用,进程的可修改部分
进程的状态及其状态间的切换
三态模型
运行
当一个进程在处理机上运行时,则称该进程处于运行状态
就绪
一个进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行,称此进程处于就绪状态
阻塞
阻塞也称等待或睡眠状态,一个进程正在等待某一事件发生而暂时停止运行,这时即使把处理机分配给进程也无法运行
进程的三态模型
五态模型
对于一个实际的系统,进程的状态及其转换更复杂,引入新建态和终止态构成了五态模型
新建态对应于进程刚刚被创建时没有被提交的状态,并等待系统完成创建进程的所有必要信息
进程的五态模型
具有挂起状态的进程状态及其转换
由于进程的不断创建,系统资源特别是主存资源已不能满足进程运行的要求,这是必须将某些进程挂起
活跃就绪
活跃就绪是指进程在主存并且可被调度的状态
静止就绪
静止就绪是指就绪进程被对换到辅存时的状态,它是不能被直接调度的状态
活跃阻塞
活跃阻塞是指进程在主存,一旦等待的事件产生便进入活跃就绪状态
静止阻塞
静止阻塞是指阻塞进程对换到辅存时的状态,一旦等待的事件产生便进入静止就绪状态
细分进程状态及其转换
进程控制
进程控制就是对系统中的,所有进程从创建到消亡的全过程实施有效的控制
操作系统设置了一套控制机构,该机构的主要功能包括创建一个新进程
,撤销一个已经运行完的进程,改变进程的状态实现进程间的通信
进程控制是由操作系统内核中的原语实现的
原语是指由若干条机器指令组成的,用于完成特定功能的程序段
内核中所包含的原语主要有进程控制原语、进程通信原语、资源管理原语以及其他方面的原语
属于进程控制方面的原语有进程创建原语、进程撤销原语、进程挂起原语、进程激活原语、进程阻塞原语以及进程唤醒原语等
进程间的通信
同步与互斥
同步是合作进程间的直接制约问题,互斥是申请临界资源进程间的间接制约的问题
进程间的同步
进程间的同步是指在系统中一些需要相互合作,协同工作的进程
进程间的互斥
进程互斥是指系统中多个进程因争用临界资源而互斥执行
临界区管理的原则
临界区CS是进程中对临界资源实施操作的那段程序
对互斥临界区的管理原则
有空即进
当无进程处于临界区时,允许进程进入临界区,并且只能在临界区运行有限的时间
无空则等
当有一个进程在临界区时,其他欲进入临界区的进程必须等待,以保证进程互斥地访问临界资源
有限等待
对于要求访问临界资源的进程,应保证进程能在有限的时间进入临界区,以免陷入“饥饿”状态
让权等待
当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入忙等状态
信号量机制
整型信号量、记录型型号量和信号量集体制
整型信号量与PV操作
公用信号量
实现进程间的互斥,初值为1或资源的数目
私用信号量
实现进程的同步,初值为0或某个正整数
信号量S的物理意义:S>=0表示某资源的可用数,S<0,则其绝对值表示阻塞队列中等待该资源的进程数
PV操作是实现进程同步与互斥的常用方法
P操作和V操作是低级通信原语,P表示申请一个资源,V表示释放一个资源
P操作的定义
S:=S-1,若S>=0,则执行P操作的进程继续执行
若S<0,则置该进程为阻塞状态(因为无可用资源),并将其插入阻塞队列
V操作的定义
S:=S+1,若S>0,则执行V操作的进程继续执行
若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续
利用PV操作实现进程的互斥
令信号量mutex的初值为1,当进入临界区时执行P操作,退出临界区时执行V操作
利用PV操作实现进程的同步
高级通信原语
共享存储模式
相互通信的进程共享某些数据结构(或存储区)实现进程之间的通信
消息传递模式
进程间的数据交换以消息为单位,程序员直接用系统提供的一组通信命令(原语)来实现通信
管道通信
管道是指用于连接一个读进程和一个写进程,以实现它们之间通信的共享文件
管程
管程的结构
每一个管程都要有一个名字以供标识
用语言来写一个管程的形式
进程调度
进程调度方式是指当有更高优先级的进程到来时如何分配CPU
调度方式分为可剥夺和不可剥夺
三级调度
高级调度
高级调度又称“长调度”或“接纳调度”,它决定处于输入池
中的哪个后备作业可以调入主系统做好运行的准备,成为一个或一组就绪进程
在系统中一个作业只需进过一次高级调度
中级调度
也称为“中程调度”或“对换调度”,它决定处于交换区中的哪个就绪进程可以调入内存,以便直接参与对CPU的竞争
低级调度
又称为“短程调度”或“进程调度”,它决定于内存中的哪个就绪进程可以占用CPU
低级调度是操作系统中最活跃、最重要的调度程序,对系统的影响很大
调度算法
先来先服务FCFS
FCFS安装作业提交或进程成为就绪状态的先后次序分配CPU,即进程调度总是将就绪队列队首的进程投入运行
FCFS的特点是比较利于长作业,而不利于短作业;有利于CPU繁忙的作业,而不利于I/O繁忙的作业
FCFS算法主要用于宏观调度
时间片轮转
时间片轮转算法主要用于微观调度,其设计目标是提高资源利用率
固定时间片
分配给每个进程相等的时间片,使所有进程都公平执行,它是一种实现简单且有效的方法
可变时间片
根据进程不用的要求对时间片的大小实时修改,可以更好地提高效率
优先级调度
优先级调度算法是让每一个进程都拥有一个优先数,数值大的表示优先级高,系统在调度时总选择优先数大的占用CPU
优先级调度分为静态优先级和动态优先级两种
静态优先级
进程的优先级在创建时确定,直到进程终止都不会改变
通常根据以下因素确定优先级:进程类型、对资源的需求、用户要求
动态优先级
在创建进程时赋予一个优先级,在进程运行过程中还可以改变,以便获得更好的调度性能
多级反馈调度
多级反馈队列调度算法是时间片轮转算法和优先级算法的综合与发展
优点:
照顾了段进程以提高系统吞吐量、缩短了平均周转时间
照顾I/O型进程以获得较好的I/O设备利用率和缩短响应时间
不必估计进程的执行时间,动态条件优先级
多级反馈队列调度算法实现思路
设置多个就绪队列
新进程进入内存后,先投入队列1的末尾,按FCFS算法调度
若某进程在队列1的一个时间片内未能执行完,则降低投入队列2的末尾,同样按FCFS算法调度
仅当较高优先级的队列为空才调度较低优先级队列中的进程执行
进程优先级确定
对于I/O型进程,让其进入最高优先级队列,以及时响应需要I/O交互的进程
对于计算型进程,每次都执行完时间片后进入更低级队列,最终采用最大时间片来执行,以减少调度次数
对于I/O次数不多,主要是CPU处理的进程,在I/O完成后,返回优先I/O请求时离开的队列,以免每次都回到最高优先级队列后再逐次下降
为适应一个进程在不同时间段的运行特点,I/O完成时,提高优先级;时间片用完时,降低优先级
死锁
死锁是指两个以上的进程相互都要求对方已经占有的资源导致无法继续运行下去的现象
产生死锁的原因
竞争资源及进程推进顺序非法
当系统中有多个进程所共享的资源不足以同时满足它们的需求时,将引起它们对资源的竞争导致死锁
进程推进顺序非法,指进程在运行的过程中请求和释放资源的顺序不当,导致进程死锁
死锁产生的4个必要条件
互斥条件
请求保持条件
不可剥夺条件
环路条件
死锁的处理
死锁预防
死锁预防是采用某种策略限制并发进程对资源的请求,破坏死锁产生的4个必要条件之一,使系统在任何时刻都不满足死锁的必要条件
预防死锁的两种策略
预先静态分配法
破坏了“不可剥夺条件”,预先分配所需资源,保证不等待资源
缺陷是有时可能无法预先知道所需资源
资源有序分配法
破坏了“环路条件”,把资源分类按顺序排列,保证不形成环路
该方法存在的问题是限制进程对资源的请求,由于资源的排序占用系统开销
死锁避免
死锁避免不那么严格地限制产生死锁的必要条件
死锁检测
解决死锁的另一条途径是使用死锁检测方法,这种方法对资源的分配不加限制,即允许死锁产生
系统定时运行一个死锁检测程序,判断系统是否发生死锁,若检测到有死锁,则设法加以解除
死锁解除
资源剥夺法
从一些进程那里强行剥夺足够数量的资源分配给死锁进程
撤销进程法
根据某种策略逐个地撤销死锁进程,直到解除死锁为止
线程
传统的进程有两个基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位
引入线程的原因是进程在创建、撤销和切换中,系统必须为之付出较大的时空开销,故在系统中设置的进程数目不宜过多,进程切换的频率不宜太高,这就限制了并发程度的提高
线程具有就绪、运行和阻塞3个基础状态
线程分为用户级线程和内核支持线程两类
用户级线程不依赖于内核,该类线程的创建、撤销和切换都不利用系统调用来实现
内核支持线程依赖于内核,即无论是在用户进程中的线程,还是在系统中的线程,它们的创建、撤销和切换都利用系统调用来实现
存储管理
存储管理的对象是主存存储器简称主存或内存
存储器的结构
虚拟地址
地址空间
存储空间
地址重定位
地址重定位是指将逻辑地址变成成主存物理地址的过程
静态重定位
静态重定位是指在程序装入主存时已经完成了逻辑地址到物理地址的变换,在程序的执行期间将不会再发生变化
优点是无须硬件地址变换机构的支持
缺点是必须给作业分配一个连续的存储区域
动态重定位
动态重定位是指在程序运行期间完成逻辑地址到物理地址的变换
优点是程序在执行期间可以换入和换出主存,以解决主存空间不足的问题
存储管理方案
存储管理的主要目的是解决多个用户使用主存的问题
分区存储管理
其基本思想是把主存的用户区划分成若干个区域
固定分区
固定分区是一种静态分区方式
突出问题是已分配区中存在未用空间,造成了空间的浪费
可变分区
可变分区是一种动态分区方式
需要两种管理表格:已分配表记录已分配分区的情况,未分配表记录未分配分区的情况
最佳适应算法
最差适应算法
首次适应算法
循环首次适应算法
对可变分区的请求和释放分区主要的4种算法
可重定位分区
可重定位分区是解决碎片问题的简单且行之有效的方法
基本思想是移动所有已分配好的分区,使之成为连续区域
分区保护
分区保护的目的是防止未经核准的用户访问分区
采用上界/下界寄存器保护
上界寄存器中存放的是作业的装入地址,下界寄存器中装入的是作业的结束地址
采用基址/限长寄存器保护
基址寄存器中存放的是作业的装入地址,限长寄存器中装入的是作业的长度
分页存储管理
纯分页存储管理
分页原理
将一个进程的地址空间划分成若干个大小相等的区域称为分页
将主存空间划分成与页相同大小的若干个物理块称为页框
地址结构
由两部分组成:前一部分为页号P;后一部分未偏移量W即页内地址
分页地址结构
地址长度是32位,0~11位是页内地址(每页的大小为4kb);12~31位为页号,允许地址空间的大小最多为1Mb个页
页表
系统为每个进程建立一张页面映射表称为页表
快表
两级页表机制
分段存储管理
在分段存储管方式中,作业的地址空间被划分为若干个段,每个段是一组完整的逻辑信息,例如主程序段、子程序段、数据段及堆栈段等
为每个段分配一个连续的分区,进程中的各个段可以离散地分配到主存的不同分区中
段页式存储管理
段页式系统的基本原理是先将整个主存划分成大小相等的存储块(页框),将用户程序按程序的逻辑关系分为若干个段,并为每个段赋予一个段名,再将每个段划分成若干页,以页框为单位离散分配
段页式能有效地提高主存利用率,有具有分段系统能很好地满足用户需要的长处,是一种比较有效的存储管理方式
段页式管理的地址结构
根据段号S查段表,得到页表的起始地址
根据页号P查页表,得到物理块号b
将物理块号B拼页内地址W得到物理地址
段页式系统中逻辑地址到物理地址的变换过程
虚拟存储管理
程序局部性原理
时间局限性是指如果程序中的某条指令一旦执行,则不久的将来该指令可能再次被执行
空间局限性是指一旦程序访问了某个存储单元,则在不久的将来,其附近的存储单元也最优可能被访问
虚拟存储器的实现
请求分页系统
是在分页系统的基础上增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统
请求分段系统
是在分段系统的基础上增加了请求调段和分段置换功能所形成段式虚拟存储系统
请求段页式系统
是在段页式系统的基础上增加了请求调页和页面置换功能所形成的段页式虚拟存储系统
请求分页管理的实现
请求分页是在纯分页系统的基础上增加了请求调页功能、页面置换功能所形成的页式虚拟存储系统
请求分页的页表机制是在纯分页的页表机制上形成的
请求分页系统中的地址变换机构是在分页系统的地址变换结构的基础上增加了某些功能
在请求分页系统中,每当所要访问的页面不在主存时便要产生一个缺页中断,请求OS将所缺的页调入主存
页面置换算法
最佳置换算法
选择哪些是永不使用的,或者是在最长时间内不再被访问的页面置换出去
这种方法性能最好,但实际上难于实现
并且要确定哪一个页面是未来最长时间内不再被访问的是很难的,该算法常用来评价其他算法
先进先出FIFO置换算法
该算法总数淘汰最先进入主存的页面,即选择在主存中驻留时间最久的页面予以淘汰
是一种最直观、性能最差的算法
最近最少未使用LRU置换算法
是选择最近最少未使用的页面予以淘汰
最近未用NUR置换算法
将最近一段时间未引用过的页面换出,这是一种LRU的近似算法
该算法为每个页面设置一位访问位,将主存中的所有页面都通过链接指针链成一个循环队列
工作集
设备管理
设备管理概述
设备的分类
按数据组织分类
分为快设备和字符设备
安装设备的功能分类
分为输入设备、输出设备、存储设备、网络联网设备、供电设备等
从资源分配角度分类
分为独占设备、共享设备和虚拟设备
按数据传输率分类
分为低速设备、中速设备、高速设备
设备管理的目标与任务
设备管理的目标主要是如何提高设备的利用率,为用户提供方便、统一的界面
主要利用的技术有中断技术、DMA技术、通道技术和缓冲技术
设备管理的任务是保证在多道程序环境下,当多个进程竞争使用设备时,按一定的策略分配和管理各种设备,控制设备的各种操作,完成I/O设备与主存之间的数据交换
设备管理的主要功能是动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理I/O设备的操作、提供设备使用的用户接口及设备的访问和控制
I/O软件
I/O软件的主要目标是设备独立性和统一命名
I/O设备管理软件一般分为4层:中断处理程序、设备驱动程序、与设备无关的系统软件和用户级软件
I/O系统的层次结构与每层的主要功能
设备管理采用的相关技术
通道技术
引入通道的目的是使数据的传输独立于CPU,使CPU从繁琐的I/O工作中解脱出来
根据信息交换方式的不同,将通道分为字节多路通道、数组选择通道和数组多路通道三类
通道价格昂贵,导致计算机系统中通道数是有限的
DMA技术
直接主存存取DMA是指数据再主存与I/O设备间直接成块传送
在主存与I/O设备间传送一个数据块的过程中不需要CPU的任何干涉,只需要CPU在过程开始启动与过程结束时处理,实际操作有DMA硬件直接执行完成
缓冲技术
缓冲技术可提高外设利用率,尽可能使外设处于忙状态
缓冲技术可以采用硬件缓冲和软件缓冲
硬件缓冲是利用专门的硬件寄存器作为缓冲
软件缓冲是通过操作系统来管理的
缓和CPU与I/O设备间速度不匹配的矛盾
减少对CPU的中断频率,放宽对中断响应时间的限制
提高CPU和I/O设备之间的并行性
引入缓冲的主要原因
Spooling技术
Spooling外围设备联机操作实际上是用一类物理设备模拟另一类物理设备的技术,是使独占使用的设备变成多台虚拟设备的一种技术,也是一种速度匹配技术
Spooling系统是由“预输入程序”“缓输出程序”和“井管理程序”以及输入和输出井组成的
输入井和输出井是为了存放从输入设备输入的信息以及作业执行的结果,系统在辅助存储器上开辟的存储区域
Spooling系统的工作过程是操作系统初启后激活Spooling预输入程序使它处于捕获输入请求的状态
输入井作业的4中状态
提交状态
作业的信息正从输入设备上预输入
后备状态
作业预输入结束但未被选中执行
执行状态
作业已被选中运行,在运行过程中,它可从输入井中读取数据信息,也可向输出井写信息
完成状态
作业已经撤离,该作业的执行结果等待缓输出
磁盘调度
磁盘驱动调度
先来先服务FCFS
这是最简单的磁盘调度算法,根据进程请求访问磁盘的先后次序进行调度
此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某进程的请求长期得不到满足的情况
缺点:由于未对寻道进行优化,致使平均寻道时间可能较长
最短寻道时间优先
要求访问的磁道与当前磁头所在的磁道距离最近,使得每次的寻道时间最短
但这种调度算法不能保证平均寻道时间最短
扫描算法SCAN
扫描算法不仅考虑到要访问的磁道与当前磁道的距离更优先考虑的是磁头的当前移动方向
单向扫描调度算法CSCAN
旋转调度算法
(1)进程请求访问的是同一磁道上不同编号的扇区
(2)进程请求访问的是不同磁道上不同编号的扇区
(3)进程请求访问的是不同磁道上具有相同编号的扇区
对于(1)和(2),旋转调度总是让首先到达读/写磁头位置下的扇区先进行传送操作
对于(3),旋转调度可以任选一个读/写磁头位置下的扇区进行传送操作
文件管理
文件与文件系统
文件
文件是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合
文件系统
文件系统是操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构
文件系统的功能包括按名存取,即用户可以“按名存取”而不是“按地址存取”
文件的类型
按文件性质和用途可将文件分为系统文件、库文件和用户文件
按信息保存期限分类可将文件分为临时文件、档案文件和永久文件
按文件的保护方式分类可将文件分为只读文件、读/写文件、可执行文件和不保护文件
UNIX系统将文件分为普通文件、目录文件和设备文件(特殊文件)
常用的文件系统类型有FAT、Vfat、NTFS、Ext2、HPFS
文件的结构和组织
文件的逻辑结构
有结构的记录式文件
定长记录
指文件中所有记录的长度相同
变长记录
指文件中各记录的长度不相同
无结构的流式文件
文件体为字节流,不划分记录
文件的物理结构
连续结构
将逻辑上连续的文件信息(如记录)依次存放在连续编号的物理块上
链接结构
链接结构也称串联结构,将逻辑上连续的文件信息存放在不连续的物理块上,每个物理块设有一个指针指向一个物理块
索引结构
在采用索引结构时,将逻辑上连续的文件信息存放在不连续的物理块中,系统为每个文件建立一张索引表
多个物理块的索引表
索引表是在文件创建时由系统自动建立的,并与文件一起存放在同一文件卷上
文件目录
文件控制块
基本信息类
存取控制信息类
文件的存取权限
使用信息类
文件建立日期、最后一次修改日期、最后一次访问的日期、当前使用的信息等
文件控制块包含的三类信息
目录结构
一级目录结构
一级目录的整个目录组织是一个线性结构,在整个系统中只需建立一张目录表,系统为每个文件分配一个目录项
二级目录结构
二级目录结构是由主文件目录和用户目录组成的
多级目录结构
采用多级目录结构的文件系统中,用户要访问一个文件,必须指出文件所在的路径名,路径名是从根目录开始到该文件的通路上所有各级目录名拼起来得到的
存取方法和存储空间的管理
文件的存取方法
文件的存取方法时指读/写文件存储器上的一个物理块的方法
有顺序存取和随机存取两种方法
顺序存取方法是指对文件中的信息按顺序依次进行读/写
随机存取方法是指对文件中的信息可以按任意的次序随机地读/写
文件存储空间的管理
空闲区表
将外村空间上的一个连续的未分配区域称为“空闲区”
位示图
这种方法是在外存上建立一张位示图Bitmap,记录文件存储器的使用情况
特点是位示图的大小由磁盘空间的大小(物理块总数)决定,位示图的描述能力强,适合各种物理结构
空闲块链
成组链接法
UNIX系统采用该方法
文件的使用
当用户使用文件时,文件系统通过用户给出的文件名查出对应文件的存放位置,读出文件的内容
文件的共享和保护
文件的共享
还可以节省大量的主存空间,减少由于文件复制而增加的访问外存的次数
硬链接
文件的硬链接是指两个文件目录表目指向同一个索引结点的链接
该链接也称基于索引结点的链接
符合链接
符号链接建立新的文件或目录,并与原来文件或目录的路径名进行映射,当访问一个符号链接时,系统通过该映射找到原文件的路径,并对其进行访问
文件的保护
文件系统对文件的保护常采用存取控制方式进行
存取控制矩阵
存取控制方法可用存取控制矩阵
存取控制表
存取控制矩阵由于太大往往无法实现
用户权限表
改进存取控制矩阵的另一种方法是以用户或用户组为单位将用户可存取的文件集中起来存入表中
密码
在创建文件时,由用户提供一个密码,在文件存入磁盘时用该密码对文件内容加密
在进行读取操作时,要对文件进行解密,只有知道密码的yoghurt才能读取文件
系统的安全域可靠性
系统的安全
系统级
系统级安全管理的主要任务是不允许未经授权的用户进入系统,从而也防止了他人非法使用系统中各类资源
系统级管理的主要措施有注册与登录
用户级
用户级安全管理是通过对所有用户分类和对指定用户分配访问权,不同的用户对不同文件设置不同的存取权限来实现
目录级
目录级安全管理是为了保护系统中各种目录而设计的,它与用户权限无关
文件级
文件级安全管理是用过系统管理员或文件主对文件属性的设置来控制用户对文件的访问
通常可设置的属性有:只执行、隐含、只读、读/写、共享、系统
文件系统的可靠性
转储和恢复
日志文件
文件系统的一致性
作业管理
作业是系统为完成一个用户的计算任务(或一次事务处理)所做的工作总和
作业与作业控制
作业控制
作业由程序、数据和作业说明书3个部分组成
作业说明书包括作业基本情况、作业控制、作业资源要求的描述,它体现用户的控制意图
作业基本情况包括用户名、作业名、变成语言和最大处理时间等
作业控制描述包括作业控制方式、作业的操作顺序、作业执行出错处理
作业资源要求包括处理时间、优先级、主存空间、外设类型和数量
作业状态及转换
提交
作业提交给计算机中心,通过输入设备送入计算机系统的过程状态称为提交状态
后备
通过Spooling系统将作业输入到计算机系统的后备存储器(磁盘)中,随时等待作业调度程序调度时的状态
执行
一旦作业被作业调度程序选中,为其分配了必要的资源,并为其建立相应的进程后,该作业便进入了执行状态
完成
网作业正常结束或异常终止时,作业进入完成状态
作业控制块和作业后备队列
作业控制块JCB是记录与该作业有关的各种信息的登记表
JCB是作业存在的唯一标志,包括用户名、作业名和状态标志等信息
作业调度
作业调度算法
先来先服务
按作业到达的先后进行调度,即启动等待时间最长的作业
短作业优先
以要求运行时间的长短进行调度,即启动要求运行时间最短的作业
响应比高优先
响应比高的作业优先启动
定义响应比=作业响应时间/作业执行时间
作业响应时间为作业进入系统后的等待时间与作业的执行时间之和,即1+作业等待时间/作业执行时间
优先级调度算法
可由用户指定作业优先级,优先级高的作业先启动
均衡调度算法
这种算法的基本思想是根据系统的运行情况和作业本身的特性对作业进行分类
作业调度算法性能的衡量指标
在一个以批处理为主的系统中,通常用平均周转时间或平均带权周转时间来衡量调度性能的优劣
用户界面
用户界面是计算机中实现用户与计算机通信的软/硬件部分的总称
控制面板式用户界面
字符用户界面
图形用户界面
新一代用户界面
用户界面的4个阶段