WO2016090836A1 - Procédé et appareil permettant de démarrer un système intégré - Google Patents

Procédé et appareil permettant de démarrer un système intégré Download PDF

Info

Publication number
WO2016090836A1
WO2016090836A1 PCT/CN2015/078391 CN2015078391W WO2016090836A1 WO 2016090836 A1 WO2016090836 A1 WO 2016090836A1 CN 2015078391 W CN2015078391 W CN 2015078391W WO 2016090836 A1 WO2016090836 A1 WO 2016090836A1
Authority
WO
WIPO (PCT)
Prior art keywords
boot
new kernel
microkernel
kernel
memory
Prior art date
Application number
PCT/CN2015/078391
Other languages
English (en)
Chinese (zh)
Inventor
张兴茂
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2016090836A1 publication Critical patent/WO2016090836A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Definitions

  • This paper relates to the field of embedded system technology, and in particular to a method and device for starting an embedded system.
  • the mainstream of embedded systems is the Linux operating system.
  • the bootloader bootloader is used to boot the operating system.
  • the Packet Transport Network (PTN) device uses a U-Boot (Universal Boot Loader)-based bootloader whose main functions are version loading and booting the operating system. Since the version file (kernel, logical file, system application) of the PTN device is generally solidified on the memory card, loading the boot kernel requires first loading the version file from the memory card into the memory.
  • U-Boot Universal Boot Loader
  • the file system used by the memory card could be recognized by the boot program.
  • the newly developed PTN equipment adopts a new file system in order to meet the requirements of high data availability (that is, the file system can be quickly recovered when the device encounters an unexpected situation (such as device downtime)), data read and write speed, etc. , EXT3), because the current U-Boot-based bootloader does not recognize these new filesystems, it is not possible to load version files from the memory card into memory, causing the embedded system to fail to boot.
  • the embodiment of the invention provides a method and a device for starting an embedded system, which can obtain a version file from a memory card adopting a new file system and load it into a memory and implement an embedded system startup.
  • An embodiment of the present invention provides a method for starting an embedded system, where the method includes:
  • the memory card file system is mounted, and after the mounting is successful, the image file of the new kernel is loaded into the memory from the memory card;
  • the new kernel is booted.
  • the microkernel is generated by cutting the new kernel, and the image file of the microkernel is stored in a non-volatile flash memory storing a boot loader.
  • the memory card file system includes: a log file system ext3 file system.
  • loading the image file of the new kernel into the memory from the memory card including:
  • a new kernel boot segment is organized based on the new kernel file, the root file system, and the device tree generated during the microkernel boot process.
  • the organizing a new kernel boot segment according to the device tree generated by the new kernel file, the root file system, and the microkernel boot process including:
  • the kernel state process obtains parameters of the root file system, and modifies the device tree generated during the microkernel boot process according to the obtained parameters of the root file system;
  • the user state process copies the modified device tree into the user state memory
  • the user state process assembles a new kernel boot segment based on the modified device tree and kernel files.
  • booting the new kernel includes:
  • the new kernel is booted in the context of the current microkernel, and the microkernel is overwritten with a new kernel.
  • the embodiment of the invention further provides an activation device for an embedded system, comprising:
  • a boot module set to load the microkernel image file from the local to the memory to boot the microkernel
  • a secondary boot preparation module configured to mount the memory card file system after the microkernel is successfully booted, and load the image file of the new kernel into the memory from the memory card after the mounting is successful;
  • the secondary boot module is configured to boot the new kernel after the new kernel is successfully loaded.
  • the microkernel is generated by cutting the new kernel, and the image file of the microkernel is stored in a non-volatile flash memory storing a boot loader.
  • the memory card file system includes: a log file system ext3 file system.
  • the secondary boot preparation module loads the image file of the new kernel into the memory from the memory card, including:
  • the secondary boot preparation module reads an image file of the new kernel from the memory card, decompresses the image file of the new kernel into a user state memory, and performs verification, such as verification, to obtain a new kernel file.
  • root file system
  • the secondary boot preparation module organizes a new kernel boot segment according to the device tree generated in the new kernel file, the root file system, and the microkernel boot process.
  • the secondary boot preparation module organizes a new kernel boot segment according to the device tree generated in the new kernel file, the root file system, and the microkernel boot process, including:
  • the secondary boot preparation module controls the kernel state process to obtain parameters of the root file system, and modifies the device tree generated in the microkernel boot process according to the obtained parameters of the root file system;
  • the secondary boot preparation module controls the user state process to copy the modified device tree into the user state memory
  • the secondary boot preparation module controls the user state process to assemble a new kernel boot segment according to the modified device tree and kernel files.
  • the secondary boot module boots the new kernel, including:
  • the secondary boot module allocates a dynamic memory page in the kernel memory, and copies the new kernel boot segment to the dynamic memory page;
  • the secondary boot module boots the new kernel in the context of the current microkernel, overwriting the microkernel with a new kernel.
  • the embodiment of the invention further provides a computer readable storage medium storing program instructions, which can be implemented when the program instructions are executed.
  • the startup method and apparatus for the embedded system provided by the embodiment of the present invention firstly load and boot the microkernel from the local, and then mount the memory card file system from the storage by the secondary booting method.
  • the card is loaded with a new kernel into the memory, and the new kernel is secondarily booted and covers the microkernel.
  • the embodiment of the present invention can obtain a version file from a memory card adopting a new file system and load it into the memory and implement the embedded system. start up.
  • FIG. 1 is a flowchart of a method for starting an embedded system according to an embodiment of the present invention.
  • FIG. 2 is a schematic structural diagram of an apparatus for starting an embedded system according to an embodiment of the present invention.
  • an embodiment of the present invention provides a method for starting an embedded system, where the method includes:
  • the method may also include the following features:
  • booting the microkernel including:
  • the user input is detected within a predetermined time period, and after the user input is detected, the startup parameter is configured according to the user input;
  • microkernel is generated by cutting the new kernel
  • the image file of the microkernel is stored in a space of a non-volatile flash memory BOOTFLASH storing a boot loader;
  • microkernel is compiled and sintered under the booting BOOT project
  • the memory card file system includes: a log file system ext3 file system;
  • the storage card file system is mounted, including:
  • the version file includes one or more of the following: a kernel image file, a logical file, and a system application file;
  • the mount after the mount is successful, it also includes:
  • the image file of the kernel is loaded into the memory from the memory card, including:
  • the new kernel boot segment is organized according to the device tree generated by the new kernel file, the root file system, and the microkernel boot process, including:
  • the kernel state process obtains parameters of the root file system, and modifies the device tree generated during the microkernel boot process according to the obtained parameters of the root file system;
  • the user state process copies the modified device tree into the user state memory
  • the user state process assembles a new kernel boot segment according to the modified device tree and kernel files
  • the device tree is stored in a general-purpose register.
  • the microkernel uses a global pointer to point to the device tree.
  • the microkernel recalculates the start and end addresses of the root filesystem by the size of the root filesystem.
  • To update the device tree file and then return the size of the device tree and the starting address of the root file system to the user state process.
  • the user state process will buffer the pointer and size of the kernel file and the root file system in the user mode, and their Parameters such as the final address and size in kernel mode are assembled into a specific kernel boot segment.
  • the device tree parameter is passed to the I/O interface, the device tree is copied to the user state space, and it is assembled into a specific kernel. In the boot segment, at this point, the specific kernel boot segment is assembled and saved in the user mode memory.
  • the booting of the new kernel includes:
  • the new kernel is booted in the context of the current microkernel, and the microkernel is overwritten with a new kernel.
  • the device After a boot (microkernel boot), the device completes the initialization of power-on boot, memory controller, network controller, bus, etc., and the second boot (kernel boot) can directly skip the above initialization work, and the system call will be
  • the kernel boot segment is transferred to the dynamic kernel memory, and a dynamic memory page is allocated to it, and then copied to the memory page.
  • the system call also allocates a small stub page storing the assembly code, and passes it to the kernel before.
  • the memory page address allocated by the boot segment and the start address of the kernel and the device tree address are jumped to the small stub code execution.
  • the new kernel overwrites the current microkernel, then jumps to the new kernel and starts running.
  • an embodiment of the present invention provides an apparatus for starting an embedded system, including:
  • a boot module set to load the microkernel image file from the local to the memory to boot the microkernel
  • a secondary boot preparation module configured to mount the memory card file system after the microkernel is successfully booted, and load the image file of the new kernel into the memory from the memory card after the mounting is successful;
  • the secondary boot module is configured to boot the new kernel after the new kernel is successfully loaded.
  • the device may also include the following features:
  • the microkernel is generated by cutting the new kernel, and the image file of the microkernel is stored in a non-volatile flash memory storing a boot loader.
  • the memory card file system includes: a log file system ext3 file system.
  • the secondary boot preparation module loads the image file of the new kernel into the memory from the memory card, including:
  • the secondary boot preparation module reads an image file of the new kernel from the memory card, decompresses the image file of the new kernel into a user state memory, and performs verification, such as verification, to obtain a new kernel file.
  • root file system
  • the secondary boot preparation module boots according to the new kernel file, the root file system, and the microkernel A device tree generated during the process to organize new kernel boot segments.
  • the secondary boot preparation module organizes a new kernel boot segment according to the device tree generated in the new kernel file, the root file system, and the microkernel boot process, including:
  • the secondary boot preparation module controls the kernel state process to obtain parameters of the root file system, and modifies the device tree generated in the microkernel boot process according to the obtained parameters of the root file system;
  • the secondary boot preparation module controls the user state process to copy the modified device tree into the user state memory
  • the secondary boot preparation module controls the user state process to assemble a new kernel boot segment according to the modified device tree and kernel files.
  • the secondary boot module boots the new kernel, including:
  • the secondary boot module allocates a dynamic memory page in the kernel memory, and copies the new kernel boot segment to the dynamic memory page;
  • the secondary boot module boots the new kernel in the context of the current microkernel, overwriting the microkernel with a new kernel.
  • the method and device for starting an embedded system provided by the foregoing embodiment, firstly loading a microkernel from a local boot and booting by means of secondary booting, then mounting a memory card file system and loading a new kernel from the memory card to In the memory, the new kernel is secondarily booted and covers the microkernel, and the embodiment of the invention can load the version file from the memory card adopting the novel file system into the memory and implement the embedded system startup.
  • the startup method and device for the embedded system provided by the embodiment of the present invention firstly load the microkernel from the local and boot by means of secondary booting, then mount the memory card file system and load the new kernel from the memory card into the memory.
  • the embodiment of the present invention can load the version file from the memory card adopting the new file system into the memory and implement the embedded system startup.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

L'invention concerne un procédé permettant de démarrer un système intégré. Le procédé consiste à : charger localement un fichier image d'un micro-noyau dans une mémoire et démarrer le micro-noyau (S10) ; monter un système de fichiers d'une carte de stockage après que le micro-noyau est démarré avec succès et charger un fichier image d'un nouveau noyau à partir de la carte de stockage dans la mémoire après que le système de fichiers est monté correctement (S20) ; et démarrer le nouveau noyau après que le nouveau noyau est chargé avec succès (S30). Un appareil permettant de démarrer un système intégré comprend un premier module de démarrage, un second module de préparation de démarrage et un second module de démarrage.
PCT/CN2015/078391 2014-12-12 2015-05-06 Procédé et appareil permettant de démarrer un système intégré WO2016090836A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410768256.7 2014-12-12
CN201410768256.7A CN105739961B (zh) 2014-12-12 2014-12-12 一种嵌入式系统的启动方法和装置

Publications (1)

Publication Number Publication Date
WO2016090836A1 true WO2016090836A1 (fr) 2016-06-16

Family

ID=56106561

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/078391 WO2016090836A1 (fr) 2014-12-12 2015-05-06 Procédé et appareil permettant de démarrer un système intégré

Country Status (2)

Country Link
CN (1) CN105739961B (fr)
WO (1) WO2016090836A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502280A (zh) * 2019-07-09 2019-11-26 宇龙计算机通信科技(深圳)有限公司 安卓操作系统的启动方法、装置、存储介质及终端
CN110674046A (zh) * 2019-09-24 2020-01-10 上海航天电子通讯设备研究所 提高星载嵌入式文件系统可靠性的方法
CN114489821A (zh) * 2022-01-25 2022-05-13 中电科申泰信息科技有限公司 一种基于U-Boot的多核处理器一级启动程序架构

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354498B (zh) * 2016-08-25 2020-05-08 睿芯信息科技(上海)有限公司 一种Linux系统加载设备的方法
CN107688463B (zh) * 2017-09-21 2020-08-18 杭州全维技术股份有限公司 一种嵌入式设备版本文件打包的方法
CN110286953B (zh) * 2019-07-03 2023-12-19 迈普通信技术股份有限公司 嵌入式系统的启动方法、装置、嵌入式设备及存储介质
CN110837376A (zh) * 2019-10-28 2020-02-25 天津七一二通信广播股份有限公司 用于无线平面调车系统设备的linux系统及引入方法
CN113268366A (zh) * 2020-02-17 2021-08-17 斑马智行网络(香港)有限公司 内核运行方法、设备和系统
CN113760379A (zh) * 2020-05-20 2021-12-07 武汉斗鱼鱼乐网络科技有限公司 一种在已发布程序中增加参数的方法和装置
CN112988252B (zh) * 2021-04-26 2021-08-20 统信软件技术有限公司 一种操作系统启动方法及计算设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751273A (zh) * 2008-12-15 2010-06-23 中国科学院声学研究所 用于嵌入式系统的安全引导装置及方法
CN101916348A (zh) * 2010-08-16 2010-12-15 武汉天喻信息产业股份有限公司 一种用户操作系统的安全引导方法及引导系统
CN102056022A (zh) * 2010-10-26 2011-05-11 深圳创维-Rgb电子有限公司 一种操作系统在机顶盒中的应用方法、装置及机顶盒
US20110320794A1 (en) * 2010-06-28 2011-12-29 Chung-Jen Yang Flash System And Method For Updating The Flash System
CN102629206A (zh) * 2012-02-29 2012-08-08 深圳市赛格导航科技股份有限公司 一种嵌入式系统软件升级方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070113229A1 (en) * 2005-11-16 2007-05-17 Alcatel Thread aware distributed software system for a multi-processor
CN100377085C (zh) * 2006-03-31 2008-03-26 浙江大学 嵌入式操作系统硬件镜像启动优化的实现方法
CN101303647A (zh) * 2008-03-20 2008-11-12 中科院嘉兴中心微系统所分中心 一种无线传感器网络专用操作系统的设计方法
CN101770386B (zh) * 2010-03-08 2013-06-19 飞天诚信科技股份有限公司 一种Linux嵌入式系统的安全启动方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751273A (zh) * 2008-12-15 2010-06-23 中国科学院声学研究所 用于嵌入式系统的安全引导装置及方法
US20110320794A1 (en) * 2010-06-28 2011-12-29 Chung-Jen Yang Flash System And Method For Updating The Flash System
CN101916348A (zh) * 2010-08-16 2010-12-15 武汉天喻信息产业股份有限公司 一种用户操作系统的安全引导方法及引导系统
CN102056022A (zh) * 2010-10-26 2011-05-11 深圳创维-Rgb电子有限公司 一种操作系统在机顶盒中的应用方法、装置及机顶盒
CN102629206A (zh) * 2012-02-29 2012-08-08 深圳市赛格导航科技股份有限公司 一种嵌入式系统软件升级方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502280A (zh) * 2019-07-09 2019-11-26 宇龙计算机通信科技(深圳)有限公司 安卓操作系统的启动方法、装置、存储介质及终端
CN110502280B (zh) * 2019-07-09 2024-01-05 宇龙计算机通信科技(深圳)有限公司 安卓操作系统的启动方法、装置、存储介质及终端
CN110674046A (zh) * 2019-09-24 2020-01-10 上海航天电子通讯设备研究所 提高星载嵌入式文件系统可靠性的方法
CN114489821A (zh) * 2022-01-25 2022-05-13 中电科申泰信息科技有限公司 一种基于U-Boot的多核处理器一级启动程序架构
CN114489821B (zh) * 2022-01-25 2024-06-07 中电科申泰信息科技有限公司 一种基于U-Boot的多核处理器一级启动方法

Also Published As

Publication number Publication date
CN105739961A (zh) 2016-07-06
CN105739961B (zh) 2020-11-03

Similar Documents

Publication Publication Date Title
WO2016090836A1 (fr) Procédé et appareil permettant de démarrer un système intégré
US8370835B2 (en) Method for dynamically generating a configuration for a virtual machine with a virtual hard disk in an external storage device
US9384094B2 (en) Method and system for instant restore of system volume from a backup image
US20120311579A1 (en) System and method for updating virtual machine template
JP6750108B2 (ja) オペレーティングシステムのインストール
US9547506B2 (en) Synthetic device for installation source media
US9311126B2 (en) System and method for virtual partition monitoring
US20180365238A1 (en) Sharing Filesystems Between Containers
US20120096252A1 (en) Preparing and preserving a system configuration during a hot upgrade
KR101673299B1 (ko) 운영 시스템 복구 방법 및 장치, 그리고 단말기기
KR102226558B1 (ko) 맞춤형 통합 확장 펌웨어 인터페이스 드라이버를 설치한 컴퓨터-읽기가능 레코딩 매체 및 그것의 방법
US9501344B2 (en) Data dump for a memory in a data processing system
US10664598B1 (en) Firmware security patch deployment
CN110007974B (zh) 应用于操作系统启动的方法和装置、及电子设备
WO2017000567A1 (fr) Procédé et dispositif de mise à niveau de mémoire morte d'amorçage
US11301338B2 (en) Recovery on virtual machines with existing snapshots
CN109983448B (zh) 信息处理装置、设备分配方法及计算机可读取的存储介质
US20150106334A1 (en) Systems and methods for backing up a live virtual machine
US9459883B2 (en) Modifying disk images
US11263082B2 (en) Data recovery of guest virtual machines
US9158550B2 (en) Caching based operating system installation
KR102429346B1 (ko) 메모리 업그레이드 시스템 및 방법
WO2020107469A1 (fr) Procédé et appareil de traitement d'application, et support de stockage
JP2015001757A5 (fr)
EP4290376A1 (fr) Réduction du temps de déploiement des clones de conteneurs dans les environnements informatiques

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15868366

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15868366

Country of ref document: EP

Kind code of ref document: A1