标准C库I/O函数与Linux系统I/O函数对比(通俗易懂)

简介: 标准C库I/O函数与Linux系统I/O函数对比(通俗易懂)

一、标准C库I/O函数


标准C库I/O函数详细介绍:https://blog.csdn.net/X_Perseverance/article/details/88975419


1、标准C库I/O函数与Linux系统I/O函数的区别


(1)标准C库I/O函数在读写的时候,中间有一个缓冲区,而Linux系统I/O函数没有缓冲区;如果中间有缓冲区的话在进行读写操作的时候会先存到缓冲区,再刷新到磁盘,它比直接逐条读写到磁盘效率要高。


(2)根据应用场景选择合适的I/O函数,如:再进行网络通信时就应该使用Linux系统I/O函数,因为通信更要求实时性;而在对磁盘进行读写时则选择标准C库I/O函数。


说明:

(1)把缓冲区内容刷新到磁盘的条件见下图;

(2)磁盘是指利用磁记录技术存储数据的存储器。磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。

7b1b5d556f174507bab0d11033ca7bc3.png


2、标准C库I/O函数与Linux系统I/O函数的关系


在使用标准C库I/O函数时,主要使用其中的缓冲区,然后会调用Linux系统I/O函数中的write和read函数进行读写操作;(也即下图内核区域中的write和read函数实际上调用的是Linux系统I/O函数中的write和read函数)

af10e01174b84f2a9c6f420b707c94ee.png

相关文章
|
5天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
4天前
|
Ubuntu Linux 网络安全
从头安装Arch Linux系统
本文记录了作者安装Arch Linux系统的过程,包括安装成果展示和遇到的疑难点及其解决方法,如硬盘不足、下载失败、设置时区、安装微码和配置无密码登录等。
从头安装Arch Linux系统
|
1天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
1天前
|
Ubuntu Linux Shell
Linux系统密码忘记
【10月更文挑战第2天】在Linux系统中,若忘记密码,可以通过单用户模式或使用Live CD/USB来重置。对于Ubuntu系统,可通过GRUB引导菜单进入单用户模式,利用命令行重置密码;或使用Live CD/USB启动并挂载硬盘分区后修改密码文件。CentOS系统同样支持单用户模式重置密码,也可借助安装介质进入救援模式,挂载文件系统后进行密码重置。这些方法均能在忘记密码的情况下帮助恢复系统访问。
|
3天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
3天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
4天前
|
Linux Shell
Linux系统
是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
4天前
|
Linux Python Perl
Linux命令删除文件里的字符串
Linux命令删除文件里的字符串
15 7
|
4天前
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
6天前
|
Linux Perl
Linux之sed命令
Linux之sed命令
下一篇
无影云桌面