计算机系统基础:文件的存取和存储空间管理知识笔记

              

1、文件的存取

文件的存取实际上就是针对文件存储器上物理块的读写操作。存取方法主要有顺序存储、随机存储两种。

2、文件存储空间管理

磁盘分配表:外存空闲空间管理的数据结构。

2.1 空闲空间管理方法

1、空闲区表

将外存空间的一个连续未分配的区域称为空闲区。操作系统为磁盘外存上的所有空闲区建立一张空闲表,每个表项对应一个空闲区。

空闲区:序号、第一块序号、空闲块数量、状态信息。适合连续文件结构。

2、位示图

在外存上建立一张位示图,记录文件存储器的使用情况。每一位对应文件存储器上的一个物理块,用0和1表示空闲和占用。

特点:位示图的大小由磁盘空间大小决定,位示图的描述能力强。适合各种物理结构。

3、空闲块链

每个空闲物理块中有指向下一个空闲物理块的指针,所有的空闲物理块构成一个链表,链表的头指针放在文件存储器的特定位置上,不需要磁盘分配表。从而节省空间。

4、成组链接法

UNIX系统采用了成组链接法,系统将空闲块分成若干组,每100个空闲块为一组,每组的第一空闲块登记下了下一组空闲块的物理盘块号和空闲块总数。

3、文件的共享和保护

3.1 文件的共享

定义:不同用户进程使用同一文件,它不仅是不同用户完成同一任务所必需的功能、还能节省大量存储空间、减少文件复制而增加访问外存的次数。

3.2 文件链接

1、硬链接:文件的硬链接是指两个文件目录表指向同一个索引节点的链接。简单来说就是不同文件名与同一个文件实体的链接。

2、符号链接:符号链接建立新的文件或目录,并与原来文件或目录的路径进行映射,当访问一个符号链接时,系统通过该映射找到原文件路径,并对其进行访问。

优点:可以跨越文件系统、可以通过计算机网络连接到世界上任何地方机器中的文件。只需提供该 文件所在的地址及该机器的文件路径。

缺点:其他用户读取符号链接的共享文件比读取 硬链接的共享文件需要增加读盘的操作 次数。

4、文件保护

文件保护主要采用针对不同的用户规定不同的权限,防止文件被没有授权的用户随意访问。

4.1 存取控制矩阵

一个二维矩阵,一维列出计算机的全部用户,另一维列出系统中的文件。矩阵中的每一个元素表示对应用户的权限。主要有R、W、X的组合。

优点:实现简单、清晰。

缺点:用户数和文件数很大的情况下,占用的存储空间很大,验证用户权限也耗费大量时间。

4.2 存取控制表

存取控制表是对存取控制矩阵的一种改进方案。对用户对文件的访问权限进行分类,这样会大大简化存取控制表的存储空间。

4.3 用户权限表

以用户或用户组为单位将用户可存取的文件集中起来,称为用户权限表。

4.4 密码

文件创建时,由用户提供一个密码,在文件存入磁盘时用该密码对文件内容加密。读取操作只有知道密码的用户才能读取文件。

5、系统的安全和可靠性

5.1 系统的安全分级

系统级:未经授权的用户不允许进入系统。采用的措施有注册、登录。

用户级:对所有用户分类和对指定用户分配访问权,不同的用户对不同文件设置不同的存取权限来实现。通常用户会分为超级用户、系统操作员、一般用户。

目录级:为了保护各种文件目录而设计的,它和用户授权无关,为了保证目录安全,一般规定只有系统核心才有写目录的权利。

文件级:针对单个文件设置访问权限来限制用户对文件的访问。通常可以设置一下几种属性:只执行、只读、读写、共享。

5.2 文件系统的可靠性

文件系统的可靠性是指系统抵抗和预防各种物理性破坏和人为破坏的能力。文件系统的可靠性比计算机系统损坏更加严重。比如合同信息、客户档案等核心信息损坏对客户会造成不可挽回的损失。

文件系统可靠性的措施:转储和恢复、日志文件、文件系统的一致性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

语言筛选法选素数怎么解决输出超限_论文深耕 | 什么时候才能把文献看完?——论文的正确筛选、阅读顺序...

Hello!这是你与「大学生科研竞赛」的第 50 次相遇。搞科研免不了要看文献,一提到看文献就有很多人头疼,“那么多文献什么时候才能看完啊?”01筛选论文这个时候就需要我们对文献有一个筛选,筛选的办法也很简单:1标题首先…

ft2232驱动安装方法_ST-Link资料03_ST-Link固件升级、驱动下载安装方法

说明:本文原创作者『strongerHuang』本文首发于微信公众号『嵌入式专栏』,同时也更新在我的个人网站:EmbeddedDevelop一、写在前面前两篇文章讲述的都是关于ST-Link的一些理论知识,建议初学者看看:ST-Link资料01_ST-Li…

Java 泛形通配符 ?

Class<Integer> cla;与Class<?> cl; 前一个表示baicla只能指向Integer这种类型&#xff0c;而后一个cl表示可以du指向任意类型。 cla Integer.class 可以&#xff0c;但cla Double.class就不可zhi以。 但是cl Integer.class 可以&#xff0c;cl Double.class也…

操作系统基础:计算机作业管理知识笔记

1、计算机作业的概念计算机中的作业是为了完成某个用户的计算任务所做工作的总和。作业管理程序&#xff1a;操作系统中用来控制作业进入、执行、撤销的一组程序。2、作业与作业的控制方式脱机控制方式&#xff1a;用户需要把自己需要计算机完成的任务用作业控制语言编写成作业…

easyui的验证

多重验证&#xff1a; Js代码 { field : startPort, title : "起始端口", editor: "text", width : 50, editor: { …

403 forbidden_[SpringSecurity] 自定义403页面

使用 Spring Security 时经常会看见 403&#xff08;无权限&#xff09;&#xff0c;默认情况下 显示的效果如下&#xff1a;而在实际项目中可能都是一个异步请求&#xff0c;显示上述效果对于用户 就不是特别友好了。Spring Security 支持自定义权限受限。具体做法1.新建一个类…

大疆口袋相机美颜怎么设置_灵眸Osmo口袋云台相机评测-大疆灵眸云相机使用说明...

大疆正式发布灵眸Osmo口袋云台相机&#xff0c;机身小巧&#xff0c;便于随身携带&#xff0c;可拍摄4K/60fps超清影像&#xff0c;配备了独立屏幕&#xff0c;可爱的小巧机身对女性用户更加合适。据说这款产品 DJI 憋了一年多才正式发布&#xff0c;本期9号小编就带大家一起来…

java判断当前时间距离第二天凌晨的秒数

/*** 判断当前时间距离第二天凌晨的秒数** return 返回值单位为[s:秒]*/public Long getSecondsNextEarlyMorning() {Calendar cal Calendar.getInstance();cal.add(Calendar.DAY_OF_YEAR, 1);cal.set(Calendar.HOUR_OF_DAY, 0);cal.set(Calendar.SECOND, 0);cal.set(Calendar…

硬件基础:嵌入式软件可靠性设计要注意的问题

自从40多年前嵌入式系统诞生以来&#xff0c;随着技术的发展和需求的变化&#xff0c;嵌入式系统软件就在嵌入式系统中越来越重要。现在&#xff0c;甚至一些嵌入式系统硬件一模一样&#xff0c;仅仅是软件不同&#xff0c;就是不一样的产品&#xff08;如交换机和路由器&#…

jdk1.6 改 jdk1.7或jdk1.8(改回也可以)(图文详解)

不多说&#xff0c;直接上干货&#xff01; 第一步&#xff1a;设置默认使用的JDK和JRE环境 具体步骤&#xff1a;菜单window->preferences->java->Installed JRES 点中了&#xff0c;右边的窗口点Add按钮 记住选择添加安装了Java目录下的Jdk目录&#xff0c;而不是Jr…

python替换所有标点符号 正则_python 把标点符号替换为空

Python str.replace(old, new[, max]) 方法把字符串str中的 old&#xff08;旧字符串&#xff09; 替换成 new(新字符串)&#xff0c;如果指定第三个参数max&#xff0c;则替换不超过 max 次。 如果非要用replace()函数来实现要这样写&#xff1a; import string m l forc inst…

无法打开“XXXX”,因为Apple无法检查其是否包含恶意软件。怎么解决?

今天在安装navicat的时候&#xff0c;因为apple无法检查其是否包含恶意软件&#xff0c;大概是如下图所示&#xff1a; 仔细查询过后才发现&#xff0c;只需要在Mac上设置下即可&#xff0c;具体方法如下&#xff1a; 打开Mac自带的软件「终端」&#xff08;一般在“其它”这个…

vue路由跳转子组件_vue-router之路由钩子(组件内路由钩子必须在路由组件调用,子组件没用)...

模式vue-router中的模式选项主要在router实例化的时候进行定义的&#xff0c;如下const router new VueRouter({mode: ‘history‘, // 两种类型history 还有 hashroutes: routes // 可以缩写成routes})有两种模式可供选择&#xff0c;history 和 hash&#xff0c;大致对比一下…

计算机网络基础概念知识笔记

1、计算机网络的发展阶段 1.1、具有通信功能的单机系统 该阶段的模式为终端-计算机网络&#xff0c;属于早期计算机网络的主要形式。它将一台计算机经过通信线路和若干个终端直接相连 1.2 具有通信功能的多机系统 针对单机系统的改进&#xff0c;在主计算机的外围增加了一台计算…

python模块下载失败_python 安装tushare模块出错的一个解决方法

&#xff08;写于20200519&#xff09; Tushare金融大数据社区 免费提供各类金融数据和区块链数据。我学python的动力之一就是使用金融数据进行量化投资。 原以为安装thshare是很容易的事&#xff0c;在cmd窗口输入pip install tushare后&#xff0c;似乎安装没报错&#xff0c…

winform中键盘和鼠标事件的捕捉和重写(转)

在 编写winform应用程序时&#xff0c;有时需要无论在哪个控件获取焦点时&#xff0c;对某一个键盘输入或者鼠标事件都进行同样的操作。比如编写一个处理图片的应用程序时&#xff0c; 希望无论当前哪个控件获得焦点&#xff0c;当用户按上、下、左、右键时&#xff0c;图片控件…

redisTemplate获得key的过期时间方法

/** * 从redis中获取key对应的过期时间; * 如果该值有过期时间&#xff0c;就返回相应的过期时间; * 如果该值没有设置过期时间&#xff0c;就返回-1; * 如果没有该值&#xff0c;就返回-2; */ redisTemplate.opsForValue().getOperations().getExpire("key的名称")

2020年“1024”,程序员日

1024程序员日向可爱的程序员致敬随着时代的发展&#xff0c;大数据技术行业发展愈趋成熟&#xff0c;坚持自己对知识、技术和创新追求的程序员层出不穷。相信很多人都不知道&#xff0c;其实&#xff0c;程序员也有他们自己专属的节日: 程序员日。每个节日都有自己的来历和含义…

小程序内嵌h5页面分享_微信小程序webview内页面分享

因为项目原因&#xff0c;之前在微信小程序内部使用 webview 嵌套了 h5 页面&#xff0c;现在要添加一个新的功能&#xff0c;用户在哪个页面进行了分享&#xff0c;被分享的用户从链接进来就跳转到哪个分享页面。先了解一下 web-view 组件的限制&#xff0c;web-view 是承载网…

shell shift与{}_一文掌握shell脚本中shift的用法及功能

概述今天主要介绍下shell脚本中shift的一些用法&#xff0c;这个命令还是相对比较少见的。一、shift介绍shift命令用于对参数的移动(左移)&#xff0c;通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本)。简而言之&…