./configure
检查编译环境,编译工具,库,头文件
设定编译安装选项
结果:结果Makefile.in生成makefile
make
make install
启动顺序:
1 | POST-->BIOS-->MBR(boot loader,446)-->kernel-->initrd(rootfs)-->/sbin/init(/etc/inittab) |
kernel做例如下的工作:
文件系统
进程管理
内存管理
网络管理
安全功能
驱动程序
redhat5:ramdisk–>initrd(初始化RAM磁盘)
http://zh.wikipedia.org/wiki/Initrd
redhat6:ramfs–>initramfs
内核设计风格:
核心:动态加载 内核模块
如:du -sh /lib/modules/uname -r
可以看到内核的大小
而:ls /boot/vmlinuz -lh可以看到核心非常小,
即需要时进行加载,而不编译进内核
内核:/lib/modules/内核版本号命令的目录/
关于设计风格:
http://zh.wikipedia.org/wiki/%E6%95%B4%E5%A1%8A%E6%80%A7%E6%A0%B8%E5%BF%83
单(宏)内核:Linux(LWP:轻量级进程)
核心:ko(Kernel Object)
模块:so(Share Object)
微内核:Windows,Solaris(线程)
chroot:
例如我要chroot到/test/virroot目录下:
1 |
|
启动的服务不同:
运行级别:0~6
0:halt
1:single user mode,直接以管理员身份切入
2:multi user mode,不启用NFS
3:multi user mode,test mode
4:reserved(保留级别)
5:multi user mode,graphic mode
6:reboot
bootloader:
LILO(Linux Loader):不支持大磁盘,嵌入式用的多
grub(Grand Unified Bootloader)
stage1:MBR
stage2:/boot/grub
关于grub的配置选项,可简单参考:
http://www.2cto.com/os/201212/176572.html