随笔分类 -  apue第二版

摘要:传统的unix在内核中设有缓冲区高速缓存或页面高速缓存,大多数磁盘 I/O都通过缓冲进行。当将数据写入文件时,内核通常先将该数据复制到其中一个缓冲区中,如果该缓冲区尚未写满,则并不将其排入输出队列,而是等待其写满或者当内核需要重用该缓冲区以便存放其他磁盘块数据时,再将该缓冲排入输出队列,然后待其到... 阅读全文
posted @ 2015-06-25 09:33 C+++++++wyl 阅读(5150) 评论(0) 推荐(0)
摘要:原子操作(automic operation)指的是由多步组成的操作。如果该操作原子的执行,则要么执行完所有步骤,要么一步也不执行,不可能只执行所有步骤的一个子集。向打开文件时设置O_APPEND标志的文件写入是原子操作。内核每次对这种文件进行写之前,都将进程的当前偏移量设置到该文件的尾端处。O_E... 阅读全文
posted @ 2015-06-24 21:41 C+++++++wyl 阅读(780) 评论(0) 推荐(0)
摘要:调用read函数从打开文件读数据。#includessize_t read( int filedes, void *buf, size_t nbytes);从 filedes 中读取数据到 buf 中,nbytes 是要求读到的字节数。返回值:若成功则返回实际读到的字节数,若已到文件尾则返回0,若出... 阅读全文
posted @ 2015-06-24 17:07 C+++++++wyl 阅读(14623) 评论(0) 推荐(1)
摘要:lseek函数用于设置文件偏移量。每个打开的文件都有一个与其相关联的“当前文件偏移量”(current file offset)。它通常是一个非负整数,用以度量从文件开始处计算的字节数。通常,读写操作都从当前文件偏移量处开始,并使偏移量增加所读写的字节数。按系统默认的情况,当打开一个文件时,除非制定... 阅读全文
posted @ 2015-06-24 16:00 C+++++++wyl 阅读(4207) 评论(0) 推荐(0)