1:问题背景
设备老化测试时实时保存识别图像记录,在老化测试24小时后,重启设备,启动耗时由原来的10多ms延长至几分钟。
2:问题分析
查看系统启动日志,发现系统启动缓慢是在挂载一分区时导致很耗时。
设备在老化24小时后,在该分区下存储了2G多的图像数据,每个图像8KB,相当于存储了20万多个文件,再加上在该分区下存储的其他文件,已经是一个很庞大的目录结构了。
最后发现在文件系统init进程中,挂载完该分区后,执行了一个chmod -R整个分区目录的动作,而修改2,3十万个文件的属性这个操作是相当耗时的,这样会随着存储的文件越来越多,系统启动会更加缓慢。
并且这个操作不是必须的,所以在去掉这个动作之后,系统启动耗时恢复正常。
小结:任何一个操作,当量上去后,都可能成为一个耗时操作!!!