操作系统中文件系统-文件的分类

一、文件的概念

1. 文件(file)

(1) 文件是软件机构,软件资源的管理方式;

(2) 具有符号名的一组相关元素的有序序列,是一段程序或数据的集合;

(3) 一组赋名的相关联字符流的集合,或者是相关记录。而记录是有意义的信息集合。

二、文件的管理功能

1.分配与管理外部存储器,用户以文件形式存放信息,“按名存取”,文件的机内码与磁盘、光盘等外存的地址建立起相对应的表格联系。

    2.提供合适的存储方法,例如,键盘命令以及程序中使用系统调用控制,包括文件的创建(create)、打开(open)、关闭(close)、读写(read/write)、删除(delete,erase)和重命名或改名(rename)等。

    3.文件的共享与保护,解决文件命名中的冲突和存取权限的控制。

三、文件的分类

1. 按文件性质和用途

(1) 系统文件:由系统软件构成的文件。只允许用户通过系统调用 或系统提供的专用命令来执行它们,不允许对其进行读写和修改。这些文件主要有操作系统核心和各种系统应用程序或实用工具程序和数据组成。例如:msdos.sys、io.sys、及UNIX系统下的核心文件 /unix。

(2) 库文件:这类文件允许用户对其进行读取和执行,但不允许对其进行修改,主要由各种标准子程序库组成。如:C语言的 *.LIB、UNIX系统下的/lib、/usr/lib 目录下的文件。

(3) 用户文件:这类文件是用户通过操作系统保存的用户文件,由文件的所有者或所有者授权的用户才能使用,用户将这些文件委托和操作系统保管。主要由用户的源程序、可执行目标程序、用户数据库组成。如:*.c、*.dbf、*.o等。

2. 按操作保护分类

(1) 只读文件(read only):只允许文件主及被核准的用户去读文件,而不允许写文件。如-r------。

(2) 可读写文件(read/write):允许文件主及被核准的用户去读和写文件。如:-rw-------。

(3) 可执行文件(execute):允许文件主及被核准的用户去调用执行文件而不允许读和写文件。如:-----x----。

(4) 各个操作系统的保护方法和级别有所不同。

      DOS操作系统的文件保护有三种:系统(system ,S)、隐藏(hide,H)、可写(write,W)。

UNIX操作系统的文件保护有九种,即分三组,分别为文件主(user)、同组(group)、其他(other)。每组均有r、w、x的权限控制。

3. 按使用情况分类

(1) 临时文件(temporary file):用于系统在工作过程中产生的中间文件,一般有暂存的目录,如:\temp、/tmp、/temporary file,正常情况下,工作完毕后回自动删除,异常中断时可能会残留一些临时文件。

(2) 永久文件:指受系统管理的各种系统文件和用户文件,经过安装、编辑、编译生成的文件,存放在软盘、硬盘、光盘等外部设备上。

(3) 档案文件:系统或一些使用工具软件包在工作过程中记录在案的文档资料文件,以便查阅历史档案。如:*.hst,*.log,*.CHK等。

4. 按用户观点分类(UNIX或Linux操作系统)

(1) 普通文件(常规文件):是系统中最一般组织格式的文件,用ls l命令列文件清单时,首项特征为:“-”,如:-rwx-rx--xx。普通文件包含系统文件、用户文件和库函数文件、实用程序文件等。

(2) 目录文件:是由文件的目录信息构成的特殊文件,操作系统将目录也称为文件,便于统一管理。这类文件包含两类信息,文件名和节点码(i-node),用ls l命令列文件清单时,首项特征为“d(directory),如:drwx-rx-rx。

(3) 特殊文件(设备驱动程序文件):在UNIX或Linux中所有的I/O设备都被看成特殊文件,通过链接方式,它与设备驱动程序紧密相连。用ls l命令列文件清单时,首项特征为“c”(char字符型)或“b”(block块型)。

5. 按存取的物理结构分类

(1) 顺序(连续)文件:文件中的记录,顺序地存储到连续的物理块中,顺序文件中所记录的次序,与它们存储在物理介质上存放的顺序是一致的。如:存放在磁带上的文件。

(2) 链接文件:文件中的记录可存放在并不相邻的各个物理块中,通过物理块中的链接指针组成一个链表来管理,形成一个完整的文件,又称为直接存取文件或指针串联文件。

(3) 索引文件:文件的记录可存储在并不相邻的各个物理块中,记录和物理块之间通过索引表项按关键字存取文件,通过物理块中的索引表的管理,形成一个完整的文件。 

6. 按文件的逻辑存储结构分类

(1) 有结构文件:由若干个记录所构成的文件,又称为记录式文件。根据记录的长度特点又可分为定长记录文件和可变长记录文件。如:目前常用的数据库文件大多是定长记录文件。

(2) 无结构文件:这是直接由字符序列所构成的文件,又称为流式文件。一般来说,操作系统就是这种文件结构,可以把流式文件看成是记录文件的特例,即其中每个记录只含有一个字符。

7. 按文件的数据形式分类

(1) 源文件:是指源程序和数据构成的文件,一般由ASCII码、EBCD码或汉字编码组成。

(2) 目标文件:由源程序经过相应的计算机编译程序编译,但尚未经过链接程序链接时的目标代码所形成的文件,它属于二进制文件,内部地址为相对地址。通常目标文件类型为*.OBJ(DOS)、*.o(UNIX)。

(3) 执行文件:目标文件经过与计算机系统提供的库函数及相关的子程序链接后形成的文件。它是二进制文件,可在操作系统的支持下运行。

8. 多媒体文件格式简介

(1) 多媒体的主要技术手段

(a) A/D、D/A转换技术(Digital to analog conversion

(b) 文件压缩技术及压缩算法

主要有MPEG(motion photographic expert group:运动图像专家组)的MPEG1、MPEG2及MPEG3

(2) 声音文件

   WAV文件:Windows提供的声音文件格式;

   MIDI文件:MIDI-musical instrument data interface

   au文件:UNIX支持的声音文件

   mp3文件:采用MPEG3算法

(3) 图像文件

  BMP文件:位图文件

  其它有JPG文件、IMG文件、MPEG文件。

(4) 超文本文件

  以 .htm,*.html为扩展名的文件, HTML-hypertext markup language 超文本链接标记语言是Internet 的标准文本格式。使用HTML格式还可以在电子邮件中添加图形和指向Web网站的链接(超级链接)。

*.PDF(portable document format:便携文档格式):是Adobe公司开发的文件格式。目前世界上不少文档说明书采用这种格式。

(5) 其它文件


  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
模拟文件系统是指开发一个类似于操作系统文件管理系统,通过模拟文件系统的各种操作,如文件的创建、打开、读写、删除等,来加深对操作系统文件管理原理的理解和掌握。 首先,我们需要定义一个文件的数据结构,包括文件名、文件类型、访问权限、文件大小等信息。可以使用C语言的结构体来实现这个数据结构。 在模拟文件系统,我们需要实现以下基本操作: 1. 创建文件:通过调用相应的系统调用,创建一个新的文件,并为其分配一个文件描述符。 2. 打开文件:根据文件路径和权限,找到相应的文件,并返回一个文件描述符,以供后续读写操作使用。 3. 读取文件:通过文件描述符和偏移量,读取文件指定位置的数据,并将其复制到缓冲区。 4. 写入文件:通过文件描述符和偏移量,将缓冲区的数据写入文件指定位置。 5. 删除文件:根据文件路径和权限,找到相应的文件,并将其从文件系统删除。 实现文件系统需要使用文件控制表来管理已经打开的文件的信息,包括文件描述符、文件指针、文件路径等。还需要使用位图来管理文件的块信息,以确定文件占用的存储块,并实现文件的数据分配与释放。 在模拟文件系统,还可以实现目录的创建、删除和遍历等操作,以实现文件分类管理。可以使用树形结构来表示目录结构,通过指针的方式实现目录的创建和删除操作。 总之,模拟文件系统是一个很好的项目,可以通过实现文件的创建、打开、读写、删除等操作,加深对操作系统文件管理原理的理解和掌握。通过掌握模拟文件系统的实现,可以更好地理解操作系统的底层原理,并为后续的系统开发和文件管理提供基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值