计算机网络32——Linux-文件io-2&文件系统

1、阻塞和非阻塞

想要将文件以非阻塞方式打开,有两种方式

(1)需要将文件关闭,再用非阻塞方式打开

(2)fctnl函数,先获取旧属性,再添加一个新属性

阻塞函数

阻塞函数一直在等待输入,非阻塞函数不会一直等待

因此当事情发生时,阻塞函数会第一时间知晓,非阻塞函数不会

因此,当输入时,非阻塞函数可能正在sleep,会等待一会再接收

阻塞函数会第一时间知晓,并作出反应

非阻塞函数


文件系统

1、磁盘扇区

2、磁盘标志位

把磁盘分成若干个块,每个块里有32768位

data block是记录文件内容的

inode table由许多inode节点组成

每个inode节点存储文件属性,文件修改时间,由谁创建,创建时间,用户属于哪个组和数据块指针(存储的是data block每个块中的开头的指针)

bitmap------位图

inode bitmap------如果为0,表示对应的空间不能被其他人使用

如果想要存储一个名为a.txt,内容为hello world的文件,该怎么做

1:找到Boot block,查看磁盘分区

2、找到GDT块组描述符表,找到其余的起始地址,查看当前是否存在空闲的inode

3、把inode bitmap的标志位置1,并将文件属性写入inode文件属性中

4、把文件内容写入块里面,同时把地址写入到数据块指针里

如果想要读取一个文件,该怎么做

前两个步骤相同

3、根据inode节点编号计算出字节的inode节点位置

4、找到block的位置

删除文件

把标志位置0即可

3、节点编号

4、链接

硬链接:ln src 硬链接

符号链接(软连接):ln -S src 符号

每个文件包括:文件属性和文件内容

硬链接:创建了一个新的文件属性,指向文件内容

软链接:将文件属性起别名

软链接和文件用的是同一个节点编号

符号链接,当删除时,就出错了,但重新创建原来的文件,符号链接有好用了

5、stat

6、assess

相关推荐
诸神缄默不语9 小时前
DNS 与 hosts 文件:Windows 11 中的名称解析配置
windows·计算机网络·dns·hosts
小明同学0116 小时前
计算机网络编程---手写TCP服务器(三)
服务器·tcp/ip·计算机网络
Sagittarius_A*17 小时前
H3CSE 高性能园区网:STP 生成树协议技术原理与配置
网络·计算机网络·h3cse
程序员雷欧1 天前
大厂计算机网络面试高频题
计算机网络·面试·职场和发展
艾莉丝努力练剑2 天前
【Linux网络】Linux 网络编程:HTTP(一)协议初识
linux·运维·服务器·网络·tcp/ip·计算机网络·http
艾莉丝努力练剑2 天前
【Linux网络】Linux 网络编程:HTTP(二)HTTP协议请求应答宏观格式(附代码演示)
linux·运维·服务器·网络·tcp/ip·计算机网络
Sagittarius_A*2 天前
H3CSE 高性能园区网:VLAN原理与MVRP协议
网络·计算机网络·h3cse
深邃-3 天前
【Web安全】-BurpSutie实战讲解(2):BP代理模块,BP重放模块,BP爆破模块,BP爬虫功能,BP解码模块,BP对比模块
爬虫·计算机网络·安全·web安全·网络安全·burpsutie
kyle~3 天前
计算机网络---网络层
网络·计算机网络·智能路由器
Ether IC Verifier3 天前
TCP/IP四层协议详解与以太网包发送过程
网络·网络协议·tcp/ip·计算机网络·dpu