【Linux驱动开发】002 Linux驱动测试程序相关库函数

编写测试 APP 就是编写 Linux 应用,需要用到 C 库里面和文件操作有关的一些函数,比如 open、read、write 和 close 这四个函数。 

1、open函数

int open(const char *pathname, int flags) 

  pathname:要打开的设备或者文件名。 
  flags:文件打开模式,以下三种模式必选其一: 
    O_RDONLY    只读模式 
    O_WRONLY    只写模式 
    O_RDWR      读写模式 
    O_APPEND    每次写操作都写入文件的末尾 
    O_CREAT     如果指定文件不存在,则创建这个文件 
    O_EXCL      如果要创建的文件已存在,则返回  -1,并且修改  errno  的值 
    O_TRUNC     如果文件存在,并且以只写/读写方式打开,则清空文件全部内容 
    O_NOCTTY    如果路径名指向终端设备,不要把这个设备用作控制终端。 
    O_NONBLOCK  如果路径名指向  FIFO/块文件/字符文件,则把文件的打开和后继 I/O 设置为非阻塞 
    DSYNC       等待物理I/O结束后再write。在不影响读取新写入的数据的前提下,不等待文件属性更新。 
    O_RSYNC      read  等待所有写入同一区域的写操作完成后再进行。 
    O_SYNC       等待物理  I/O  结束后再  write,包括更新文件属性的  I/O。 
  返回值:如果文件打开成功的话返回文件的文件描述符。 

2、read函数

ssize_t read(int fd, void *buf, size_t count) 
 
  fd:要读取的文件描述符,读取文件之前要先用 open 函数打开文件,open 函数打开文件成功以后会得到文件描述符。 
  buf:数据读取到此 buf 中。 
  count:要读取的数据长度,也就是字节数。 
  返回值:读取成功的话返回读取到的字节数;如果返回 0 表示读取到了文件末尾;如果返回负值,表示读取失败。在 Ubuntu 中输入“man 2 read”命令即可查看 read 函数的详细内容。 

3、write函数

ssize_t write(int fd, const void *buf, size_t count)

  fd:要进行写操作的文件描述符,写文件之前要先用open函数打开文件,open函数打开文件成功以后会得到文件描述符。 
  buf:要写入的数据。 
  count:要写入的数据长度,也就是字节数。 
  返回值:写入成功的话返回写入的字节数;如果返回 0 表示没有写入任何数据;如果返回负值,表示写入失败。在 Ubuntu 中输入“man 2 write”命令即可查看 write 函数的详细内容。 

4、colse函数

int close(int fd); 
 
  fd:要关闭的文件描述符。 
  返回值:0 表示关闭成功,负值表示关闭失败。在 Ubuntu 中输入“man 2 close”命令即可查看 close 函数的详细内容。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kashine

你的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值