open同一文件和dup的区别

  每次调用open函数就会分配一个新的文件表项,但是因为打开的是同一文件,则两个文件表项指向相同的v-node。调用dup引用已存在的文件表项。
  例:

	fd1 = open(path, oflags);
	fd2 = dup(fd1);
	fd3 = open(path, oflags);

  fd1和fd2指向同一文件表项。fd1和fd3指向两个不同的文件表项,但是这两个不同的文件表项指向的是同一个v-node。

猜你喜欢

转载自blog.csdn.net/The_perfect_world/article/details/89295537
今日推荐