嵌入式系统调优与应用部署全解析
系统调优部分
在系统启动过程中,有些初始化操作耗时较长,值得我们去深入分析。例如,在输出中可以看到一些初始化调用的相关信息:
initcall init_sunrpc+0x0/0x58 returned 0 after 8145 usecs
initcall pm_qos_power_init+0x0/0xac returned 0 after 14959 usecs
initcall rtc_hctosys+0x0/0x13c returned 0 after 7436 usecs
其中,后两项与硬件设备配置相关(电源管理硬件和实时时钟),由于它们是必要的,且耗时与底层硬件密切相关,所以难以进行调整。而第一项 init_sunrpc 是优化的目标,它用于处理 NFS 连接,在启动时配置自身会消耗大量时间。
减少根文件系统启动时间
在 Linux 内核启动完成后,减少系统启动运行所需的时间是非常直接有效的优化方式。在大多数标准 Linux 系统(如服务器和桌面机)中, init 程序负责启动系统中的其他进程,该程序更注重灵活性而非速度。而在嵌入式系统中,首要目标是让用户尽快使用设备,因此初始化例程会跳过桌面或服务器系统启动系统所提供的灵活性。
以下是一些经过验证的技术,可以尽可能快地让系统启动并运行:
- 使用只读文件系统 :许多具有闪存存储的设备会选择 JFFS2 文件系统,但它的挂载时间很长
超级会员免费看
订阅专栏 解锁全文
2300

被折叠的 条评论
为什么被折叠?



