下载此文档

Linux系统调用和文件IO.ppt


文档分类:IT计算机 | 页数:约31页 举报非法文档有奖
1/31
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/31 下载此文档
文档列表 文档介绍
该【Linux系统调用和文件IO 】是由【小屁孩】上传分享,文档一共【31】页,该文档可以免费在线阅读,需要了解更多关于【Linux系统调用和文件IO 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。Linux系统调用和文件I/O2021/10/101Linux系统调用与文件I/OLinux系统调用所谓系统调用是指操作系统提供给用户程序的一组“特殊”接口,用户程序可以通过这组“特殊”接口来获得操作系统内核提供的特殊服务。在Linux中用户程序不能直接访问内核提供的服务。为了更好的保护内核空间,将程序的运行空间分为内核空间和用户空间,他们运行在不同的级别上,在逻辑上是相互隔离的。2021/10/102用户程序接口(API)在Linux中用户编程接口(API)遵循了在UNIX中最流行的应用编程界面标准—POSIX标准。这些系统调用编程接口主要通过C库(libc)实现的。内核空间用户空间系统调用用户程序接口API系统命令系统调用、API与系统命令之间的关系2021/10/103文件I/O介绍可用的文件I/O函数——打开文件、读文件、写文件等等。大多数Linux文件I/O只需用到5个函数:open、read、write、lseek以及close。不带缓存指的是每个read和write都调用内核中的一个系统调用。这些不带缓存的I/O函数不是ANSIC的组成部分,而是POSIX组成部分。2021/10/104文件描述符对于内核而言,所有打开文件都由文件描述符引用。文件描述符是一个非负整数。当打开一个现存文件或创建一个新文件时,内核向进程返回一个文件描述符。当读、写一个文件时,用open或creat返回的文件描述符标识该文件,将其作为参数传送给read或write。2021/10/,整数0、1、2应被代换成符号常数:STDIN_FILENOSTDOUT_FILENOSTDERR_FILENO这些常数都定义在头文件<>中。文件描述符的范围是0~OPEN_MAX。早期的UNIX版本采用的上限值是19(允许每个进程打开20个文件),现在很多系统则将其增加至256。2021/10/106open函数#include<sys/>#include<sys/>#include<>intopen(constchar*pathname,intoflag, …/*,mode_tmode*/);功能:打开文件返回:若成功为文件描述符,若出错为-12021/10/107open函数pathname是要打开或创建的文件的名字。oflag参数可用来说明此函数的多个选择项。对于open函数而言,仅当创建新文件时才使用第三个参数。用下列一个或多个常数进行或运算构成oflag参数(这些常数定义在<>头文件中):O_RDONLY只读打开。O_WRONLY只写打开。O_RDWR读、写打开。2021/10/108O_APPEND每次写时都加到文件的尾端。O_CREAT若此文件不存在则创建它。使用此选择项时,需同时说明第三个参数mode,用其说明该新文件的存取许可权位。O_EXCL如果同时指定了O_CREAT,而文件已经存在,则出错。这可测试一个文件是否存在,如果不存在则创建此文件成为一个原子操作。O_TRUNC如果此文件存在,而且为只读或只写成功打开,则将其长度截短为0。O_NOCTTY如果pathname指的是终端设备,则不将此设备分配作为此进程的控制终端。O_NONBLOCK如果pathname指的是一个FIFO、一个块特殊文件或一个字符特殊文件,则此选择项为此文件的本次打开操作和后续的I/O操作设置非阻塞方式。O_SYNC使每次write都等到物理I/O操作完成。2021/10/109creat函数#include<sys/>#include<sys/>#include<>intcreat(constchar*pathname,mode_tmode);功能:创建一个新的文件。返回:若成功为只写打开的文件描述符,若出错为-1。注意,此函数等效于:open(pathname,O_WRONLY|O_CREAT|O_TRUNC,mode);creat的一个不足之处是它以只写方式打开所创建的文件。2021/10/1010

Linux系统调用和文件IO 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数31
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小屁孩
  • 文件大小326 KB
  • 时间2024-04-17