unixIO笔记 读取数据的缓冲

浏览:
字体:
发布时间:2013-12-22 23:48:23
来源:东方联盟

一、IO与文件映射

1、IO的共享与效率

read与write其中数据缓冲的大小

读取数据的缓冲:getpagesize

2、定位与定位读取(随机读取)

read与write在操作的时候,自动移动读取位置。

lseek读取定位,改变读取位置。

pread/pwrite在指定位置读写。

lseek函数说明:返回当前读取位置在文件中的绝对位置

off_set lseek(int fd,//定位文件描述符号

off_t off,// 定位位置

int whence/ 文件开始位置/文件结束位置/文件当前位置 SEEK_SET/SEEK_END/SEEK_CUR)

lseek的作用:定位文件的位置。lseek移动位置只要合法,都是有效的。

lseek+write = pwrite lseek+read = pread

读取一个特殊的文件:

/proc/${pid}/mem文件程序中的虚拟映射文件

文件的其他操作

fstat获取文件状态

ftruncate改变文件大小

文件映射:

虚拟地址映射到内存;

虚拟地址可以映射到文件:可以用内存的方式访问文件。

mmap/munmap

1、使用内存方式写入数据

2、使用内存方式读取数据

二、文件描述符号的操作(IO锁)

文件描述符号是整数,文件描述符号对应内核的上下文环境

dup 返回系统指定的整数 dup2拷贝文件描述符号,返回用户指定的整数

fcntl对文件描述属性的修改

拷贝文件描述符号

修改判定文件的遗传方式(描述标记)

修改判定文件的状态标记

设置强制锁,重新编译内核

设置建议锁,(默认方式)

设置信号

>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 下载 | 关于东盟 | 安全雇佣 | 搞笑视频大全 | 微信学院 |
关于我们 | 联系我们 | 广告服务 | 人才招聘 | 服务条款 | 免责申明 | 帮助中心 | 作品发布 | 网站地图 | 技术培训
Copyright © 2007 - 2018 Vm888.Com. All Rights Reserved
东方联盟 版权所有