计算机操作系统-文件管理,2024最新Java大厂面试题来袭

二.记录

记录是一组相关数据项的集合,用于描述一个对象在某方面的属性。在诸多记录中为了可以唯一的标识一个记录,必须在记录的各个数据项中确定出一个或多个数据项,把它们的集合称为关键字(key)

三.文件(是文件系统中最大的数据单位)

文件是由所创建者所定义的,具有文件名的一组相关元素的集合分为有结构文件(文件由若干相关记录组成)和无结构文件(被看成字符流)

文件的属性:(1)文件类型(2)文件长度(3)文件的物理位置(4)文件的建立时间

在这里插入图片描述

文件类型:

  • 按用途分:系统文件;用户文件;库文件

  • 按文件中的数据形式分类:源文件.c .java文件;目标文件.obj;可执行文件.exe

  • 按存取控制属性分类:只执行文件;只读文件;读写文件

  • 按组织形式和处理方式分类:普通文件;目录文件;特殊文件

文件系统的模型分为三个层次结构:最底层是对象及其属性,中间层是对对象进行操作和管理的软件集合,最高层是文件系统提供给用户的接口。

对象及其属性——文件管理系统管理的对象有:文件;目录;磁盘(磁带)存储空间

文件系统的接口:命令接口;程序接口

文件操作:1)最基本的文件操作:创建文件;删除文件;读文件;写文件;设置文件的读写位置;2)文件的打开和关闭操作;3)其他文件操作

文件的逻辑结构


用户所看到的文件称为逻辑文件,是由一系列的逻辑记录组成,从用户的观点而言文件的逻辑记录是能够被存取的基本单位。在系统中的所有文件都存在两种形式的文件结构:

(1)文件的逻辑结构用户可以直接处理的数据及结构,又称为文件组织。

(2)文件的物理结构,又称为文件的存储结构

文件逻辑结构类型:

1.按文件是否有结构分类

  • 有结构文件:记录式文件,记录长度可以分为两类:定长记录和变长记录

  • 无结构文件:流式文件,可以看做是记录式文件的一个特例:一个记录仅仅有一个字节。

2.按文件的组织方式分类(把有结构的文件分为三类)

(1)顺序文件

顺序文件:由一系列记录按某种顺序排列所形成的文件,记录可以是定长或者变长。

排列方式:串结构通常按时间顺序排列每次查找要从头开始。

顺序结构用户指定一个字段作为关键字,可以是任意一个类型的变量其中最简单的是正整数

顺序文件的优缺点:最佳应用场合是在对文件中的记录进行批量存取时。所有逻辑文件中顺序文件的存取效率是最高的。对于顺序存储设备(如磁带)也只有顺序文件才能被存储并有效工作。在交互场合对于查找和修改则性能较差。

记录寻址:

1.隐式寻址方式: 对于定长记录的顺序文件,如果已知当前记录的逻辑地址很容易确定下一个记录的逻辑地址。读文件时设一个读指针Rptr令它指向下一个记录的首地址;写指针指向要写记录的首地址;读写完执行加L操作,L是记录长度。也称随机访问或直接访问;对于变长记录的顺序文件需要设置读写指针但是要加上Li(刚读写完的记录长度)也称顺序访问适用于所有文件类型但是需要从头访问速度慢。

2.显示寻址方式: 对定长记录的文件实现直接访问或者随机访问通过文件中记录中的位置;利用关键字。变长不可以实现直接访问。

(2)索引文件

索引文件指为可变长记录文件建立一张索引表,为每个记录设置一个表项,以加速对记录的检索速度。

  • 1.按关键字建索引:定长记录文件可以通过简单计算实现随机查找,变长记录文件需要从第一个开始查一直顺序查找目标记录为止。我们为变长记录文件建立一张索引表,为主文件中的每个记录在索引表中分别设置一个表项记录指向记录的指针以及记录的长度L。索引表按关键字排序。索引表本身是一个定长记录的索引文件。把对变长记录顺序文件的顺序检索转变为对定长记录的顺序文件。实现直接存取。根据用户提供的关键字利用折半查找的方法去检索索引表,从中找到表项,在利用表项中给的指针去访问记录

  • 2.具有多个索引表的索引文件

索引文件的优点:顺序查找的文件改造成随机查找的文件,插入删除方便。

(3)索引顺序文件

索引顺序文件是对顺序文件的改进,克服对变长记录的顺序文件不能随机访问以及不便插入和删除的缺点。仍保留顺序文件的关键特征,记录是按关键字的顺序组织起来的,还有两个新特征:引入文件索引表实现随机访问,增加溢出文件记录新增加,删除和修改的记录。

一级顺序索引文件:将变长记录顺序文件中的所有记录分为若干组,为每组的第一个记录在索引表中建立一个索引项,含有该记录的关键字和指向该记录的指针。索引顺序文件是最常见的一种逻辑文件形式。检索效率比顺序文件提高根号N/2倍记录数为N,分为根号N个分组,每个分组有根号N个记录查找最佳。

两级顺序索引文件:例:对于一个含有10的6次方个记录的顺序文件,作为索引顺序文件时,平均需要查询1000个记录。建立多级索引分组为100*100*100,此时查找一个记录所需的次数变为50+50+50=150。

直接文件:可根据给定关键字直接获取指定记录的物理地址。关键字就决定了记录的物理地址。

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
img

最近我根据上述的技术体系图搜集了几十套腾讯、头条、阿里、美团等公司21年的面试题,把技术点整理成了视频(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分

433128037)]

最近我根据上述的技术体系图搜集了几十套腾讯、头条、阿里、美团等公司21年的面试题,把技术点整理成了视频(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分

[外链图片转存中…(img-ONvOZJlb-1710433128037)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RuoYi若依管理系统是一个基于SpringBoot的权限管理系统,代码易读易懂、界面简洁美观。 核心技术采用Spring、MyBatis、Shiro没有任何其它重度依赖。直接运行即可用。 RuoYi若依管理系统功能: 1、用户管理:用户是系统操作者,该功能主要完成系统用户配置。 2、部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持权限。 3、岗位管理:配置系统用户所属担任职务。 4、菜单管理:配置系统菜单,操作权限,按钮权限标识等。 5、角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。 6、字典管理:对系统中经常使用的一些较为固定的数据进行维护。 7、参数管理:对系统动态配置常用参数。 8、通知公告:系统通知公告信息发布维护。 9、操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。 10、登录日志:系统登录日志记录查询包含登录异常。 11、在线用户:当前系统中活跃用户状态监控。 12、定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。 13、代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 14、系统接口:根据业务代码自动生成相关的api接口文档。 15、服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 16、在线构建器:拖动表单元素生成相应的HTML代码。 17、连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。   RuoYi若依管理系统 更新日志: v4.6.1 新增IE浏览器版本过低提示页面 新增详细信息tab页签方式 新增解锁屏幕打开上次页签 数据监控默认账户密码防止越权访问 新增表格示例(导出选择列) 个人信息添加手机&邮箱重复验证 个人中心刷新后样式问 操作日志返回参数添加非空验证 velocity剔除commons-collections版本,防止3.2.1版本的反序列化漏洞 子表模板默认日期格式化 代码生成预览语言根据后缀名高亮显示 代码生成主子表相同字段导致数据问 升级SpringBoot到最新版本2.2.13 升级shiro到最新版1.7.1 阻止身份认证绕过漏洞 升级bootstrapTable到最新版本v1.18.2 升级bootstrapTable相关组件到最新版本v1.18.2 升级fastjson到最新版1.2.75 升级druid到最新版本v1.2.4 升级oshi到最新版本v5.6.0 修改ip字段长度防止ipv6地址长度不够 搜索建议示例选择后隐藏列表 主子表示例增加初始化数据 优化Excel导入增加空行判断 修复横向菜单无法打开页签问 修复导入数据为负浮点数时,导入结果会丢失精度问 优化更多操作按钮左侧移入内容闪现消失情况 修复主子表提交中列隐藏后出现列偏移问 单据打印网页时通过hidden-print隐藏元素 表格销毁清除记住选择数据 增加表格动态列示例 代码生成选择主子表关联元素必填 tree根据Id和Name选中指定节点增加空判断 其他细节优化

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值