写在前面:最近要期末考试,看来真的是要不定时更新啦XD apue4.1: 由于在这里lstat是不跟随符号文件的,而stat是跟随符号文件的,这样一来,如果使用stat,而不使用lstat那么就无法观察到符号文件。在书上4.3姐中有提到。 apue4.2: 首先我在ubuntu的shell上查看原来 ...
分类:
其他好文 时间:
2016-06-06 00:52:14
阅读次数:
135
十二、函数sync、fsync和fdatasync 延迟写:传统的Unix系统在内核中设有缓冲区或页高速缓冲,大多数磁盘I/O都通过缓冲区进行,当我们向文件写入数据时,内核通常先将数据复制到缓冲区,然后排入队列,晚些时候再写入磁盘。Unix系统提供了sync、fsync和fdatasync三个函数。 ...
分类:
其他好文 时间:
2016-06-04 13:27:23
阅读次数:
126
写在前面:本人通信专业大二,自学apue,时间有限,这个系列都是抽时间写的,目前已经看到15章,现在从头做题,如有错误还请指教。 第一题: write和read这样的函数都属于系统调用,这里具体所指的没有缓冲区是没有用户缓冲区,而不是指没有内核缓冲区,这里以我个人的认识认为,这里write和read ...
分类:
其他好文 时间:
2016-06-02 06:08:08
阅读次数:
242
七.函数write 对于普通文件,写操作从文件的当前偏移量处开始。如果在打开文件时,制订了O_APPEND选项,则在每次写操作前,将文件偏移量设在文件的当前结尾处。在一次成功之后,该文件偏移量增加实际写的字节数。 八、I/O的效率 大多数文件系统为改善性能都采用某种预读(read ahead)技术。 ...
分类:
其他好文 时间:
2016-06-02 00:34:44
阅读次数:
168
程序和进程: 程序是存放在磁盘上的处于某个目录中的一个可执行文件。 进程和进程ID: 程序的执行实例被称为进程,操作系统确保每个进程都有一个唯一的数字标识符,称为进程ID,而且确保为非负数。 进程控制: 有个主要进程控制的主要函数:fork,exec,waitpid #C #include apue ...
分类:
编程语言 时间:
2016-05-31 23:51:38
阅读次数:
207
一、引言 UNIX系统中的大多数文件对I/O只需用到5个函数:open/read/write/lseek和close,这些函数都是不带缓冲I/O(Unbuffered I/O)。只要涉及到多个进程间共享资源,原子操作的概念就变得非常重要,后面将介绍:dup/fcntl/sync/fsync和ioct ...
分类:
其他好文 时间:
2016-05-31 00:39:12
阅读次数:
272
系统编程概念与文件属性
本文是作者阅读TLPI(The Linux Programer Interface的总结),为了突出重点,避免一刀砍,我不会过多的去介绍基本的概念和用法,我重点会去介绍原理和细节。因此对于本文的读者,至少要求读过APUE,或者是实际有写过相关代码的程序员,因为知识有点零散,所以我会尽可能以FAQ的形式呈现给读者。
系统编程概念什么是udev机制?我们都知道在Linux中一...
分类:
其他好文 时间:
2016-05-30 15:46:22
阅读次数:
258
APUE讲信号真是生涩,着实读者无趣,如是找一篇总结比较好的博客。 原文http://blog.chinaunix.net/uid-24774106-id-4061386.html Linux编程,信号是一个让人爱恨交加又不得不提的一个领域。最近我集中学习了Linux的signal相关的内容,分享出 ...
分类:
系统相关 时间:
2016-05-29 23:03:10
阅读次数:
373
用的是第三版的安装包:src.3e.tar.gz 地址:http://www.apuebook.com/ 1.解压:$ tar -zxvf *.tar.gz 2. $ cd apue.3e/ 3.编译:$ make 这个过程中报错: undefined reference to `heapsort'... ...
分类:
其他好文 时间:
2016-05-28 01:19:11
阅读次数:
331