摘要: 刚写的,还问题,回去看下怎么回事:#include #include "stdio.h"#define LeftChild(Index) (Index) aLen) { return; } int lMaxIndex = lLeftChild; const int lRigthChild = RightChind(lCurIndex); if (lRigthChild = 0; --i) { Adjust(aArray, i , aLen); } for (int i =... 阅读全文
posted @ 2013-09-24 17:59 hailong 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 转自http://cunsheng.sinaapp.com/?p=360APUE中示例很多, 把这些源码拿来跑跑调调对学习理解有着莫大的帮助, 随书网站就提供了源码下载, 不过我自己在Linux和Mac OS X编译时都遇到了一些小问题, 以下是解决方法和其他一些提示, 希望能对其他人有用下载了源代码后, 正常情况下两步操作就可以完成编译根据你的操作系统选择对应的Make.defines.*文件, 例如你使用的是Linux, 那么就选择Make.defines.linux, 打开并修改其中的第6行, 将WKDIR的值设为解压出的源码文件夹的绝对路径make编译时可能会出现不少warning, 阅读全文
posted @ 2013-09-24 11:41 hailong 阅读(2969) 评论(1) 推荐(0) 编辑
摘要: 转自http://www.ibm.com/developerworks/cn/linux/l-cn-directio/index.html简介:对于传统的操作系统来说,普通的 I/O 操作一般会被内核缓存,这种 I/O 被称作缓存 I/O。本文所介绍的文件访问机制不经过操作系统内核的缓存,数据直接在磁盘和应用程序地址空间进行传输,所以该文件访问的机制称作为直接 I/O。Linux 中就提供了这样一种文件访问机制,对于那种将 I/O 缓存存放在用户地址空间的应用程序来说,直接 I/O 是一种非常高效的手段。本文将基于 2.6.18 版本的内核来讨论 Linux 中直接 I/O 的技术的设计与实现 阅读全文
posted @ 2013-09-24 09:06 hailong 阅读(576) 评论(0) 推荐(0) 编辑