FreeBSDでkernelが/をマウントするところ
ざっくりメモ
mbr(boot0) -> boot1(pbr) -> boot2 -> loader -> kernel -> /etc/rcで,kernelが/をマウントするところを調べた.
- cpu_set_fork_handler() → start_init() → vfs_mountroot() -> vfs_mountroot_try() -> kernel_mount() -> vfs_donmount() -> vfs_domount() -> 色々
- start_init()
- /usr/src/sys/kern/init_main.c
- /をマウントして init を起動する
- vfs_mountroot()
- vfs_mountroot()
- kernel_mount()
- vfs_donmount()
- オプション解析
- vfs_domount()
参考: