Content #
根文件系统挂在哪呢?挂在super_block[8]上。
Linux 0.11操作系统中只有一个super_block[8],每个数组元素是一个超级块,一个超级块管理一个逻辑设备,也就是说操作系统最多只能管理8个逻辑设备,其中只有一个根设备。加载根文件系统最重要的标志就是把根文件系统的根i节点挂在super_block[8]中根设备对应的超级块上。
可以说,加载根文件系统有三个主要步骤: 1)复制根设备的超级块到super_block[8]中,将根设备中的根i节点挂在 super_block[8]中对应根设备的超级块上。 2)将驻留缓冲区中16个缓冲块的根设备逻辑块位图、i节点位图分别挂接在 super_block[8]中根设备超级块的s_zmap[8]、 s_imap[8]上。 3)将当前进程的pwd、root指针指向根设备的根i节点。
From #
Linux内核设计的艺术