ZHANG Jie,YANG Bi-feng,MA Shang-chang,et al.Self-recovery Design of Embedded Linux Kernel[J].Journal of Chengdu University of Information Technology,2018,(04):395-399.[doi:10.16836/j.cnki.jcuit.2018.04.008]
基于嵌入式Linux内核的自恢复设计
- Title:
- Self-recovery Design of Embedded Linux Kernel
- 文章编号:
- 2096-1618(2018)04-0395-05
- Keywords:
- Linux kernel; U-boot; self-recovery; kernel backup
- 分类号:
- TP368.1
- 文献标志码:
- A
- 摘要:
- 随着嵌入式Linux设备应用越来越广泛,在使用过程中却经常发现由于NAND FLASH制造工艺的缺陷造成系统内核丢失或者是内核损坏并且设备出现突然不能够启动的现象。讨论基于嵌入式Linux内核的自恢复设计,将系统内核进行备份,在系统启动失败的时候通过U-boot自动恢复系统内核。Linux内核备份是在NAND FLASH上面设置一个内核备份区并烧写一个内核。设计原理是修改U-boot代码在系统启动的时候验证系统内核并判断内核的正确性,如果系统错误就调用备份区内核并覆盖错误的系统从而恢复系统内核。设计解决了嵌入式Linux系统丢内核的难题。
- Abstract:
- As embedded Linux device has been widely used,however,it is often found that the system kernel core is lost or damaged and the equipment suddenly can not start because the defects of the NAND FLASH manufacturing. This article discusses a self-healing design based on the embedded Linux kernel, and the functions of it are to backup the system kernel and automatically restore the system kernel via U-boot when the system fails to boot. Linux kernel backup is to set up a kernel backup area in NAND FLASH and write a kernel.The design principle is to modify the U-boot code to verify the system kernel and judge the correctness of the kernel when the system is starting. If the system is in error, the kernel of the backup partition is called to cover the wrong system to restore the kernel of the system. This design solves the problem of dropping kernels in embedded Linux systems.
参考文献/References:
[1] 郭明,侯彦华.嵌入式Linux系统的现状与未来[J].北京广播电视大学学报,2003(3):37-40.
[2] 汤瑞.一种基于NAND Flash固态硬盘的坏块管理方法[J].电子科技,2014,27(8):40-42.
[3] 周军.NAND Flash的坏块管理设计[J].单片机与嵌入式系统应用,2010(9):15-17.
[4] 邢晓敏.嵌入式系统的发展与应用[J].中国水运,2011,11(6):68-70.
[5] 蒋光明.基于嵌入式Linux的无线视频监测系统的研制[D].合肥:安徽大学,2015.
[6] 刘志超,荆琦.Linux内核函数调用关系的验证方法[J].微型机与应用,2014(21):4-5.
[7] 段红祥.面向MES终端的嵌入式Linux平台研究和设计[D].重庆:重庆大学,2008.
[8] 吴明晖.基于ARM的嵌入式系统开发与应用[M].北京:人民邮电出版社,2004.
[9] 李飞.一个嵌入系统的设计[J].成都信息工程学院学报,2003,18(3):232-235.
[10] 史永宏,耿增涛,张守伟.基于状态恢复的嵌入式Linux快速引导[J].计算机工程与设计,2008,29(2):277-278.
[11] 金刚,吴军,马鹏,等.嵌入式Linux系统移植中SMP的实现研究[J].信息技术,2016(8):93-96.
[12] 李革梅.嵌入式linux操作系统裁剪和定制研究[D].太原:中北大学,2005.
[13] 陈军,涂亚庆.加快嵌入式Linux系统启动速度的方法及应用[J].后勤工程学院学报,2005,21(3):54-58.
[14] 霍妍,孟凡荣.基于Linux嵌入式系统的研究与实现[J].计算机系统应用,2004,13(8):4-6.
[15] 孟雷,忽海娜,MENGLei,等.ARM-Linux嵌入式系统BootLoader的配置与移植[J].计算机技术与发展,2008,18(10):204-206.
备注/Memo
收稿日期:2017-11-23基金项目:四川省教育厅重点资助项目(16ZA0210)