30_Linux下的文件管理

本文介绍了文件系统的基本概念,包括硬盘中的静态文件与inode的关系,以及进程打开文件时涉及的vnode结构。同时,还探讨了文件与流的概念及其在编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、硬盘中的静态文件和inode(i节点)

a、文件平时存放在硬盘中,以一种固定的形式存放的,这种形式的文件叫静态文件。

块设备(存储器)分为一个一个的扇区,好多扇区组成了一个块,通常1块 = 64(可能) sector(扇区)

b、每一个文件都是一个inode  其实就是一个结构体,包括文件名,区块,大小等等需要找到文件的全部信息。

每个扇区一般是512个字节

c、联系平时经验,

快速格式化:非常快,只删除了inode,只是删除了内容管理表

(慢速)格式化:真正删除了内容

2、硬盘中被打开的文件和vnode(v节点)

一个程序的运行就是一个进程,我们打开的某个文件就是属于某个进程,每个进程都有一个数据结构来记录这个进程的信息,叫进程信息表。进程信息表中有一个内容,指针指向文件管理表,记录了当前进程打开的所有文件及相关信息,用来索引已经打开的文件文件的index就是文件描述符fd,我们最终找到的就是一个结构体,vnode,管理已经打开的一个文件

文件件管理表,用index(fd)索引,找到vnode,vnode记录了被打开文件的各种信息,只要知道该文件的fd,就很容易找到该文件的vnode,fd由open打开时得来,

3、文件与流的概念

stream:流,文件是一个大包裹,里面装了一大堆字符,读出和写入,都只能一个一个字节进行,N多个依次读出和写入时,这些字符就形成了流动的字符流,想传送带。

流是动态的,不是静态的。

编程中经常提到流的概念,一般都是和IO相关的,所以经常叫IO流。

今天讲解这个是为了后面做铺垫。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值