【Linux基础I/O】软硬链接及动态库和静态库

一,缓冲区

缓冲区其实就是一段内存空间,能够暂存数据,

1.1 理解缓冲区

这里我们用一个例子来进行讲解,假设我们要从北京把快递寄到深圳,如果没有快递时,我们就要亲自带着我们的包裹去到深圳,把包裹交给对方,这样既费时又费力。但是如果有了快递,那么我们直接将包裹交给快递,经过几天后,对方就可以收到快递,而我们就不用亲自去一趟,这样我们也就可以干我们自己的事情了。
在这里插入图片描述
缓冲区可以将我们要传送的数据暂存起来,当达到一定量时发送出去,那么就一定要有刷新策略:

  1. 无缓冲(立即刷新)
  2. 行缓冲(行刷新)
  3. 全缓冲(缓冲区满了再刷新)

一般对于显示器,都是行刷新,而对于磁盘文件,是全缓冲。


缓冲区也分为用户级缓冲区和内核级缓冲区:

在我们的日常使用中,都是用户级缓冲区。从缓冲区写到OS的工作叫刷新。
在这里插入图片描述

其实在向文件写入时,我们先写进C语言提供的缓冲区中,然后再写入内核级别的缓冲区,因为访问外设的效率很低,当内核的文件缓冲区满了后再刷新进磁盘中。

二,理解文件系统

2.1 文件系统

要了解文件系统,那么我们就要知道数据是如何存储的。这里我们可以先看一下磁盘的结构。

一个盘面有很多同心磁道,一个磁道有很多的扇区,扇区就是磁盘的最小存储单元,一般是4KB。
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值