您的位置:首页 > 其它

工作安排及总结

2014-08-18 11:45 204 查看
2014 08 18

1:记得随手关门;

2:Linux文件I/O编程

    Linux编程基础:man

    1.一般命令(shell命令)

    2.系统调用(open write等直接陷入内核的函数)

    3.子函数(C函数库等不直接陷入内核的函数)

    4.特殊文件(/dev/zero等linux系统中有特殊用途的文件)

    5.文件格式(linux系统的配置文件格式 host.conf)

    6.游戏

    7.宏和地方传统定义(本地配置)

    8.维护命令(tcpdump等用来观察linux系统运行情况的命令)

    目录也是文件

    进程被启动的目录成为工作目录print working directory

    起始目录也称home目录

    目录操作函数有 opendir readdir closedir

    文件描述符:当打开一个文件时,内核就会分配给你一个非负整数,通过这个整数便可读写文件。

    标准输入  文件描述为0  STDIN_FILENO

    标准输出  文件描述为1  STDOUT_FILENO(每一次在内核组织好,一次性送出来)

    标准错误输出  文件描述符为2 STDERR_FILENO(每一次都进内核,以最快速度反馈给用户)

    不带缓冲的I/O,直接去找系统调用,速度快。(open read write)

    带缓冲的I/O,在系统调用前采用一定的策略,速度慢,比不带缓冲的I/O安 全。

   (fopen fread fwrite)

    一般Linux函数出错时会返回一个负值。附加信息会放在errno中。

    <errno.h>中定义了errno变量以及附加信息的常量。

    errno只有在函数出错时才有意义,并且不可能为0

    可以通过strerror和perror打印出当前errno对应的文字描述信息。

    signal是通知进程发生某种事件的技术。

    每种信号都有系统默认处理方式,程序员也可以提供专门的函数处理程序感兴趣的信号。

    系统调用:操作系统提供给应用使用的接口,通过这些接口应用程序可以访问内核的服务。

    文件时间戳

    文件最后访问时间 ls -lu

    文件修改时间         ls -l

    文件I/O:open

    inode修改时间        ls -lc

    文件I/O:open

    

    文件I/O:creat

    文件I/O:close

    文件I/O:lseek

    文件I/O:read

    文件I/O:write

    Linux I/O实现

    Linux I/O原子操作:pread , pwrite原子读写操作。相当于先把文件偏移量定位到offset,然后在进行读写。这都是一步完成,不存在竞争问题。

    Linux I/O:dup/dup2用来复制一个已经存在的文件描述符

    

    Linux I/O:int fsync(int filedes) 把指定文件的数据和属性写入到磁盘。

    Linux I/O:fcntl可以改变已经打开的描述符。

    文件目录操作:access

    文件操作函数: truncate
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: