宿主系统必须运行的是 GCC-3.0 以上版本编译的 2.6.2 或者更新版本的内核。这样的高要求有主要有两个原因:第一,如果宿主系统的内核不是用 GCC-3.0 以上版本编译的,NPTL(本地 POSIX 线程库)的测试程序会出现段错误;第二,使用 Udev 需要 2.6.2 或者更新版本的内核,Udev 通过读取 sysfs 文件系统动态的创建设备,但是大多数内核驱动程序直到最近才实现对这个文件系统的支持,我们必须确保正确的创建了所有关键系统设备。
为了确定宿主系统的内核是否满足上述要求,运行下面的命令:
cat /proc/version
产生的输出类似于这样:
Linux version 2.6.2 (user@host) (gcc version 3.4.0) #1 Tue Apr 20 21:22:18 GMT 2004
如果上面命令的输出结果显示宿主系统的内核版本低于 2.6.2 或者不是用 GCC-3.0 以上版本编译的,您需要用符合要求的编译器重新编译一个2.6.2版本以上的内核,然后用新编译的内核启动宿主系统。关于编译内核和配置引导管理器(假定宿主系统使用 GRUB)的指导,请查看Chapter 8。使用编译器和编译内核应当是你使用这本书的基本功,如果你觉得这两件事对你很困难,那么现在还不是你使用这本书的最佳时机。