目录
一、文件管理
1. 文件管理概述
文件是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。
信息项是构成文件内容的基本单位,可以是一个字符,也可以是一个记录记录可以等长,也可以不等长。一个文件包括文件体和文件说明。文件体是文件真实的内容。文件说明是操作系统为了管理文件所用到的信息,包括文件名文件内部标识、文件的类型、文件存储地址、文件的长度、访问权限、建立时间和访问时间等。
文件管理系统就是操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构,简称文件系统。文件系统的功能包括按名存取,统一的用户接口;并发访问和控制;安全性控制;优化性能;差错恢复。
文件的类型
1.按文件性质和用途可将文件分为系统文件、库文件和用户文件。
2.按信息保存期限分类可将文件分为临时文件、档案文件和永久文件。
3.按文件的保护方式分类可将文件分为只读文件、读/写文件、可执行文件和不保护文件。
4.UNIX 系统将文件分为普通文件、目录文件和设备文件(特殊文件)
2. 文件的组织结构
文件的逻辑结构可分为两大类:有结构的记录式文件;无结构的流式文件。
- 文件的物理结构是指文件在物理存储设备上的存放方法,包括:
1.连续结构。连续结构也称顺序结构,它将逻辑上连续的文件信息(如记录)依次存放在连续编号的物理块上。
2.链接结构。链接结构也称串联结构,它将逻辑上连续的文件信息(如记录)存放在不连续的物理块上,每个物理块设有一个指针指向下一个物理块。
3.索引结构。将逻辑上连续的文件信息(如记录)存放在不连续的物理块中系统为每个文件建立一张索引表。索引表记录了文件信息所在的逻辑块号对应的物理块号,并将索引表的起始地址放在与文件对应的文件目录项中。
4.多个物理块的索引表。索引表是在文件创建时由系统自动建立的,并与文件一起存放在同一文件卷上。根据一个文件大小的不同,其索引表占用物理块的个数不等,一般占一个或几个物理块。
3.文件目录
文件控制块中包含以下三类信息:基本信息类、存取控制信息类和使用信息类。
1.基本信息类。例如文件名、文件的物理地址、文件长度和文件块数等。
2.存取控制信息类。文件的存取权限,像UNIX 用户分成文件主、同组用户和一般用户三类,这三类用户的读/写执行RWX 权限。
3.使用信息类。文件建立日期、最后一次修改日期、最后一次访问的日期、当前使用的信息(如打开文件的进程数、在文件上的等待队列)等。
文件控制块的有序集合称为文件目录
相对路径:是从当前路径开始的路径。
绝对路径:是从根目录开始的路径。
全文件名=绝对路径+文件名。
注意,绝对路径和相对路径是不加最后的文件名的,只是单纯的路径序列。
4. 文件存储空间管理
文件的存取方法是指读/写文件存储器上的一个物理块的方法。通常有顺序存取和随机存取两种方法。顺序存取方法是指对文件中的信息按顺序依次进行读写,随机存取方法是指对文件中的信息可以按任意的次序随机地读/写。文件存储空间的管理:
1.空闲区表。将外存空间上的一个连续的未分配区域称为“空闲区”。操作系统为磁盘外存上的所有空闲区建立一张空闲表,每个表项对应一个空闲区,适用于连续文件结构。
2.位示图(重点)。这种方法是在外存上建立一张位示图(Bitmap)记录文件存储器的使用情况。每一位对应文件存储器上的一个物理块,取值0 和 1 分别表示空闲和占用。
3.空闲块链。每个空闲物理块中有指向下一个空闲物理块的指针,所有空闲物理块构成一个链表,链表的头指针放在文件存储器的特定位置上(如管理块中),不需要磁盘分配表,节省空间。
4.成组链接法。例如,在实现时系统将空闲块分成若干组,每100个空闲块为一组,每组的第一个空闲块登记了下一组空闲块的物理盘块号和空闲块总数假如某个组的第一个空闲块号等于0,意味着该组是最后一组,无下一组空闲块。
5. 索引文件结构
如图所示,系统中有13个索引节点:
0-9为直接索引,即每个索引节点存放的是内容,假设每个物理盘大小为4KB,共可存4KBX10=40KB数据;
10号索引节点为一级间接索引节点,大小为4KB,存放的并非直接数据,而是链接到直接物理盘块的地址,假设每个地址占4B,则共有1024个地址,对应1024个物理盘,可存1024X4KB=4096KB数据
11号索引节点为二级索引节点类似,直接盘存放一级地址,一级地址再存放物理盘快地址,而后链接到存放数据的物理盘块,容量又扩大了一个数量级,为1024X1024X4KB数据。
6. 文件的共享和保护
文件共享是指不同用户进程使用同一文件。文件共享有多种形式,采用文件名和文件说明分离的目录结构有利于实现文件共享。常见的文件链接有硬链接和符号链接两种。
- (1)硬链接,也称为基于索引结点的链接。采用硬链接可以将两个文件目录表目指向同一个索引结点的链接,从而达到文件共享的目的。
- (2)符号链接。建立新的文件或目录,并与原来文件或目录的路径名进行映射。
文件系统对文件的保护常采用存取控制方式进行。存取控制方法包括以下几种:
- (1)存取控制矩阵。理论上,存取控制方法可用存取控制矩阵,它是一个二维矩阵,其中一维列出计算机的全部用户,另一维列出系统中的全部文件,行列交叉点就是用户对文件的权限,一般有可读、可写、可执行。
- (2)存取控制表。存取控制矩阵由于太大往往无法实现。一个改进的办法是按用户对文件的访问权限的差别对用户进行分类,由于某一文件往往只与少数几个用户有关,所以这种分类方法可使存取控制表大大简化。
- (3)用户权限表。改进存取控制矩阵的另一种方法是以用户或用户组为单位,将用户可存取的文件集中起来存入表中,这个表称为用户权限表。表中的每个表目表示该用户对应文件的 存取权限,这相当于存取控制矩阵一行的简化。
- (4)密码。在创建文件时,由用户提供一个密码,在文件存入磁盘时用该密码对文件内容加密。如果要对文件进行读取操作,需要将文件解密才能读取文件。
7. 文件的安全和可靠性
系统的安全涉及两类不同的问题,一类涉及技术、管理、法律、道德和政治等问题,另一类涉及操作系统的安全机制。一般从4个级别上对文件进行安全性管理:系统级、用户级、目录级和文件级。
文件系统的可靠性是指系统抵抗和预防各种物理性破坏和人为性破坏的能力。保护信息的主要方法有转储和恢复、日志文件和文件系统的一致性检查。文件系统的一致性检查包括块的一致性检查和文件的一致性检查。
二、作业与用户界面
1. 基本概念
作业与作业控制方式
作业是系统为完成一个用户的计算任务(或一次事务处理)所做的工作总和。例如,对用户编写的源程序,需要经过编译、连接、装入及执行等步骤得到结果,这其中的每一个步骤称为作业步。在操作系统中用来控制作业进入、执行和撤销的一组程序称为作业管理程序。操作系统可以为每个作业创建作业步进程,完成用户的工作。
操作系统控制用户作业的运行采用脱机(一次性提交作业说明书给系统)和联机(用户输入命令的人机交互)控制两种方式。
作业由程序、数据和作业说明书3个部分组成。作业说明书包括作业基本情况、作业控制、作业资源要求的描述,它体现用户的控制意图。
作业状态及转换
作业状态分为4种:提交、后备(也称收容)、执行和完成。其状态及转换如图所示:
(1)提交。作业在其处于输入设备进入外部存储设备的过程时的状态称为提交状态。
(2)后备。通过 Spooling系统将作业输入到计算机系统的后备存储器(磁盘)中,随时等待作业调度程序调度时的状态称为后备状态。
(3)执行。一旦作业被作业调度程序选中,为其分配了必要的资源,并为其建立相应的进程后,该作业便进入了执行状态。
(4)完成。当作业正常结束或异常终止时,作业进入完成状态。此时,由作业调度程序对该作业进行善后处理。如撤销作业的作业控制块,收回作业所占的系统资源,将作业的执行结果形成输出文件放到输出井中,由Spooling 系统控制输出。
作业控制块和作业后备队列
所谓作业控制块(JCB),是记录与该作业有关的各种信息的登记表。JCB 是作业存在的唯-标志,包括用户名、作业名和状态标志等信息。
由于在输入井中有较多的后备作业,为了便于作业调度,系统将JCB 排成一个或多个队列,将其称为作业后备队列。换句话说,作业后备队列是由若干个 JCB 组成的。
2. 作业调度
常用的作业调度算法包括:先来先服务、短作业优先、优先级调度算法和响应比高优先。
响应比高优先算法是指响应比高的作业优先启动运行。响应比定义:
其中,作业响应时间为作业进入系统后的等待时间与作业的执行时间之和,即响应比也可为:
3.用户界面
用户界面是计算机中实现用户与计算机通信的软/硬件部分的总称。操作系统提供命令接口、程序接口和图形界面接口。
用户界面的硬件部分包括输入装置和输出装置。用户界面的软件部分包括用户与计算机相互通言的协议、约定、操纵命令及其处理软件。
从计算机用户界面的发展过程来看,用户界面可分为控制面板式用户界面、字符用户界面、图形用户界面和新一代用户界面4个阶段。
虚拟现实技术将用户界面的发展推向一个新阶段:人将作为参与者,以自然的方式与计算机生成的虚拟环境进行通信。以用户为中心、自然、高效、高带宽、非精确、无地点限制等是新一代用户界面的特征。多媒体、多通道及智能化是新一代用户界面的技术支持。
三、国产操作系统
国产操作系统主要以开源的Linux 为基础进行二次开发,目前认知度较高的国产操作系统主要包括银河麒麟、深度、统信、中标麒麟、红旗Linux、安超 OS、中科方德和 StartOS 等。
(1)银河麒麟操作系统(Kylin OS)是由国防科技大学、中国软件与技术服务股份有限公司、联想集团、浪潮集团有限公司和民族恒星公司合作研制的。其目标是打破国外操作系统的垄断,研发一套中国自主知识产权的服务器操作系统。该系统完全版共包括三个版本:实时版安全版、服务器版。
(2)深度操作系统(deepin)是基于Linux 内核,以桌面应用为主的开源 GNU/imnux 操作系统,支持笔记本、台式机和一体机。该系统包含深度桌面环境(DDE)和近 30款深度原创应用,以及数款来自开源社区的应用软件,支撑广大用户日常的学习和工作。
(3)统信操作系统(UOS)是由统信软件技术有限公司研发的,基于 deepin 进行深度开发,目前已是一款较为完善的系统。
(4)中标麒麟操作系统是由上海中标软件有限公司发布的面向桌面应用的操作系统。采用强化的 Linux 内核,分桌面版、通用版、高级版和安全版等。
(5)红旗Linux是由北京中科红旗软件技术有限公司开发的一系列 Linux 发行版,包括桌面版、工作站版、数据中心服务器版、HA 集群版和红旗 Linux 嵌入式版。红旗Linux 是国内较大、较成熟的 Linux 发行版,也是比较出名的国产操作系统之一。
(6)安超 OS 2020 是一套基于服务器架构的通用型云操作系统,具有软硬件解耦、应用优化、支持混合业务负载等特点。为企业提供高性能、高可用、高效率且易于安装维护的IT 基础设施平台,加速政府和企业上云进程,为推动企业数字化转型提供完整的一站式企业上云的云操作系统平台和生态解决方案。
(7)中科方德基于核高基(核心电子器件、高端通用芯片及基础软件产品)桌面操作系统基础版,采用核高基安全加固内核,与基于国产兆芯处理器的整机进行全面适配和深度优化安装简单,易配置。
(8)StartOS(起点操作系统)的前身是由广东雨林木风计算机科技有限公司的 ylmfos 开发组所研发的 ylmfos。该系统是从Linux 底层构建的,拥有完全自主的核心配置及特色。具有全新的包管理、全新的操作界面,是一个非常符合中国人操作习惯的桌面 Linux 操作系统。
相关推荐
系统分析师-计算机系统-操作系统-操作系统概述&进程管理-CSDN博客文章浏览阅读1k次,点赞34次,收藏16次。本文系统介绍了操作系统的核心概念,包括其定义、功能特征和分类。重点阐述了进程管理相关内容:通过前趋图和进程资源图分析任务并行与顺序关系;解析进程组成、状态转换及信号量PV操作原理;详细说明死锁产生的四个必要条件及预防/避免/检测/解除方法。同时概述了操作系统五大功能模块(处理机/存储/设备/文件管理及用户界面)和各类操作系统特性(批处理/分时/实时/网络/分布式/嵌入式系统)。文章还简要介绍了线程概念及其与进程的关系,为理解操作系统核心机制提供了系统化的知识框架。https://shuaici.blog.csdn.net/article/details/149402159系统分析师-计算机系统-操作系统-存储器管理&设备管理-CSDN博客文章浏览阅读716次,点赞36次,收藏31次。本文系统介绍了计算机系统中的存储器管理和设备管理技术。存储器管理部分详细阐述了分区存储管理(固定分区、可变分区、可重定位分区)及其分配算法(首次适应、最佳适应等),分页存储管理及其页面置换算法(OPT、FIFO、LRU),以及分段存储和段页式存储的特点。同时解释了虚拟存储器的工作原理及其重要性。设备管理部分介绍了设备分类、I/O系统的组成和功能,重点说明了I/O软件层次结构和SPOOLING技术如何实现设备共享。全文从实现原理、优缺点比较等多个维度,全面剖析了计算机系统资源管理的关键技术。
https://shuaici.blog.csdn.net/article/details/149424013