51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#找不到文件
文件I/O(不带缓冲)之原子操作
一、添写至一个文件考虑一个进程,它要将数据添加到一个文件尾端。早期的UNIX系统并不支持open的O_APPEND选项,所以程序被编写成下列形式:if(lseek(fd,0L,2)<0)/*positiontoEOF*/err_sys("lseekerror");if(write(fd,buf,100)!=100...
代码星球
·
2021-02-21
文件
不带
缓冲
原子
操作
文件I/O(不带缓冲)之文件共享
UNIX系统支持在不同进程间共享打开的文件。内核使用三种数据结构表示打开的文件,它们之间的关系决定了在文件共享方面一个进程对另一个进程可能产生的影响。(1)每个进程在进程表中都有一个记录项,记录项中包含有一张打开文件描述符表,可将其视为一个矢量,每个描述符占用一项。与每个文件描述符相关联的是: &...
代码星球
·
2021-02-21
文件
不带
缓冲
共享
文件I/O(不带缓冲)之I/O的效率
程序清单3-3中的程序使用read和write函数复制文件。关于该程序应注意下列各点:它从标准输入读,写至标准输出,这就假定在执行本程序之前,这些标准输入、输出已由shell安排好。确实,所有常用的UNIX系统shell都提供一种方法,它在标准输入上打开一个文件用于读,在标准输出上创建(或重写)一个文件。这使得程序不必...
代码星球
·
2021-02-21
文件
不带
缓冲
效率
文件I/O(不带缓冲)之write函数
调用write函数向打开的文件写数据。#include<unistd.h>ssize_twrite(intfiledes,constvoid*buf,size_tnbytes);返回值:若成功则返回已写的字节数,若出错则返回-1。其返回值通常与参数nbytes的值相同,否则表示出错。write出错的一个常见...
代码星球
·
2021-02-21
文件
不带
缓冲
write
函数
文件I/O(不带缓冲)之read函数
调用read函数从打开文件中读数据。#include<unistd.h>ssize_tread(intfiledes,void*buf,size_tnbytest);返回值:若成功则返回读到的字节数,若已读到文件结尾则返回0,若出错则返回-1。有多种情况可是实际读到的字节数少于要求读的字节数:读普通文件时,...
代码星球
·
2021-02-21
文件
不带
缓冲
read
函数
文件I/O(不带缓冲)之lseek函数
每个打开的文件都有一个与其相关联的“当前文件偏移量”(currentfileoffset)。它通常是一个非负整数,用以度量从文件开始处计算的字节数。通常,读、写操作都从当前文件偏移量处开始,并使偏移量增加所读写的字节数。按系统默认情况,当打开一个文件时,除非指定O_APPEND选项,否则该偏移量被设置为0。可以调用ls...
代码星球
·
2021-02-21
文件
不带
缓冲
lseek
函数
文件I/O(不带缓冲)之close函数
可调用close函数关闭一个打开的文件:#include<unistd.h>intclose(intfiledes);返回值:若成功则返回0,若出错则返回-1。关闭一个文件时还会释放该进程加在该文件上的所有记录锁。当一个进程终止时,内核自动关闭它所有打开的文件。很多程序都利用了这一功能而不显示地用close...
代码星球
·
2021-02-21
文件
不带
缓冲
close
函数
文件I/O(不带缓冲)之creat函数
本篇博文内容摘自《UNIX环境高级编程》(第二版),仅作个人学习记录所用。关于本书可参考:http://www.apuebook.com/。也可调用creat函数创建一个新文件。#include<fcntl.h>intcreat(constchar*pathname,mode_tmode); 返回...
代码星球
·
2021-02-21
文件
不带
缓冲
creat
函数
文件I/O(不带缓冲)之open函数
调用open函数可以打开或创建一个文件。#include<fcntl.h>intopen(constchar*pathname,intoflag,.../*mode_tmode*/); 返回值:若成功则返回文件描述符,若出错则返回-1。我们将第三个参数写为...,ISOC用这种方法表明余下参数的数...
代码星球
·
2021-02-21
文件
不带
缓冲
open
函数
文件I/O(不带缓冲)概述
一、引言UNIX系统中大多数文件I/O只需用到5个函数:open、read、write、lseek以及close。这些函数经常被称为不带缓冲的I/O(unbufferedI/O)。术语不带缓冲指的是每个read和write都调用内核中的一个系统调用。这些不带缓冲的I/O函数不是ISOC的组成部分,但是,它们是POSIX...
代码星球
·
2021-02-21
文件
不带
缓冲
概述
UNIX标准化及实现之POSIX标准可选头文件
POSIX标准定义的可选头文件头文件说明<aio.h>异步I/O<mqueue.h>消息队列<pthread.h>线程<sched.h>执行调度<semaphore.h>信号量<spawn.h>实时spawn接口<stropts.h>X...
代码星球
·
2021-02-21
UNIX
标准化
实现
POSIX
标准
UNIX标准化及实现之POSIX标准扩展头文件
POSIX标准定义的XSI(X/OpenSystemInterface)扩展头文件头文件说明<cpio.h>cpio归档值<dlfcn.h>动态链接<fmtmsg.h>消息显示结构<ftw.h>文件树漫游<iconv.h>代码集转换实用程序<langin...
代码星球
·
2021-02-21
UNIX
标准化
实现
POSIX
标准
UNIX标准化及实现之POSIX标准必需头文件
POSIX标准定义的必需头文件头文件说明<dirent.h>目录项<fcntl.h>文件控制<fnmatch.h>文件名匹配类型<glob.h>路径名模式匹配类型<grp.h>组文件<netdb.h>网络数据库操作<pwd.h>口令文件...
代码星球
·
2021-02-21
UNIX
标准化
实现
POSIX
标准
UNIX标准化及实现之UNIX标准化、UNIX系统实现、标准和实现的关系以及ISO C标准头文件
1、ISOC (InternationalOrganizationforStandardization) 2、IEEEPOSIX (InstitueofElectricalandElectronicsEngineers,PortableOperatingSystemInterface) 3、SingleUN...
代码星球
·
2021-02-21
UNIX
实现
标准化
标准
系统
UNIX基础知识之文件和目录
程序清单1-1列出一个目录中的所有文件(ls命令的简要实现):[root@localhostunix_env_advance_prog]#catprog1-1.c#include"apue.h"#include<dirent.h>intmain(intargc,char*argv[]){DIR*dp;s...
代码星球
·
2021-02-21
UNIX
基础知识
文件
目录
首页
上一页
...
25
26
27
28
29
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他