Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14861
  • 博文数量: 5
  • 博客积分: 265
  • 博客等级: 二等列兵
  • 技术积分: 60
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-14 20:10
文章分类
文章存档

2009年(3)

2008年(2)

我的朋友
最近访客

分类: LINUX

2008-10-06 23:32:55

每个进程都有一个进程表 进程表里面是一些fd,   0,1,2...
 
每个fd对应打开的一个文件表  这个表的内容是文件相对此进程的信息 如当前偏移量  APPEND等标志
 
 这个表最后对应着实际文件数据
 
 
有可能多个进程打开不同的文件表 但是指向同一个文件  因为可能2个进程都有fopen函数 然后读取偏移量不同
 
而已
 
fork出来的进程和父进程共享一张文件表
 
如果2个进程打开同一个文件  然后想进行添加操作的话 如果lseek 再write 可能会覆盖
 
所以采取APPEND标志  再用write而不是fwrite 就不会覆盖 (fwrite是全缓冲)
阅读(623) | 评论(0) | 转发(0) |
0

上一篇:shell登录过程

下一篇:软中断

给主人留下些什么吧!~~