Linux程序设计:三、文件操作

  1. 在linux中,一切都是文件,目录也是一种特殊文件,对文件操作,大多数情况下使用5个基本函数:open、close、read、write、ioctl(https://blog.csdn.net/KingCat666/article/details/75269373):把控制信息传递给设备驱动程序。
  2. 结点(inode):一个特殊的数据块,包含文件长度+在磁盘上的位置
  3. 目录:保存其他文件的节点号(inode)和名字的文件。
  4. 设备:/usr/dev,重要的有三个
    1. /dev/console:系统控制台,接收错误信息和诊断信息
    2. /dev/tty:控制终端(键盘、显示屏)的别名(逻辑设备)
    3. /dev/null:空设备,所有写向这个设备的输出都将被丢弃,读这个设备会返回一个文件尾标志,所以在cp中可以当做空文件
      cp /dev/null empty_file
  5. 系统调用:对文件和设备进行访问和控制的函数  unistd.h
    设备驱动程序:内核,一组对系统硬件进行控制的底层接口,ioctl()函数。
    库函数(stdio.h):比系统调用更高层的接口,效率更高。
  6.  底层文件访问
    进程一般有3个已经打开的文件描述符:0,1,2对应标准输入、输出、错误
    1. write   read  open  close  icotl系统调用 unistd.h
  7. 标准I/O库 stdio.h
    fread,fclose;fread,fwrite;f
    flush-;fseek-;
    fgetc,getc,getchar;
    fputc,putc,putchar;
    fgets,gets;
    printf,fprintf,sprintf;
    scanf,fscanf,sscanf.
  8. 文件和目录的维护:利用标准库(stdio.h)和系统调用(unistd.h)
  9. 扫描目录
  10. 错误处理
  11. /proc文件系统
  12. 高级主题:fcntl和mmap

猜你喜欢

转载自blog.csdn.net/vict_wang/article/details/84995412