码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
OS之文件逻辑结构
文章目录
什么是逻辑结构
无结构文件
有结构文件
有结构文件的逻辑结构
顺序文件
索引文件
索引顺序文件
多级索引顺序文件
什么是
逻辑结构
所谓的逻辑结构,就是指在用户看来,文件的内部的数据应该是如何组织起来的,对应的物理结构指的是在操作系统看来,文件的数据是如何存在外存中
无结构文件
无结果文件就是文件内部的数据就是一系列二进制或者字符流组成的
有结构文件
由一组相似的记录组成,又称记录式文件,每条记录又若干个数据项组成
而且一般来说,每条记录有一个数据项可作为关键字(分别不同记录的ID)
根据我们记录的长度固定不固定
定长记录
不定长记录
有结构文件的逻辑结构
顺序文件
顺序文件:文件中的记录一个接一个地顺序排序(
逻辑上
),记录可用是定长或者是不定长的,
各个记录在物理上可以是顺序存储或者链式存储的
按照我们记录之间的顺序跟关键字的关系分为两类
串结构 记录之间的顺序与我们的关键字无关
顺序结构 记录之间的顺序按关键字顺序排列
如果我们的顺序文件(在逻辑上是按顺序的),如果物理上实现是靠链式存储,那么无论无何都无法实现随机存取,只能从第一个记录开始依次往后找
如果是物理上按照顺序存储
可变成记录
:无法实现随机存取 对于可变长的记录,因为记录的长度不固定,所以需要记录每个记录的长度来区分开我们的记录
定长记录
可以实现随机存取
若采用了串结构,无法快速找到某关键字对应的记录
若采用了顺序结构,因为记录按照关键字的顺序存储,所以可以快速找到某个关键字对应的记录
索引文件
对于我们索引表本身是一个
定长记录的顺序文件
(顺序文件指的在物理上也是顺序存储的)
我们还可以在对于关键字上采用顺序结构(按照我们的关键字顺序存储),这样还可以支持对关键字的折半查找
索引顺序文件
对应我们的索引文件,每一个记录对应了一个索引表项,因此索引表可能会很大
索引顺序文件就是索引文件和顺序文件思想的结合,索引顺序文件中,同样为文件建立一张索引表,但是不同的是,并不是每个记录对应一个索引表项**,而是一组记录对应一个索引表项**
每个分组就是一个顺序文件,分组内的记录不需要关键字排序
多级索引顺序文件
相关阅读:
MATLAB | MATLAB配色不够用 全网最全的colormap补充包来啦
照片水印怎么去除?这些方法一看就会
快速排序 — — 递归、非递归实现【十大经典排序算法】
50基于matlab的传统滤波、Butterworth滤波、FIR、移动平均滤波、中值滤波、现代滤波、维纳滤波、自适应滤波、小波变换
【jmeter】windows下使用 (测试MQTT)
深入理解Angular模块化概念
墨西哥专线清关有什么要求?
第四章 串
亚马逊云科技大语言模型下的六大创新应用功能
(附源码)php小型网络舆情平台设计 毕业设计 252324
原文地址:https://blog.csdn.net/qq_50985215/article/details/127693993
最新文章
攻防演习之三天拿下官网站群
数据安全治理学习——前期安全规划和安全管理体系建设
企业安全 | 企业内一次钓鱼演练准备过程
内网渗透测试 | Kerberos协议及其部分攻击手法
0day的产生 | 不懂代码的"代码审计"
安装scrcpy-client模块av模块异常,环境问题解决方案
leetcode hot100【LeetCode 279. 完全平方数】java实现
OpenWrt下安装Mosquitto
AnatoMask论文汇总
【AI日记】24.11.01 LangChain、openai api和github copilot
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
正则表达式工具
cron表达式工具
密码生成工具
京公网安备 11010502049817号