您的位置:首页 > 运维架构 > Linux

linux下的工作目录切换实现

2013-03-12 11:10 183 查看
因为linux中使用chdir和fchdir来修改当前的工作目录,他们都是修改当前进程的工作目录。

linux不提供修改其它进程当前目录的系统调用,所以bash中的cd命令只能是内建命令,而非一个单独的来实现切换工作目录的程序。

并且通常可以利用open打开一个目录,然后利用fchdir来切换工作目录。因为这样只利用目录的文件描述符来实现切换,这些信息都缓存在了目录的inode中,而inode被缓存,所以效率更高;而使用chdir需要逐级解析每个目录项,降低了执行效率。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: