用linux,有这样一个疑问:要访问一个文件就得先访问一个目录,才能根据文件名从目录中找到该文件的目录项,进而找到i节点;可是目录本身也是文件,它本身的目录项又在另一个目录项中,这样一来不是成了 “先有鸡还是先有蛋”的问题,或者是递归了吗?这个圈子的出口在哪里呢? 答案是:系统中有这样一个目录,能够在固定的位置找到。这就是初始根节点 现在就来看看内核中是怎样实现的。 我们知道,打开文件时,需要调用path_l...
想把drwxr-sr-x 7 sys sys 512 Dec 31 04:24 oracle\r\n改成drwxr-sr-x 17 oracle dba 512 Oct 30 14:55 oracle应该怎么改啊.
我在一张新软盘映象上存了一个文件: test.txt. 按照FAT12文件系统格式, \r\n在软盘映象文件的 偏移 0x2600处(根目录区第一条目录) 应该能找到改文件的名子. \r\n\r\n但实际上,我看到的在0x2600处 不是test.txt, 名子字符和其它属性有点乱, 而且长度是FF FF FF FF.\r\n而 test.txt, 出现在0x2620处(第二条目录起始地址)\r\n我只存了一个文件,怎么在软盘中会有2条目录呢? 难道是隐藏的备份?\r\n望高人指点一下. \r\n十分感谢!
《私房菜》里面讲操作系统启动的时候,因为要先挂载根目录,才能通过根目录加载驱动,而因为没有驱动,所有没法挂载根目录,所以需要虚拟文件系统提供一个虚拟的根目录。。。。恩,大概就是这个意思。 然后我想知道所谓 “根目录挂载” 具体是怎么实现的呢?虽然知道文件系统还有inode之类的东西,但是还是不知道到底什么才算是“挂载”。 还有,虚拟的根目录是怎么实现的呢? 为什么IDE硬盘就不需要虚拟文件系统了呢? 求解答!
本帖最后由 adibe 于 2011-06-22 13:03 编辑 这是我刚用busybox做的一个文件系统,已经可以正常在班子上跑起来了。mkdir的时候提示: mkdir: can't create directory '1': No space left on device 于是查了下分区空间,信息如下: [root@host/]# [root@host/]# [root@host/]# df -kh Filesystem Size Used Available Use% Mounted on /dev/root 2.0M 2.0M 0 100% / devtmpfs 30.4M 0 30.4M 0% /dev [root@host/]# 怎么跟目...
请问进程的namespace和进程的根目录tsk->fs->root以及进程根文件系统tsk->fs->rootmnt是什么关系? 进程的根文件系统tsk->fs->rootmnt必须是进程的namespace里面的那些安装的文件系统中的一个吗?进程的根目录tsk->fs->root必须是进程的根文件系统tsk->fs->rootmnt的根目录吗? [ 本帖最后由 ahhhhwang 于 2008-3-11 11:38 编辑 ]