CN111176739A - System starting method, device, equipment and storage medium - Google Patents

System starting method, device, equipment and storage medium Download PDF

Info

Publication number
CN111176739A
CN111176739A CN201911386497.4A CN201911386497A CN111176739A CN 111176739 A CN111176739 A CN 111176739A CN 201911386497 A CN201911386497 A CN 201911386497A CN 111176739 A CN111176739 A CN 111176739A
Authority
CN
China
Prior art keywords
program
core processor
processor
information
memory
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
CN201911386497.4A
Other languages
Chinese (zh)
Inventor
杨琳琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201911386497.4A priority Critical patent/CN111176739A/en
Publication of CN111176739A publication Critical patent/CN111176739A/en
Withdrawn legal-status Critical Current

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
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems

Abstract

The invention discloses a system starting method, a device, equipment and a storage medium, wherein the method comprises the following steps: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the designated information comprises a designated program, an information file and a mirror image file; initializing a first partial space of a memory connected with a multi-core processor, and moving specified information to the first partial space; initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of an operating system by running a specified program in a memory; and starting a system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system. The system can automatically realize the system starting based on the multi-core processor; and the system starting based on the multi-core processor has configurable characteristics.

Description

System starting method, device, equipment and storage medium
Technical Field
The present invention relates to the field of multi-core processor technologies, and in particular, to a method, an apparatus, a device, and a storage medium for system booting.
Background
With the continuous development of AI technology, multi-core RISC-V processors have been developed and are beginning to be applied in some scenes, such as image processing, voice recognition and other fields requiring a large amount of computation. However, the inventor finds that no scheme for automatically starting an operating system (such as a linux system) based on a multi-core RISC-V processor exists at present.
Disclosure of Invention
The invention aims to provide a system starting method, a device, equipment and a storage medium, which can automatically realize the system starting based on a multi-core processor and have the configurable characteristic.
In order to achieve the above purpose, the invention provides the following technical scheme:
a system startup method, comprising:
after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specified information comprises a specified program, an information file and an image file of an operating system needing to be started;
initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory;
initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of the operating system by running the designated program in the memory;
and starting the system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system.
Preferably, the method further comprises the following steps:
after the multi-core processor is electrified and reset, reading a 0 th-level boot startup program solidified in an RAM connected with the multi-core processor, and initializing transmitters respectively connected with the multi-core processor and a client by running the 0 th-level boot startup program.
Preferably, after reading the solidified level 0 boot startup program in the RAM connected to the multi-core processor, the method further includes:
and reading a 1 st level boot startup program from the memory card by operating the 0 th level boot startup program, initializing a second partial space of the memory, and moving the 1 st level boot startup program to the initialized second partial space of the memory, so as to realize the initialization of the first partial space and the movement of the specified information by operating the 1 st level boot startup program in the memory.
Preferably, after the step of transferring the level 1 boot loader and the specific information is implemented, the method further includes:
and verifying whether the 1 st level boot startup program and the designated information change before and after the movement, if so, determining that the movement fails, and realizing the movement of the 1 st level boot startup program and the designated information again, otherwise, determining that the movement is successful.
Preferably, the method further comprises the following steps:
after the multi-core processor is electrified and reset, a starting program in a starting chip is operated to instruct a main processor core contained in the multi-core processor to execute a step of carrying out electrifying initialization operation on a storage card connected with the multi-core processor, and other processor cores except the main processor core contained in the multi-core processor are instructed to wait until the operation system is controlled to operate.
Preferably, the method further comprises the following steps:
in the process of running each program, monitoring whether the running state of each program is normal in real time, and outputting the monitored result to the client through the transmitter; the programs include a start program, a designated program, a 0 th level boot start program and a 1 st level boot start program.
Preferably, outputting the result obtained by monitoring to the client through the transmitter includes:
and if the monitored result is that the running state of the currently running program is normal, directly displaying the monitored result, otherwise, sending an alarm sound and simultaneously displaying the monitored result.
A system startup device comprising:
a first reading module to: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specified information comprises a specified program, an information file and an image file of an operating system needing to be started;
the first moving module is used for: initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory;
a first operational module to: initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of the operating system by running the designated program in the memory;
a start control module to: and starting the system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system.
A system startup device comprising:
a memory for storing a computer program;
a processor for implementing the steps of the system start-up method as described in any one of the above when running the computer program.
A computer-readable storage medium having stored thereon a computer program for implementing the steps of the system startup method according to any one of the preceding claims when the computer program is executed by a processor.
The invention provides a system starting method, a device, equipment and a storage medium, wherein the method comprises the following steps: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specified information comprises a specified program, an information file and an image file of an operating system needing to be started; initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory; initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of the operating system by running the designated program in the memory; and starting the system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system. According to the technical scheme, after the multi-core processor is powered on and reset, the power-on initialization operation of the storage card is automatically achieved, the specified information in the storage card is read, the memory of the corresponding space is initialized, the specified information is moved to the memory, further, the specified program in the specified information is operated in the memory, the hardware information in the information file contained in the specified information is transmitted to the system kernel of the operating system, finally, the system kernel of the operating system is started based on the image file in the memory, and all processor kernels contained in the multi-core processor are controlled to operate the operating system together; therefore, after the multi-core processor is electrified and reset in the mode, the system starting based on the multi-core processor is automatically realized; the image files of the operating systems are stored in the memory card, so that the corresponding image files are only needed to be stored in the memory card for different operating systems needing to be started.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a flowchart of a system booting method according to an embodiment of the present invention;
fig. 2 is a diagram of a hardware structure based on a system booting method according to an embodiment of the present invention;
fig. 3 is a flowchart of a boot program in a system boot method according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a system startup device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, a flowchart of a system booting method according to an embodiment of the present invention is shown, where the method includes:
s11: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the designated information comprises a designated program, an information file and an image file of an operating system needing to be started.
The execution main body of the system starting method provided by the embodiment of the present invention may be a corresponding system starting device, and the system starting device may be disposed in a multi-core processor, so the execution main body of the system starting method may be a multi-core processor, and the following description specifically describes that the execution main body of the system starting method is a multi-core processor. The multi-core processor may be a multi-core RISC-V processor, and the operating system may be a linux system, a windows system, or the like.
After the multi-core processor is electrified and reset, a memory card (which can be an SD card) connected with the multi-core processor can be electrified and initialized, so that the memory card can provide a normal data access function; specifically, the memory card may store a specified program (bbl, Boot Loader, device tree file), an information file (dtb, device tree blob), and an image file of an operating system that needs to be started, and a register space of the memory card may include specific location information of each program and file stored in the memory card, and further, after determining the specific location information of a program or file that needs to be accessed by accessing the register space, the program or file at a location corresponding to the specific location information may be read.
In this embodiment, after the memory card can provide a normal access function, the specific location information of the specific information can be determined in the register space of the memory card, and then the specific location information is located at a corresponding location in the memory card, and then the specific information is read from the located location, so that the specific information can be quickly read in this way. In addition, since the image file is the image file of the operating system, if the operating system to be implemented based on the multi-core processor needs to be replaced, the image file stored in the memory card is directly updated to the image file of the operating system to be implemented, so that different operating systems can be adapted in a simple and convenient manner. In addition, if any item of information in the specified information needs to be modified, the item of information contained in the memory card can be directly modified, and if the specific position information of the specified information is changed due to the modification of the specified information, the changed specific position information can be directly modified in the register space, so that the specified information and the corresponding specific position information are stored through the memory card, and the operations such as updating of the specified information are facilitated.
S12: initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory.
The specific position information of the specifying information recorded in the register space comprises position information and size information, so that after the register space in the memory card is read, the position information and the size information of the specifying information can be determined, in order to use the specifying information in a memory (which can be DDR), a first part of space of the memory connected with the multi-core processor can be initialized, wherein the size of the first part of space is the size of the space represented by the size information of the specifying information, and after the first part of space is initialized, the specifying information can be moved to the first part of space; the moving is specifically copying, so that the memory card also stores the specified information for subsequent use.
S13: initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of an operating system by running a designated program in a memory.
After the designated information is moved to the first part space of the memory, the designated program can be jumped to a position in the memory where the designated program is stored to operate the designated program, and the designated program is used for analyzing the information file so as to transmit hardware information (including the model number of the multi-core processor and the like) of the multi-core processor contained in the information file to a system kernel of an operating system, so that the operating system can acquire the hardware information of the multi-core processor and further realize the operation on the multi-core processor based on the hardware information; in addition, the designated program is also used for initializing each processor core of the multi-core processor to guide the startup of the processor core.
S14: and starting a system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to run the operating system together.
After the operation of the designated program is finished, jumping to a position for storing the image file in the memory, starting a system kernel of the operating system based on the image file, waking up each processor kernel contained in the multi-core processor in the starting process, controlling all the processor kernels contained in the multi-core processor to operate the operating system together, and maintaining the load balance and other operations of each processor kernel by the operating system.
According to the technical scheme, after the multi-core processor is powered on and reset, the power-on initialization operation of the storage card is automatically achieved, the specified information in the storage card is read, the memory of the corresponding space is initialized, the specified information is moved to the memory, further, the specified program in the specified information is operated in the memory, the hardware information in the information file contained in the specified information is transmitted to the system kernel of the operating system, finally, the system kernel of the operating system is started based on the image file in the memory, and all processor kernels contained in the multi-core processor are controlled to operate the operating system together; therefore, after the multi-core processor is electrified and reset in the mode, the system starting based on the multi-core processor is automatically realized; the image files of the operating systems are stored in the memory card, so that the corresponding image files are only needed to be stored in the memory card for different operating systems needing to be started.
The system starting method provided by the embodiment of the invention can further comprise the following steps:
after the multi-core processor is electrified and reset, reading a 0 th-level boot startup program solidified in an RAM connected with the multi-core processor, and initializing transmitters respectively connected with the multi-core processor and a client by running the 0 th-level boot startup program.
In order to further increase the automation of system boot in the embodiments of the present application, a 0 th boot loader (zsbl) may be fixed in the RAM, furthermore, after the multi-core processor is electrified and reset, the 0 th level boot startup program solidified in the RAM connected with the multi-core processor can be read, and a 0 th level boot start program is run to boot the system, including initializing the transmitters (such as UART, etc.) respectively connected to the multi-core processor and the client, so that the transmitter can realize the communication connection between the multi-core processor and the client, the multi-core processor can perform information interaction with the client through the transmitter after entering the operating system, and particularly, and in the following, the user can send an instruction to the multi-core processor through the client to realize operations such as debugging control and the like on the multi-core processor, so that the control operation and the like of the user on the multi-core processor are facilitated.
In addition, the power-on initialization operation of the memory card connected with the multi-core processor can also be realized by running the 0 th-level boot program, that is, the power-on initialization operation of the memory card is realized by running the 0 th-level boot program, and of course, other settings performed according to actual requirements are also within the protection scope of the present invention.
The system starting method provided by the embodiment of the present invention, after reading the 0 th level boot startup program solidified in the RAM connected to the multi-core processor, may further include:
by operating the level 0 boot loader, the level 1 boot loader (fsbl) is read from the memory card, a second partial space of the memory is initialized, and the level 1 boot loader is moved to the second partial space of the initialized memory, so that the initialization of the first partial space and the movement of the specific information are realized by operating the level 1 boot loader in the memory.
The method comprises the steps that a 1 st-level boot startup program can be stored in a memory card, specific position information of the 1 st-level boot startup program is stored in a register space of the memory card, when the 0 th-level boot startup program is operated, a transmitter can be initialized through operation of the 0 th-level boot startup program, the specific position information of the 1 st-level boot startup program can be determined according to the register space of the memory card, a second part space in a memory is further initialized, and the space size of the second part space is the space size represented by size information contained in the specific position information of the 1 st-level boot startup program, namely the space size occupied by a 1 st-level boot program lock; after the specific position information of the 1 st level boot startup program is positioned to the 1 st level boot startup program, the 1 st level boot startup program is read, and the 1 st level boot startup program is moved to a second partial space, so that the processes of initializing the first partial space and moving the formulated information are realized by operating the 1 st level boot startup program; thereby further enhancing the automation of the system start-up in this way.
In addition, the 0 th level boot startup program which does not need to be changed is solidified in the RAM, so that the 0 th level boot startup program can be effectively stored, and meanwhile, the 0 th level boot startup program cannot be externally stored, and the effectiveness of the 0 th level boot startup program is ensured; the 1 st level boot startup program and the designated information which are possibly required to be modified are stored in the memory card, and the corresponding specific position information is stored in the register space of the memory card, so that the information can be modified through the replacement or modification of the corresponding information and the modification of the corresponding specific position information, and the information can be modified to meet the current requirement.
The system starting method provided in the embodiment of the present invention, after the movement of the level 1 boot startup program and the specific information is implemented, may further include:
and verifying whether the 1 st level boot startup program and the designated information change before and after the movement, if so, determining that the movement fails, and realizing the movement of the 1 st level boot startup program and the designated information again, otherwise, determining that the movement is successful.
It should be noted that, in order to ensure successful use of the corresponding information, in this embodiment, after the level 1 boot program and the specific information are moved to the memory, the level 1 boot program in the memory is also compared with the level 1 boot program in the memory card, if the level 1 boot program and the specific information are the same, it indicates that the level 1 boot program does not change before and after the movement, otherwise, it indicates that the level 1 boot program has changed before and after the movement, and it cannot implement the functions that need to be provided any more; therefore, if the level 1 boot starter program is not changed before and after the movement, it is determined that the movement is successful, and the level 1 boot starter program may be run to implement the function that needs to be implemented, and if the level 1 boot starter program is changed before and after the movement, it is determined that the movement is failed, and therefore the level 1 boot starter program cannot be run to implement the function that needs to be implemented; after the designated information and the designated information are moved to the memory, the designated information in the memory is compared with the designated information in the memory card, if the designated information and the designated information are the same, the designated information is not changed before and after the movement, otherwise, the designated information is changed before and after the movement, and the function required to be realized can not be realized; therefore, if the specified information is not changed before and after the movement, the movement is determined to be successful, the specified information can be operated to realize the function to be realized, and if the specified information is changed before and after the movement, the movement is determined to be failed, so the specified information cannot be operated to realize the function to be realized; therefore, the information to be moved is verified in the mode, the corresponding information is guaranteed to be used after the verification is successful, and the information to be moved can normally realize the functions required to be realized in the memory.
The system starting method provided by the embodiment of the invention can further comprise the following steps:
after the multi-core processor is electrified and reset, a starting program in a starting chip is operated to instruct a main processor core contained in the multi-core processor to execute a step of carrying out electrifying initialization operation on a memory card connected with the multi-core processor, and other processor cores except the main processor core contained in the multi-core processor are instructed to wait until an operating system is controlled to run.
A multi-core processor generally includes a main processor core and at least one other processor core; after the multi-core processor is powered on and reset, each processor core included in the multi-core processor starts to run a starting program in a starting chip connected with the multi-core processor, and after the main processor core executes the starting program, the main processor core starts to execute the power-on initialization operation and related system starting steps on a memory card connected with the multi-core processor. In addition, when distinguishing the main processor core from other processor cores except the main processor, the distinguishing can be realized based on the ID of the processor core, specifically, a specified ID can be set for the main processor core in advance, so that after the processor core with the specified ID is determined to be the main processor core, the rest processor cores are the other processor cores, and thus, the distinguishing of different processor cores can be realized conveniently and quickly through the method.
The system starting method provided by the embodiment of the invention can further comprise the following steps:
in the process of running each program, monitoring whether the running state of each program is normal in real time, and outputting the result obtained by monitoring to the client through a transmitter; the programs include a start program, a designated program, a 0 th level boot start program and a 1 st level boot start program.
In the process of running each program, whether the running state of the currently running program is normal can be monitored in real time, and the monitored result is output to the client through the transmitter, so that a user can know the running condition of the currently running program through the client, namely the condition of system starting, corresponding operation is further realized, and smooth realization of system starting is ensured.
The system starting method provided by the embodiment of the invention is used for outputting the monitored result to the client through the transmitter, and can include the following steps:
and if the monitored result is that the running state of the currently running program is normal, directly displaying the monitored result, otherwise, sending an alarm sound and simultaneously displaying the monitored result.
When the monitored result is output to the client through the transmitter, if the monitored result is that the running state of the currently running program is normal, the information that the running state of the currently running program is normal can be directly displayed, otherwise, an alarm sound can be given while the running state of the currently running program is abnormal, so that the user can timely know the abnormal condition of the running state of the currently running program under the prompting of the alarm sound, and further, the corresponding operation is realized, and the smooth realization of the system starting is further ensured.
In addition, in this embodiment, the information stored in the memory card may specifically include reserved space (reserved), register configuration information, level 1 boot loader (fsbl), specified program (bbl), image file (vmlinux), and the like, as shown in table 1.
TABLE 1
Storage space Size and breadth Content providing method and apparatus
0~1MB 1MB Reservd, store gpt partition table
1MB~33MB 32MB Reservd, storage File System
33MB~41MB 8MB Configuration information of memory registers
41MB~49MB 8MB Storing fsbl
49MB~57MB 8MB Storage of bbl
57MB~… Storage image file vmlinux
The detailed information of the register space can be shown in table 2:
TABLE 2
Figure BDA0002343764410000101
Figure BDA0002343764410000111
In a specific application scenario, the application starts an operating system from an SD card based on a multi-core processor, and a hardware structure diagram thereof may be as shown in fig. 2, where: UART (transmitter) is used for interacting information with PC (client); the BOOM CORE (processor CORE) is a CORE part for realizing a multi-CORE RISC-V processor, a plurality of BOOM COREs are connected through a 2D mesh Network, each node (namely the processor CORE) is connected with four adjacent nodes in the 2D mesh Network, and the topological structure is simple, strong in expansibility, multiple in available path and simple to realize, and is one of the most extensive topological structures adopted in a NoC (Network on Chip); the chip is connected to a chip through a Noc bus, and the chip can be used for connecting other chips and peripherals, such as an SD (memory card), a DDR (memory card), a UART (universal asynchronous receiver transmitter) and the like; the Bootrom (starting chip) comprises a first section of code (starting program) executed by the multi-core processor during power-on reset; RAM is used to solidify zsbl (level 0 boot initiator); the SD card is used for storing fsbl, bbl and an image file vmlinux of a system kernel of an operating system; the DDR corresponds to a memory for operating fsbl (boot loader level 1), bbl (boot loader), vmlinux, and the like. Therefore, operating systems with different configurations can be started conveniently and quickly by modifying the configuration of the register.
In this specific application scenario, the program start sequence of the system start method provided by the embodiment of the present invention may sequentially be: a flowchart of program startup may be as shown in fig. 3, and correspondingly, the implementation process of system startup may include:
(1) after the multi-CORE processor is powered on and reset, all processor COREs (BOOM CORE) of the multi-CORE processor start to operate codes (starting programs) in a starting chip (Bootrom), and after the main CORE (main CORE processor) operates the codes in the Bootrom, instructions jump to the storage position of zsbl (0 th level boot starting program), so that zsbl codes are operated, and a system is guided to start; other COREs (slave CORE, other processing COREs except the master processing CORE) will enter the WFI wait state after running code in Bootrom. Wherein, the main CORE and the auxiliary CORE can be distinguished according to the IDs of different COREs;
(2) the instruction jumps to the RAM storing zsbl (level 1 boot startup program), starts to run zsbl, which is used for initializing UART (universal asynchronous receiver/transmitter) to enable the UART to work normally, and outputs printing information (the result of whether the running state of the currently running program is normal) so as to facilitate debugging; after the system is started, information is sent to the multi-core processor through the UART; meanwhile, zsbl performs power-on initialization operation on the SD card, reads the designated position of the SD card, acquires the position and size of the zsbl required to initialize the DDR, which is stored in the register, initializes the DDR corresponding to the position and size, acquires the file size of fsbl in the register and moves the fsbl to the first target address information of the DDR (which can be designated according to actual requirements), and moves the fsbl from the designated position of the SD card to the address corresponding to the first target address information in the DDR;
(3) zsbl moves fsbl to DDR and checks, after the movement is finished and no error is checked, the command jumps to the position of fsbl stored in DDR, and the fsbl is operated; fsbl is used for reading the specified position of the SD card, acquiring the position and the size of the DDR required to be initialized by fsbl in the register, initializing the DDR of the corresponding position and the size, acquiring the file sizes of dtb (information file), bbl (specified program) and vmlinux (image file) in the register, moving the file sizes to second target address information (which can be specified according to actual requirements) of the DDR, and moving dtb, bbl and vmlinux from the specified position of the SD card to an address corresponding to the second target address information in the DDR;
(4) the fsbl moves dtb, bbl and vmlinux to the DDR and checks, after the movement is finished and the check is correct, the instruction jumps to the position for storing bbl in the DDR, and bbl is operated; the bbl is used for analyzing the dtb file, transmitting hardware information in the dtb file to a system kernel of an operating system, initializing all BOOM COREs and peripheral equipment, and guiding the kernel to start; after the initialization is finished, the main BOOM CORE continues to run, and other BOOM COREs enter a WFI waiting state;
(5) after bbl operation is finished, the instruction jumps to the position of storing vmlinux in DDR, a system kernel of an operating system starts to start, in the starting process, a main BOOM CORE wakes up other BOOM COREs, all COREs operate the operating system together, the operating system maintains load balance of each CORE, and information interaction can be carried out between the operating system and a PC (client) through UART (universal asynchronous receiver/transmitter).
An embodiment of the present invention further provides a system starting apparatus, as shown in fig. 4, which may include:
a first reading module 11 configured to: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specific information comprises a specific program, an information file and an image file of an operating system needing to be started;
a first transfer module 12 for: initializing a first part space of a memory connected with a multi-core processor, and moving specified information to the initialized first part space of the memory;
a first operating module 13 for: initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of an operating system by running a designated program in a memory;
an activation control module 14 to: and starting a system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to run the operating system together.
The system starting device provided by the embodiment of the invention can further comprise:
a second reading module to: after the multi-core processor is electrified and reset, reading a 0 th-level boot startup program solidified in an RAM connected with the multi-core processor, and initializing transmitters respectively connected with the multi-core processor and a client by running the 0 th-level boot startup program.
The system starting device provided by the embodiment of the invention can further comprise:
a second operational module to: after a 0 th level boot startup program solidified in a RAM connected with the multi-core processor is read, the 0 th level boot startup program is operated, the 1 st level boot startup program is read from a memory card, a second part space of the memory is initialized, and the 1 st level boot startup program is moved to the second part space of the initialized memory, so that the initialization of the first part space and the movement of the specified information are realized by operating the 1 st level boot startup program in the memory.
The system starting device provided by the embodiment of the invention can further comprise:
a verification module to: after the 1 st level boot startup program and the designated information are moved, verifying whether the 1 st level boot startup program and the designated information change before and after the movement, if so, determining that the movement fails, and re-realizing the movement of the 1 st level boot startup program and the designated information, otherwise, determining that the movement succeeds.
The system starting device provided by the embodiment of the invention can further comprise:
a third operational module to: after the multi-core processor is electrified and reset, a starting program in a starting chip is operated to instruct a main processor core contained in the multi-core processor to execute a step of carrying out electrifying initialization operation on a memory card connected with the multi-core processor, and other processor cores except the main processor core contained in the multi-core processor are instructed to wait until an operating system is controlled to run.
The system starting device provided by the embodiment of the invention can further comprise:
a monitoring module to: in the process of running each program, monitoring whether the running state of each program is normal in real time, and outputting the result obtained by monitoring to the client through a transmitter; the programs include a start program, a designated program, a 0 th level boot start program and a 1 st level boot start program.
In an embodiment of the present invention, a system starting apparatus, a monitoring module may include:
a monitoring unit for: and if the monitored result is that the running state of the currently running program is normal, directly displaying the monitored result, otherwise, sending an alarm sound and simultaneously displaying the monitored result.
An embodiment of the present invention further provides a system starting apparatus, which may include:
a memory for storing a computer program;
a processor for implementing the steps of the system start-up method as described above when running the computer program.
The embodiment of the invention also provides a computer-readable storage medium, wherein a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the system starting method are realized.
It should be noted that, for the description of the relevant parts in the system startup device, the apparatus and the storage medium provided in the embodiment of the present invention, reference is made to the detailed description of the corresponding parts in the system startup method provided in the embodiment of the present invention, and details are not described herein again. In addition, parts of the technical solutions provided in the embodiments of the present invention that are consistent with the implementation principles of the corresponding technical solutions in the prior art are not described in detail, so as to avoid redundant description.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A system startup method, comprising:
after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specified information comprises a specified program, an information file and an image file of an operating system needing to be started;
initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory;
initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of the operating system by running the designated program in the memory;
and starting the system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system.
2. The method of claim 1, further comprising:
after the multi-core processor is electrified and reset, reading a 0 th-level boot startup program solidified in an RAM connected with the multi-core processor, and initializing transmitters respectively connected with the multi-core processor and a client by running the 0 th-level boot startup program.
3. The method of claim 2, wherein after reading the solidified level 0 boot initiator in the RAM connected to the multicore processor, further comprising:
and reading a 1 st level boot startup program from the memory card by operating the 0 th level boot startup program, initializing a second partial space of the memory, and moving the 1 st level boot startup program to the initialized second partial space of the memory, so as to realize the initialization of the first partial space and the movement of the specified information by operating the 1 st level boot startup program in the memory.
4. The method according to claim 3, wherein after the step of implementing the level 1 boot initiator and the movement of the specific information, further comprising:
and verifying whether the 1 st level boot startup program and the designated information change before and after the movement, if so, determining that the movement fails, and realizing the movement of the 1 st level boot startup program and the designated information again, otherwise, determining that the movement is successful.
5. The method of claim 4, further comprising:
after the multi-core processor is electrified and reset, a starting program in a starting chip is operated to instruct a main processor core contained in the multi-core processor to execute a step of carrying out electrifying initialization operation on a storage card connected with the multi-core processor, and other processor cores except the main processor core contained in the multi-core processor are instructed to wait until the operation system is controlled to operate.
6. The method of claim 5, further comprising:
in the process of running each program, monitoring whether the running state of each program is normal in real time, and outputting the monitored result to the client through the transmitter; the programs include a start program, a designated program, a 0 th level boot start program and a 1 st level boot start program.
7. The method of claim 6, wherein outputting the monitored result to the client via the transmitter comprises:
and if the monitored result is that the running state of the currently running program is normal, directly displaying the monitored result, otherwise, sending an alarm sound and simultaneously displaying the monitored result.
8. A system activation device, comprising:
a first reading module to: after the multi-core processor is electrified and reset, carrying out power-on initialization operation on a memory card connected with the multi-core processor, and reading specified information from the memory card; the specified information comprises a specified program, an information file and an image file of an operating system needing to be started;
the first moving module is used for: initializing a first part space of a memory connected with the multi-core processor, and moving the specified information to the initialized first part space of the memory;
a first operational module to: initializing each processor core of the multi-core processor, and transmitting the hardware information of the multi-core processor contained in the information file to a system core of the operating system by running the designated program in the memory;
a start control module to: and starting the system kernel of the operating system based on the image file in the memory, and controlling all processor kernels contained in the multi-core processor to jointly run the operating system.
9. A system startup device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the system startup method according to any one of claims 1 to 7 when running the computer program.
10. A computer-readable storage medium, having stored thereon a computer program for implementing the steps of the system startup method according to any one of claims 1 to 7 when the computer program is executed by a processor.
CN201911386497.4A 2019-12-29 2019-12-29 System starting method, device, equipment and storage medium Withdrawn CN111176739A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911386497.4A CN111176739A (en) 2019-12-29 2019-12-29 System starting method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911386497.4A CN111176739A (en) 2019-12-29 2019-12-29 System starting method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN111176739A true CN111176739A (en) 2020-05-19

Family

ID=70652319

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911386497.4A Withdrawn CN111176739A (en) 2019-12-29 2019-12-29 System starting method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111176739A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905522A (en) * 2021-02-22 2021-06-04 深圳市显控科技股份有限公司 Multi-core shared starting system, control method thereof and storage medium
CN113434087A (en) * 2021-06-28 2021-09-24 山东航天电子技术研究所 Multi-core starting method based on shared space
CN113645412A (en) * 2021-10-15 2021-11-12 北京创米智汇物联科技有限公司 Startup method, startup device, camera and computer-readable storage medium
CN113885950A (en) * 2021-12-06 2022-01-04 中国电子科技集团公司第十五研究所 Quick starting method and device of control panel, terminal equipment and storage medium
CN114489821A (en) * 2022-01-25 2022-05-13 中电科申泰信息科技有限公司 U-Boot-based multi-core processor primary Boot program architecture
CN114924803A (en) * 2022-06-16 2022-08-19 Oppo广东移动通信有限公司 Loading starting method, chip, electronic device and storage medium
CN116737279A (en) * 2023-08-15 2023-09-12 北京紫光芯能科技有限公司 Method and device for program running, processor, electronic device and medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905522A (en) * 2021-02-22 2021-06-04 深圳市显控科技股份有限公司 Multi-core shared starting system, control method thereof and storage medium
CN113434087A (en) * 2021-06-28 2021-09-24 山东航天电子技术研究所 Multi-core starting method based on shared space
CN113434087B (en) * 2021-06-28 2022-09-23 山东航天电子技术研究所 Multi-core starting method based on shared space
CN113645412A (en) * 2021-10-15 2021-11-12 北京创米智汇物联科技有限公司 Startup method, startup device, camera and computer-readable storage medium
CN113885950A (en) * 2021-12-06 2022-01-04 中国电子科技集团公司第十五研究所 Quick starting method and device of control panel, terminal equipment and storage medium
CN114489821A (en) * 2022-01-25 2022-05-13 中电科申泰信息科技有限公司 U-Boot-based multi-core processor primary Boot program architecture
CN114924803A (en) * 2022-06-16 2022-08-19 Oppo广东移动通信有限公司 Loading starting method, chip, electronic device and storage medium
CN116737279A (en) * 2023-08-15 2023-09-12 北京紫光芯能科技有限公司 Method and device for program running, processor, electronic device and medium
CN116737279B (en) * 2023-08-15 2024-01-02 北京紫光芯能科技有限公司 Method and device for program running, processor, electronic device and medium

Similar Documents

Publication Publication Date Title
CN111176739A (en) System starting method, device, equipment and storage medium
CN104185836B (en) The method and system suitably operated for the verifying calculating equipment after system changes
CN105579953B (en) Flexible boot code framework
CN103970557B (en) The method and storage device of storage device activation system
CN110119623A (en) A kind of credible main board implementation method for realizing that firmware is actively measured using TPCM
CN107526593A (en) BMC customizing functions methods based on dynamic link library
CN114138360B (en) Multi-core programming starting method and system for DSP (digital Signal processor) on Flash
CN115357262A (en) Method for upgrading driver firmware in batch
CN110515671A (en) Initial method, apparatus for initializing, terminal device and readable storage medium storing program for executing
CN116881929B (en) Safety protection method and device, electronic equipment and substrate controller chip
CN113656076A (en) BIOS starting method and device based on hardware multiplexing channel
CN116521209B (en) Upgrading method and device of operating system, storage medium and electronic equipment
CN116755749A (en) On-board MCU upgrading method, on-board MCU, board card and information processing system
US6973564B2 (en) Automatically initiating a manufacturing mode of a system firmware
CN116627472A (en) Firmware program upgrading method and server of high-speed peripheral component equipment
CN115766429A (en) Matching method and device of system and edge computing gateway
CN115951949A (en) Recovery method and device for configuration parameters of BIOS (basic input output System) and computing equipment
CN114968301A (en) Program updating method and system based on serial port communication
CN113377425B (en) BMC firmware generation method and device, BMC starting method and device and storage medium
CN110119625A (en) A kind of trusted computing method
CN113778485A (en) System operation method and device of electronic chip, electronic chip and storage medium
CN112667544A (en) Method, device, system and medium for controlling mainboard slot enabling
JP2002318703A (en) Control system
CN106922189B (en) Equipment agent device and control method thereof
CN110119624A (en) A kind of security measure method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20200519

WW01 Invention patent application withdrawn after publication