前几天有个朋友因为项目实施在考虑Linux上的Oracle最快要多长时间才能启动?他们的要求是秒以内因为系统可能会经常断电
我当时考虑秒以内能够实现要压缩到秒以内就太困难了因为数据库的断电恢复可能需要较长的时间
今天看到这样一些新闻和消息先了解一下Linux的启动速度
首先最快的Linux号称可以在 秒内启动Linux boots in seconds
这是一家日本公司设计的嵌入式Linux系统Lineo在低功耗的系统上可以在秒内启动他们称这个快速启动软件系统为Warp Warp 由一个引导加载程序一个定制的Linux软件套装和一个类似于suspendtodisk(休眠到硬盘)的软件 hibernation driver组成
这个冬眠驱动可以将RAM的快照信息写入到闪存里形成镜像而不是写到硬盘里据悉它能够保存%的RAM信息Warp 可以保存多重系统的RAM快照以给重启提供干净的启动环境或者启动时直接读取之前保存的RAM 镜像这样就能加快启动速度
他们的测试环境是使用arm CPU运行Warp 的系统当然Warp 里包含LinuxX显示子系统窗口管理器twm个 xterm命令行工具它启动的是一个MB的RAM镜像花费了秒而在同样的环境下启动M的RAM 镜像需要秒
而在上另外一篇文章则描述了秒内启动的Linux内核
two developers beat the five second mark with two software loads: one modified Fedora and one modified Moblin
这说明Linux的启动时间是大可以精简的不过这样的内核需要相应的硬件系统的配合
在研究Linux启动和初始化时一个很好的辅助工具是BootChart该工具可以用于展现Linux的启动时间消耗以便分析和优化