我正在为我的操作系统期中考试做准备,我想知道我是否能得到一些帮助。
有人能解释一下在open()系统调用期间的检查和内核做了什么吗?
谢谢!
发布于 2009-02-15 21:20:16
粗略地说,您可以想到以下步骤:
对于打开普通文件和/或目录,这种描述基本上是正确的,但对于各种特殊文件,尤其是对于设备,情况是不同的。
发布于 2009-02-15 21:13:31
我会回到教授告诉你的-在open()过程中会发生很多事情,这取决于你打开的是什么(例如,一个设备,一个文件,一个目录),除非你写出教授想要的东西,否则你会失去分数。
也就是说,它主要涉及检查这个打开是否有效(即这个文件是否存在,用户是否有读/写它的权限,等等),然后在内核句柄表中分配一个条目来跟踪fd及其当前文件位置(当然还有其他一些东西)
https://stackoverflow.com/questions/551586
复制相似问题