文件是什么--是对信息载体的形式抽象

文件:信息存储载体的单元;抽象为字符序列、数据流;

抽象的结果是简化所有IO设备的操作描述;

 

UNIX 是第一个把 I/O 抽象成一个统一的概念和一系列原语的系统。

https://juejin.im/post/5b652d346fb9a04fc03129e6

 

字节流==数据流

 

IO设备:文档、目录、磁盘驱动器、CD-ROM、调制解调器、键盘、打印机、显示器、终端。

IO设备的抽象:

传统上,计算机上用于 IO 的设备大致可以分成两大类,块(block)设备和流(stream)设备。前者可以抽象成一组数据块,读写必须数据块为单位。后者可以抽象成一个数据流,你可以一个字节一个字节的读写,但写出去的数据就是写出去了,没法再改。

https://www.cnblogs.com/feng9exe/p/10222076.html

 

文件操作原语:

in Unix, everything is a file.This simplifies the manipulation of data and devices into a set of core system calls: open(), read(), write(), lseek(), and close().

https://www.cnblogs.com/feng9exe/p/10221729.html

 

 

1、在linux中,一切皆为文件,所有不同种类的类型都被抽象成文件。如:普通文件、目录、字符设备、块设备、套接字等

2、当一个文件被进程打开,就会创建一个文件描述符。这时候,文件的路径就成为了寻址系统,文件描述符成为了字节流的接口

3、相对于普通文件这类真实存在于文件系统中的文件,tcp socket、unix domain socket等这些存在于内存中的特殊文件在被进程打开的时候,也会创建文件描述符。所以"一切皆文件"更准确的描述应该是"一切皆文件描述符"

https://www.cnblogs.com/feng9exe/p/10221087.html

 

转载于:https://www.cnblogs.com/feng9exe/p/11009764.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值