`

文件操作1(Beginning Linux Programming 笔记4)

阅读更多
p126 操作文件的时候我们需要使用相关的系统调用(system call),不过一般我们不直接使用他们,而是通过一些 io 库函数来操作,他们可以对文件操作进行 buffer 等处理。 p127 从系统调用的级别来说,linux 把一切都当文件来,都可以进行基本的 open, close, read, write, ioctl 操作。 文件的创建时间等属于值保存在文件系统中所谓的文件信息节点 inode 中,而目录就是一个保存节点数以及文件名的文件。删除一个文件的时候,往往只是从”目录文件”中删除这个文件的相关信息,并减少目录中的节点数;同时,每个文件都有一个 link 数,一般 link 数为 1,我们用 ln 命令创建一个 link ,link 数就变成了 2 ,一个删除文件的操作会把文件的 link 数减 1 。当一个文件的 link 数变成 0 时,相关的文件信息节点以及文件数据块(block)都会被标记为空闲(free),其他文件可以写入。删除文件的操作并不会破坏文件本身的数据内容—一直到有其他相关的数据写入。 p128 有三个重要设备在 linux 和 unix 下都会存在。 /dev/console 和 /dev/tty , /dev/null 。 /dev/console 为系统控制台(system console),系统的错误和诊断信息都会写到该设备文件。 /dev/tty 是控制终端进程(键盘和屏幕,或窗口)的别名,一些系统启动的进程是没有控制终端的,所以不能够打开这个文件。在有控制终端的情况下,我们可以通过写该设备来向用户输出写信息,在标准输出设备被重定向的时候,操作该设备就非常有意义了。 /dev/null 是个空设备,任何写到该设备的信息都会被丢弃。 设备被分为块设备和字符设备(block device, character devide),这是根据设备操作的最小单元来区分的,典型的块设备为硬盘,每次操作都必须是以块(blcok) [...]
分享到:
评论

相关推荐

    Beginning Linux Programming, 4th Edition

    《Beginning Linux Programming, 4th Edition》(《Linux编程起步》第四版)是由Neil Matthew和Richard Stones编写,由Wiley Publishing公司出版的一本针对Linux程序设计的教材。该书详细介绍了Linux环境下的多种...

    Beginning Linux Programming(4rdEn).pdf

    《Beginning Linux Programming》第四版是一本针对初学者的指南,旨在帮助读者掌握如何为Linux以及其他类UNIX操作系统开发程序。本书由Neil Matthew和Richard Stones合著,由Wiley Publishing, Inc.出版。 #### ...

    Beginning Linux Programming, 4th Edition.pdf

    Beginning Linux Programming, Fourth Edition continues its unique approach to teaching UNIX programming in a simple and structured way on the Linux platform. Through the use of detailed and realistic ...

    Beginning Linux Programming 4th

    在文件系统和I/O部分,作者会讲解Linux下的文件操作,如打开、读写文件,以及标准I/O库的使用。此外,还会涉及设备文件和字符特殊文件,让读者理解设备驱动编程的基本原理。 《初识Linux编程》还会深入到网络编程...

    Beginning Linux Programming 3rd Edition pdf

    《Beginning Linux Programming》是一本专为初学者编写的Linux编程指南,旨在帮助读者掌握Linux环境下程序开发的基本技能。本书不仅介绍了Linux操作系统的基本概念和工作原理,还深入探讨了如何在Linux平台上编写...

    Beginning Linux Programming 4th Edition code

    《 Beginning Linux Programming 4th Edition code》是关于Linux程序设计的经典著作的第四版源代码,结合了实际的编程示例和深入的理论讲解,旨在帮助开发者理解和掌握在Linux环境下编写程序的技术。这本书覆盖了从...

    Beginning linux programming(随书源码)

    Beginning linux programming(随书源码,非书籍) 从Linux编程开始,第四版继续以独特的方式在Linux平台上以简单和结构化的方式教授UNIX编程。 通过使用详细而实际的示例,学生可以边做边学,并且能够从Linux初学者...

    Beginning Linux Programming 4th Wiley 2008 (英文pdf+源码)

    1. **Linux基础** - Linux简介:Linux是一个开源的操作系统内核,基于Unix哲学,由全球各地的开发者共同维护和更新。 - 文件系统:Linux使用Hierarchical File System(HFS)结构,根目录"/"下包含其他所有目录,...

    Beginning Linux Programming 4th Edition

    Welcome to Beginning Linux Programming, 4th Edition, an easy-to-use guide to developing programs for Linux and other UNIX-style operating systems. In this book we aim to give you an introduction to a ...

    Wrox - Beginning Linux Programming

    Wrox - Beginning Linux Programming

    《Beginning Linux Programming》第4版源代码

    《 Beginning Linux Programming》第四版源代码是一套针对初学者的Linux编程教程的配套资源,包含了多个章节的示例代码,旨在帮助读者深入理解和实践Linux系统编程。这些代码涵盖了从基础到高级的多个方面,通过实际...

Global site tag (gtag.js) - Google Analytics