上接:</blog/ruankao_os1.html>
1.5**设备管理:**
其主要任务是:
Ø 实现对外部设备的分配和回收;
Ø 启动外部设备;
Ø 控制输入/输出设备与处理器或主存之间交换数据;
Ø 实现对磁盘的调度;
Ø 处理设备的中断;
Ø 实现虚拟设备等。
根据不同的方面,可以对设备进行分类。
Ø 按数据组织方式:字符设备(常对应于慢速设备)和块设备(常对应于快速设备)。
Ø 按资源性质:独占设备(如终端、打印机)、共享设备(如磁盘)和虚拟设备。
外部设备和主存之间常用的传输方式有4种。
Ø 程序控制方式
Ø 中断方式
Ø 直接存储访问(DMA)方式
Ø 通道方式
虚拟设备:采用假脱机技术,可以将低速的独占设备改造成一种共享设备。简称为spooling技术,利用多道程序技术,采用一组程序模拟一台I/O处理机
设备分配有两种方法,即静态分配方法和动态分配方法。其中设备的动态分配算法与进程调度相似,也具有一定的分配策略,如先请求先分配、优先级高者先分配等。
例如,关于磁盘调度的算法就有以下几种。
Ø 先来先服务(FCFS)调度
Ø 最短查找时间优先(SSTF)调度: 离磁头最近的服务被响应
Ø SCAN调度(电梯算法):在前进方向寻找最短的查找时间的
Ø N步SCAN调度
Ø C-SCAN调度
1.6**文件和文件系统**
文件是信息的一种组织形式,是存储在辅助存储器上的具有标识名的一组信息集合,它可以是有格式的,也可以是无格式的。与文件相关的概念有:数据项、记录、文件和数据库。
操作系统的文件系统包括两个方面:
Ø 负责管理文件的一组系统软件;
Ø 管理的对象文件。
文件系统的主要目标是提高存储器的利用率,接受用户的委托实施对文件的操作。其主要问题是管理辅助存储器,实现文件从名字空间到辅存地址空间的转换,决定文件信息的存放位置、存放形式和存放权限,实现文件和目录的操作,提供文件共享能力和安全设施,提供友好的用户接口。
根据不同方面,可以对文件进行多种分类。
Ø 按文件的用途分:系统文件、库文件和用户文件等。
Ø 按文件的信息流分:输入文件、输出文件和输入输出文件等。
Ø 按文件的组织形式分:普通文件、目录文件和特殊文件等。
Ø 按文件的安全属性分:只读文件、读写文件、可执行文件和不保护文件等。
文件的结构和组织
文件的结构是指文件的组织形式。文件的结构分为逻辑结构和物理结构。从用户的观点所看到的文件组织形式称为文件的逻辑结构,从实现观点考察文件在辅助存储器上的存放方式称为文件的物理结构。
文件的逻辑结构可以分为两种:无结构的字符流文件和有结构的记录文件(也称为有格式文件)。其中,记录文件由记录组成,即文件内的信息划分成多个记录,以记录为单位组织和使用信息。其有几种不同的类型,特别需要注意它们之间的区别。
◆堆文件:数据按先来后到的顺序组织,是最简单的记录文件;
◆顺序文件
顺序文件的记录定长,记录中的数据项的类型长度与次序固定,记录按键值的约定次序组织。
◆索引顺序文件
基于键的约定次序组织,而且维护键的索引和溢出区域。键的索引可以是多级索引。
◆索引文件
基于记录的一个键-数据项关系对来组织,依据记录键值可以找到记录存放位置。
◆直接文件(又称哈希文件)
记录以它们在直接访问存储设备上的物理地址直接(随机)访问。对于一个给定的记录可以直接得出其存储位置。
文件的物理结构侧重于提高存储器的利用效率和降低存取时间。文件的存储设备通常划分为大小相同的物理块,物理块是分配和传输信息的基本单位。文件的物理结构是指文件在存储设备上的存储方法,具有不同的文件分配策略,需要特别注意它们的特点和之间的差别。
◆顺序分配(连续分配)
最简单的分配方式。在文件建立预先分配一个连续的物理块集,然后,按照逻辑文件中的信息(或记录)顺序,依次把信息(或记录)顺序存储到物理块中。不适宜于需要经常修改的文件。
◆ 链接分配(串联分配)
这是按单个物理块逐个进行的。在建立链接文件时,不须指定文件的长度,在文件的说明信息中,只需指出该文件的第一个物理块块号,链接文件的文件长度可以动态的增长,只需调整物理块间的指针就可以插入或删除一个信息块。一般只适用于顺序访问,不适用于随机存取。
◆索引分配
另一种对文件存储不连续分配的方法。系统为每个文件建立一张索引表,索引表中的每一表项指出文件信息所在的逻辑块号和与之对应的物理块号。既适用于顺序存取,也适用于随机存取。
文件控制块:FCB,和进程相似,文件目录有一级目录、二级目录和多级目录结构;
一级目录:只有一个目录表,每个表项对应一个文件;
二级目录:主目录和用户目录;
多级目录:也称为树型目录结构,从根目录出发的层次结构;
1.7 作业管理与用户界面**
作业是系统为了完成一个用户的计算任务(或一次事务处理)所做的工作总和。操作系统中用来控制作业的进入、执行和撤消的一组程序成为作业管理程序。
一般操作系统提供两种作业控制方式。
联机作业方式(on-line)
通过直接输入作业控制命令,提交用户作业,运行用户作业。
脱机作业方式(off-line)
通过作业控制语言(JCL,也称为作业控制命令)编写用户作业说明书。这种方式中,用户不直接干预作业的运行,而是把作业与作业说明书一起提交系统。
作业调度主要是从后备状态的作业中挑选一个(或一些)作业投入运行。与进程调度相似,也具有若干的调度算法。
Ø 先来先服务(FCFS)
Ø 短作业优先(SJF)
Ø 响应比高者优先(HRN)
Ø 优先级调度
**用户界面:**也称为用户接口,是用户与操作系统交互的途径和通道,也是交互环境的控制方式;
**操作系统的接口:**可分为命令接口和程序接口。
**命令接口:**包含键盘命令和作业控制命令;
**程序接口:**程序接口又称为编程接口、系统调用。程序经编程接口请求系统服务,即通过系统调用,程序与操作系统进行通信。
**操作环境:**操作环境支持命令接口和程序接口,提供友好、易用的操作平台。操作系统的交换界面从早期的命令驱动方式发展道菜单驱动方式、图形符号驱动方式和视窗操作环境。