Linux关于文件操作有两种方式:
系统调用
标准I/O
Linux中一切都是文件:
文件: 内容、名字 + 属性(这些管理信息被保存在文件的indode中,它是文件系统中的一个特殊的数据块。
系统使用的是文件的indode编号
目录:保存其他文件的节点号和名字的文件
它的内容:每个数据项都是指向某个文件节点的链接,删除文件名就等于删除与之对应的链接
文件的删除:
类似与C++11中的shared_ptr,删除一个文件时,其实时删除了该文件对应的目录项,指向该文件的链接数减1,
当链接数为0时,表示文件的indoe和内容不会再被使用,对应的磁盘空间会被标记为可用空间
文件和设备:
硬件设备在linux中通常也被映射为文件
重要的三个设备文件:
/dev/console
/dev/tty
/dev/null