CN117632570B - Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC - Google Patents
Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC Download PDFInfo
- Publication number
- CN117632570B CN117632570B CN202410104184.XA CN202410104184A CN117632570B CN 117632570 B CN117632570 B CN 117632570B CN 202410104184 A CN202410104184 A CN 202410104184A CN 117632570 B CN117632570 B CN 117632570B
- Authority
- CN
- China
- Prior art keywords
- operating system
- diagnosis
- storage device
- core heterogeneous
- soc
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
- G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC, wherein the method comprises the following steps: in response to identifying the external storage device, loading a diagnostic profile from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC; triggering an automatic diagnosis mode in response to the first operating system receiving the abnormality notification; in the automatic diagnosis mode, updating a diagnosis configuration file according to error code information in the abnormal notification; based on the updated diagnosis configuration file, determining an operating system to be diagnosed, starting a mirror image of the corresponding diagnosis system, and loading the mirror image to a corresponding memory address from external storage equipment; copying the starting mirror image of the diagnostic system to the corresponding operation address, and starting the corresponding diagnostic system to diagnose the corresponding operating system to be diagnosed respectively. The system not only can save space and resources, but also is convenient for system maintenance and iterative updating, and has remarkable effect on application scenes with large configuration quantity of the diagnosis module, such as an on-board intelligent cabin scene.
Description
Technical Field
The present application relates to the technical field of chip systems, and in particular, to a multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC.
Background
In a multi-core heterogeneous SOC (System On Chip), multiple hardware domains are isolated hard, and each hardware domain can be configured to run a different operating System to improve SOC performance, so that the SOC is suitable for complex application scenarios. For example, in the field of vehicle-mounted intelligent cabins, vehicle-mounted schemes in which multiple SOCs run through multiple systems are gradually replaced by multi-core heterogeneous SOCs. The detection and diagnosis of multiple modules of the multi-core heterogeneous SOC multi-operation system are important links of exception handling.
In the related art, the diagnosis related data of the operating system is loaded from the corresponding EMMC (Embedded Multi Media Card, embedded multimedia memory) to the multi-core heterogeneous SOC memory, and this diagnosis method has a certain disadvantage.
For different multi-core heterogeneous SOCs, if the same diagnostic system and related configuration files are configured, a large number of diagnostic systems and related configuration files need to be integrated on the EMMC to meet high universality, which occupies a large amount of space and resources; if different diagnostic systems and related configuration files are configured, relatively personalized customization is required, which is inconvenient for maintenance and iterative updating. That is, the existing multi-operating system diagnosis method of the multi-core heterogeneous SOC cannot achieve both space resource saving and maintenance and update improving convenience, and particularly, the problem is prominent for a vehicle-mounted intelligent cabin scene configured with a large number of modules (such as a serial peripheral interface module, a universal asynchronous receiving and transmitting module, a camera interface module, a WIFI module, a GPS module, a bluetooth module, etc.).
Disclosure of Invention
In order to solve at least one problem in the prior art, the purpose of the application is to provide a multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC, which not only can save space and resources, but also is convenient for system maintenance and iterative update, and has remarkable effect on application scenes with large configuration quantity of diagnosis modules, such as an on-board intelligent cabin scene.
In order to achieve the above object, the multi-operating system diagnosis method based on multi-core heterogeneous SOC provided in the present application includes:
the method is applied to at least two operating systems in multiple operating systems of the multi-core heterogeneous SOC, wherein the at least two operating systems comprise a first operating system;
the method may include the steps of,
in response to identifying the external storage device, loading a diagnostic profile from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC;
triggering an automatic diagnostic mode in response to the first operating system receiving an exception notification; in the automatic diagnosis mode, updating the diagnosis configuration file according to error code information in the abnormality notification;
determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of a diagnosis system corresponding to the operating system to be diagnosed, and loading the mirror image from the external storage device to a corresponding memory address of the first storage device;
copying the diagnostic system starting mirror image to a corresponding operation address, and starting a corresponding diagnostic system according to the diagnostic system starting mirror image so as to diagnose a corresponding operating system to be diagnosed respectively.
Further, before identifying the external storage device, the method further comprises,
configuring an operating system starting authority for the first operating system; the operating system starting authority comprises starting authority of the multiple operating systems and starting authority of an operating system of at least one hardware domain in the multi-core heterogeneous SOC.
Further, the at least two operating systems include at least one second operating system, the method further comprising,
and when the second operating system is abnormal, sending the abnormal notification to the first operating system through watchdog or inter-core communication.
Further, before identifying the external storage device, the method further comprises,
and loading the SOC starting mirror image stored in the external storage device or the second storage device corresponding to the multi-core heterogeneous SOC to the third storage device of the multi-core heterogeneous SOC, and starting the SOC.
Further, the second storage device corresponding to the multi-core heterogeneous SOC is EMMC of the multi-core heterogeneous SOC; the third storage device of the multi-core heterogeneous SOC is IRAM of the multi-core heterogeneous SOC.
Further, before identifying the external storage device, the method further comprises,
and packaging the corresponding kernel, the device tree binary file and the root file system to generate the diagnostic system start-up image.
Still further, the root file system includes a test tool for the module to be diagnosed; the module to be diagnosed comprises at least one of an EMMC module, a DDR module, a serial port module, a serial peripheral interface module, a camera interface module, a global positioning system module, a WIFI module and a Bluetooth module.
Further, the first storage device corresponding to the multi-core heterogeneous SOC is a DDR of the multi-core heterogeneous SOC.
In order to achieve the above object, the present application further provides a multi-operating system diagnostic device based on a multi-core heterogeneous SOC, which is applied to at least two operating systems among the multi-operating systems of the multi-core heterogeneous SOC, wherein the at least two operating systems include a first operating system;
the apparatus may be configured to be coupled to a device,
the first loading module is used for loading the diagnosis configuration file from the external storage device to the first storage device corresponding to the multi-core heterogeneous SOC in response to the identification of the external storage device;
the configuration updating module is used for responding to the first operating system to receive the abnormal notification and triggering an automatic diagnosis mode; in the automatic diagnosis mode, updating the diagnosis configuration file according to error code information in the abnormality notification;
the second loading module is used for determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of the diagnosis system corresponding to the operating system to be diagnosed, and loading the mirror image from the external storage device to a corresponding memory address of the first storage device;
the diagnosis starting module is used for copying the diagnosis system starting mirror image to a corresponding operation address, and starting the corresponding diagnosis system according to the diagnosis system starting mirror image so as to diagnose the corresponding operation system to be diagnosed respectively.
To achieve the above object, the present application further provides a multi-operating system diagnostic system based on multi-core heterogeneous SOC, including,
the multi-operating system diagnosis device based on multi-core heterogeneous SOC as described above;
the multi-core heterogeneous SOC comprises at least two operating systems; the at least two operating systems include a first operating system; the method comprises the steps of,
and an external storage device configured to store a diagnostic profile and at least two diagnostic system boot images corresponding to the at least two operating systems.
To achieve the above object, the present application provides a computer-readable storage medium having stored thereon computer instructions which, when executed, perform the steps of the multi-operating system diagnostic method based on multi-core heterogeneous SOC as described above.
The multi-operating system diagnosis method, device and system based on the multi-core heterogeneous SOC are characterized in that a diagnosis configuration file and a diagnosis system are stored in external storage equipment; in response to identifying the external storage device, loading the diagnosis configuration file from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC; the first operating system is used for receiving the abnormality notification, triggering an automatic diagnosis mode and updating a diagnosis configuration file according to error code information in the abnormality notification; determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of the diagnostic system corresponding to the operating system to be diagnosed, and loading the mirror image to a corresponding memory address from external storage equipment; and copying the diagnostic system starting mirror image to the corresponding operation address, starting the corresponding diagnostic system according to the diagnostic system starting mirror image, and respectively diagnosing the corresponding operating system to be diagnosed. Therefore, the system not only can save space and resources, but also is convenient for system maintenance and iterative updating, and has remarkable effect on application scenes with large configuration quantity of the diagnosis module, such as an intelligent cabin scene on a vehicle.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the application.
Drawings
The accompanying drawings are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate and explain the application and do not limit it. In the drawings:
FIG. 1 is a flow chart of a multi-operating system diagnostic method according to an embodiment of the present application;
FIG. 2 is a block diagram of a multi-operating system diagnostic device according to an embodiment of the present application;
FIG. 3 is a block diagram of a multi-operating system diagnostic system according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present application are shown in the drawings, it is to be understood that the present application may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided to provide a more thorough and complete understanding of the present application. It should be understood that the drawings and examples of the present application are for illustrative purposes only and are not intended to limit the scope of the present application.
It should be understood that the various steps recited in the method embodiments of the present application may be performed in a different order and/or performed in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present application is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like herein are merely used for distinguishing between different devices, modules, units, or data and not for limiting the order or interdependence of the functions performed by such devices, modules, units, or data.
It should be noted that references to "one" or "a plurality" in this application are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be interpreted as "one or more" unless the context clearly indicates otherwise. "plurality" is understood to mean two or more.
Hereinafter, embodiments of the present application will be described in detail with reference to the accompanying drawings.
Firstly, it should be noted that the multi-operating system diagnosis method provided by the application is based on multi-core heterogeneous SOC. The multi-core heterogeneous SOC comprises a plurality of hardware resources, wherein the hardware resources comprise hardware resources of a computing type, such as a CPU core, a GPU core and the like, hardware resources of a storage type, such as a memory and the like, hardware resources of a control type, such as a power supply controller, a clock controller, an interrupt controller and the like, and hardware resources of a communication type, such as a bus and the like. The plurality of hardware resources are configured as a plurality of hardware sets, each hardware set configured to run a different operating system, each hardware set not responsive to data access requests of other hardware sets, nor to scheduling of other operating systems other than the operating system configured on the present hardware set. The multi-core heterogeneous SOC can be further provided with hardware resources supporting communication among different hardware sets, namely inter-core communication channels, wherein the hardware resources are configured to support data transmission or reading requests of hardware in the different hardware sets so as to support establishment of data communication links among different operating systems, realize data transmission across the hardware resources and information communication across the operating systems.
The multi-operating system diagnosis method based on the multi-core heterogeneous SOC is applied to at least two operating systems in the multi-operating system of the multi-core heterogeneous SOC. In the external storage device, the diagnostic system boot image of the at least two operating systems and the corresponding configuration files are stored. That is, the multi-operating system of the multi-core heterogeneous SOC may be all applicable to the multi-operating system diagnostic method provided in the present application; or may be part of an operating system.
It can be appreciated that the at least two operating systems may be in one-to-one correspondence with at least two hardware domains of the multi-core heterogeneous SOC; there may also be cases where at least two of them run in the same hardware domain. This is not particularly limited in this application.
And, the at least two operating systems include a first operating system, and the first operating system may have authority to control start-up for a certain hardware domain (including a hardware domain where the first operating system itself is located) or all hardware domains in the multi-core heterogeneous SOC.
Fig. 1 is a flowchart of a multi-operating system diagnosis method based on a multi-core heterogeneous SOC according to an embodiment of the present application, and a detailed description will be made below of the multi-core heterogeneous SOC-based multi-operating system diagnosis method of the present application with reference to fig. 1.
In step 101, in response to identifying an external storage device, a diagnostic profile is loaded from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC.
In a specific example, the first storage device may be a DDR (Double Data Rate Synchronous Dynamic Random Access Memory, double rate synchronous dynamic random access memory) corresponding to the multi-core heterogeneous SOC; the external storage device may be a USB flash disk.
After the SOC is started, the diagnostic profile is loaded from the external storage device in a Preloader (preload) stage. It is understood that the external storage device may be inserted before or after the start of the SOC. This is not particularly limited in this application.
In step 102, in response to the first operating system receiving the exception notification, triggering an automatic diagnostic mode; in the automatic diagnosis mode, the diagnosis configuration file is updated according to error code information in the abnormality notification.
In this embodiment, the at least two operating systems include at least one second operating system, and the method further includes sending, when an exception occurs in the second operating system, an exception notification to the first operating system through watchdog or inter-core communication.
In a specific example, when the first operating system with the hardware domain starting authority receives an exception notification sent by the second operating system through watchdog or inter-core communication, an automatic diagnosis mode is triggered, error code information is obtained, and the error code information is written into a diagnosis configuration file.
The exception notification may be sent by the second operating system or may be generated by the first operating system itself. That is, the method is applicable to not only the diagnosis of the second operating system but also the diagnosis of the first operating system itself.
In step 103, based on the updated diagnostic configuration file, the operating system to be diagnosed is determined, and the diagnostic system boot image corresponding to the operating system to be diagnosed is loaded from the external storage device to the corresponding memory address of the first storage device.
In a specific example, an operating system to be diagnosed in the multiple operating systems is determined based on updating the diagnostic profile with error code information. And then, starting the mirror image of the corresponding diagnosis system, and loading the mirror image from the external storage device to the DDR corresponding memory address of the SOC so as to start the corresponding diagnosis system in the corresponding hardware domain for diagnosis.
In step 104, the diagnostic system boot image is copied to the corresponding running address, and the corresponding diagnostic system is started according to the diagnostic system boot image, so as to diagnose the corresponding operating system to be diagnosed respectively.
Wherein the corresponding run address may be configured in IRAM (Internal Random Access Memory ) of the SOC. In a specific example, diagnosing the corresponding operating system to be diagnosed may include diagnosing an EMMC module, a DDR module, a serial port module, a serial peripheral interface module, a camera interface module, a global positioning system module, a WIFI module, or a bluetooth module in the operating system to be diagnosed.
The present application will be further explained and illustrated by a specific example.
In this particular embodiment, the multi-operating system of the multi-core heterogeneous SOC includes one first operating system OS1, and two second operating systems OS2 and OS3. The USB flash disk is used as an external storage device, and is used for storing diagnostic system boot images of the OS1, the OS2 and the OS3 and corresponding configuration files.
In this specific embodiment, after the multi-core heterogeneous SOC is started, in the usb plug-in state, the diagnostic configuration file is loaded from the usb to the DDR corresponding to the multi-core heterogeneous SOC. If the OS1 receives the abnormal notification sent by the OS2 and the OS3 through inter-core communication, triggering an automatic diagnosis mode, updating a diagnosis configuration file according to error code information in the abnormal notification, and determining the OS2 and the OS3 as operating systems to be diagnosed. And then, starting mirror images of diagnostic systems corresponding to the OS2 and the OS3, loading corresponding memory addresses of the DDR from the U disk, copying the corresponding memory addresses to corresponding running addresses, and starting the diagnostic systems corresponding to the OS2 and the OS3 to diagnose the OS2 and the OS3 respectively.
According to the multi-operating system diagnosis method based on the multi-core heterogeneous SOC, the diagnosis configuration file and the diagnosis system are stored in the external storage device; in response to identifying the external storage device, loading the diagnosis configuration file from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC; the first operating system is used for receiving the abnormality notification, triggering an automatic diagnosis mode and updating a diagnosis configuration file according to error code information in the abnormality notification; determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of the diagnostic system corresponding to the operating system to be diagnosed, and loading the mirror image to a corresponding memory address from external storage equipment; and copying the diagnostic system starting mirror image to the corresponding operation address, starting the corresponding diagnostic system according to the diagnostic system starting mirror image, and respectively diagnosing the corresponding operating system to be diagnosed.
Because the space resources of the external storage equipment are not limited, the integration of a large number of diagnosis systems respectively applicable to the modules with various specifications is facilitated, and the diagnosis system maintenance and iterative updating of each SOC in the EMMC are not required. Therefore, the system not only can save space and resources, but also is convenient for system maintenance and iterative updating, and has remarkable effect on application scenes with large configuration quantity of the diagnosis module, such as an intelligent cabin scene on a vehicle.
Moreover, by adopting the method, compared with a conventional customer closed source system, the external diagnosis system avoids the problem that the problem is difficult to find out from the SOC or the customer closed source system.
By adopting the method, the external diagnosis system is stored in the external storage device, and compared with the conventional EMMC, the method is not only suitable for the abnormal condition of the EMMC, but also can carry out self diagnosis of the EMMC.
By adopting the method, through the external diagnosis system, not only other systems can be diagnosed through interaction, but also hardware domains with diagnosis control authority can be diagnosed.
In addition, by adopting the method, the EMMC important data can be backed up. The EMMC important data may be backed up by diagnosing the system, for example, when the system crashes.
In the embodiment of the application, before the external storage device is identified, the method further includes configuring an operating system starting authority for the first operating system; the starting authority of the operating system comprises the starting authority of the multiple operating systems of the multi-core heterogeneous SOC and the starting authority of the operating system of at least one hardware domain in the multi-core heterogeneous SOC. That is, the first operating system may have boot rights for all of the multiple operating systems of the entire multi-core heterogeneous SOC, or may have boot rights for a local hardware domain operating system.
In this embodiment of the present application, before identifying the external storage device, the method further includes loading an SOC start-up mirror image stored in the external storage device or in a second storage device corresponding to the multi-core heterogeneous SOC, to a third storage device of the multi-core heterogeneous SOC, and performing SOC start-up.
Further, the second storage device corresponding to the multi-core heterogeneous SOC is EMMC of the multi-core heterogeneous SOC; the third storage device of the multi-core heterogeneous SOC is IRAM of the multi-core heterogeneous SOC.
That is, the SOC boot image may be stored in an external storage device or may be stored in a second storage device corresponding to the multi-core heterogeneous SOC.
In a specific example, before the SOC starts, the SOC start-up image stored in the U-disc or EMMC may be loaded to the IRAM of the SOC in order to perform the SOC start-up.
In the embodiment of the application, before the external storage device is identified, the method further comprises the step of packaging corresponding kernels, device tree binary files and root file systems to generate a diagnostic system start-up image.
Further, the root file system comprises a testing tool for the module to be diagnosed; the module to be diagnosed comprises at least one of an EMMC module, a DDR module, a serial port module, a serial peripheral interface module, a camera interface module, a global positioning system module, a WIFI module and a Bluetooth module.
In a specific example, taking yopto (project capable of enabling a developer to make a custom Linux image) as an example, the external diagnostic System is a CPIO (code In and Out) file, and different kernels (kernel), device tree binary files (DTB) and Root file System (Root file System) may be packaged according to different scripts to generate a diagnostic System startup image.
In summary, according to the multi-operating system diagnosis method based on multi-core heterogeneous SOC of the embodiment of the application, a diagnosis configuration file and a diagnosis system are stored in external storage equipment; in response to identifying the external storage device, loading the diagnosis configuration file from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC; the first operating system is used for receiving the abnormality notification, triggering an automatic diagnosis mode and updating a diagnosis configuration file according to error code information in the abnormality notification; determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of the diagnostic system corresponding to the operating system to be diagnosed, and loading the mirror image to a corresponding memory address from external storage equipment; and copying the diagnostic system starting mirror image to the corresponding operation address, starting the corresponding diagnostic system according to the diagnostic system starting mirror image, and respectively diagnosing the corresponding operating system to be diagnosed. Therefore, the system not only can save space and resources, but also is convenient for system maintenance and iterative updating, and has remarkable effect on application scenes with large configuration quantity of the diagnosis module, such as an intelligent cabin scene on a vehicle.
Fig. 2 is a block diagram of a multi-operating system diagnostic device based on a multi-core heterogeneous SOC according to an embodiment of the present application. The device is applied to at least two operating systems in multiple operating systems of the multi-core heterogeneous SOC, wherein the at least two operating systems comprise a first operating system. Referring to fig. 2, the multi-operating system diagnostic apparatus 200 includes: a first loading module 201, a configuration updating module 202, a second loading module 203 and a diagnostic initiation module 204.
The first loading module 201 loads the diagnostic profile from the external storage device to the first storage device corresponding to the multi-core heterogeneous SOC in response to identifying the external storage device.
A configuration update module 202 that triggers an automatic diagnostic mode in response to the first operating system receiving an exception notification; in the automatic diagnosis mode, the diagnosis configuration file is updated according to error code information in the abnormality notification.
The second loading module 203 determines an operating system to be diagnosed based on the updated diagnostic configuration file, and loads a diagnostic system boot image corresponding to the operating system to be diagnosed from the external storage device to a corresponding memory address of the first storage device.
The diagnostic starting module 204 is configured to copy the diagnostic system boot image to a corresponding operation address, and start the corresponding diagnostic system according to the diagnostic system boot image, so as to diagnose the corresponding operating system to be diagnosed respectively.
Further, the multi-operating system diagnostic device 200 further includes a rights configuration module (not shown). The permission configuration module is used for configuring the starting permission of the operating system for the first operating system. The operating system boot rights include: the boot right of the multi-operating system and the boot right of the operating system of at least one hardware domain in the multi-core heterogeneous SOC.
Further, the at least two operating systems include at least one second operating system, the multi-operating system diagnostic device 200, and an abnormality information transmission module (not shown). The abnormal information transmission module is used for sending an abnormal notification to the first operating system through watchdog or inter-core communication when the second operating system is abnormal.
Further, the multi-operating system diagnostic device 200 further includes an SOC start-up module (not shown). Before the external storage device is identified, the SOC starting module is used for loading the SOC starting mirror image stored in the external storage device or the second storage device corresponding to the multi-core heterogeneous SOC to the third storage device of the multi-core heterogeneous SOC and starting the SOC. The second storage device corresponding to the multi-core heterogeneous SOC is EMMC of the multi-core heterogeneous SOC; the third storage device of the multi-core heterogeneous SOC is IRAM of the multi-core heterogeneous SOC.
Further, the multi-operating system diagnostic device 200 further includes a mirror generation module (not shown). The image generation module is used for packaging the corresponding kernel, the binary file of the equipment tree and the root file system to generate a diagnostic system starting image. The root file system comprises a testing tool of a module to be diagnosed; the module to be diagnosed comprises at least one of an EMMC module, a DDR module, a serial port module, a serial peripheral interface module, a camera interface module, a global positioning system module, a WIFI module and a Bluetooth module.
It should be noted that, the explanation of the multi-operating system diagnosis method based on the multi-core heterogeneous SOC in the above embodiment is also applicable to the multi-operating system diagnosis device based on the multi-core heterogeneous SOC in the above embodiment, and will not be repeated here.
Fig. 3 is a block diagram of a multi-operating system diagnostic system based on a multi-core heterogeneous SOC according to an embodiment of the present application. Referring to FIG. 3, a multi-operating system diagnostic system 1000 based on multi-core heterogeneous SOCs includes: the multi-operating system diagnosis apparatus 200 based on the multi-core heterogeneous SOC, the multi-core heterogeneous SOC 300, and the external storage device 400 in the above-described embodiments.
Therein, the multi-core heterogeneous SOC 300 includes at least two operating systems 310. At least two operating systems 310 include a first operating system 311.
An external storage device 400 configured to store a diagnostic profile 410, and at least two diagnostic system boot images 420 corresponding to the at least two operating systems 310.
In one embodiment of the present application, there is also provided a computer readable storage medium, which may be included in the system described in the above embodiment; or may exist alone without being assembled into the system. The computer readable storage medium carries one or more computer instructions that, when executed, implement the steps of the multi-operating system diagnostic method based on multi-core heterogeneous SOC of the above-described embodiments.
Embodiments of the present application, the computer-readable storage medium may be a non-volatile computer-readable storage medium, which may include, for example, but not limited to: portable computer diskette, hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
It should be understood that, although the steps in the flowcharts of the specification are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly stated herein, and the steps may be executed in other orders. Moreover, at least a portion of the steps in the flowcharts may include a plurality of sub-steps or stages that are not necessarily performed at the same time, but may be performed at different times, the order in which the sub-steps or stages are performed is not necessarily sequential, and may be performed in turn or alternately with at least a portion of the sub-steps or stages of other steps or other steps.
It is noted that the specific values mentioned above are only for the purpose of illustrating the implementation of the present application in detail as examples and should not be construed as limiting the present application. In other examples or embodiments or examples, other values may be selected according to the present application, without specific limitation.
Those of ordinary skill in the art will appreciate that: the foregoing description is only a preferred embodiment of the present application, and is not intended to limit the present application, but although the present application has been described in detail with reference to the foregoing embodiments, it will be apparent to those skilled in the art that modifications may be made to the technical solutions described in the foregoing embodiments, or that equivalents may be substituted for part of the technical features thereof. Any modification, equivalent replacement, improvement, etc. made within the spirit and principles of the present application should be included in the protection scope of the present application.
Claims (11)
1. The multi-operating system diagnosis method based on the multi-core heterogeneous SOC is characterized by being applied to at least two operating systems in the multi-operating systems of the multi-core heterogeneous SOC, wherein the at least two operating systems comprise a first operating system;
the method may include the steps of,
in response to identifying the external storage device, loading a diagnostic profile from the external storage device to a first storage device corresponding to the multi-core heterogeneous SOC;
triggering an automatic diagnostic mode in response to the first operating system receiving an exception notification; in the automatic diagnosis mode, updating the diagnosis configuration file according to error code information in the abnormality notification;
determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of a diagnosis system corresponding to the operating system to be diagnosed, and loading the mirror image from the external storage device to a corresponding memory address of the first storage device;
copying the diagnostic system starting mirror image to a corresponding operation address, and starting a corresponding diagnostic system according to the diagnostic system starting mirror image so as to diagnose a corresponding operating system to be diagnosed respectively.
2. The multi-operating system diagnostic method based on multi-core heterogeneous SOC of claim 1, wherein prior to identifying the external storage device, the method further comprises,
configuring an operating system starting authority for the first operating system; the operating system starting authority comprises starting authority of the multiple operating systems or starting authority of an operating system of at least one hardware domain in the multi-core heterogeneous SOC.
3. The multi-operating system diagnostic method based on multi-core heterogeneous SOC of claim 1, wherein the at least two operating systems include at least one second operating system, wherein the method further includes,
and when the second operating system is abnormal, sending the abnormal notification to the first operating system through watchdog or inter-core communication.
4. The multi-operating system diagnostic method based on multi-core heterogeneous SOC of claim 1, wherein prior to identifying the external storage device, the method further comprises,
and loading the SOC starting mirror image stored in the external storage device or the second storage device corresponding to the multi-core heterogeneous SOC to the third storage device of the multi-core heterogeneous SOC, and starting the SOC.
5. The multi-operating system diagnosis method based on multi-core heterogeneous SOC of claim 4, wherein the second storage device corresponding to the multi-core heterogeneous SOC is an EMMC of the multi-core heterogeneous SOC; the third storage device of the multi-core heterogeneous SOC is IRAM of the multi-core heterogeneous SOC.
6. The multi-operating system diagnostic method based on multi-core heterogeneous SOC of claim 1, wherein prior to identifying the external storage device, the method further comprises,
and packaging the corresponding kernel, the device tree binary file and the root file system to generate the diagnostic system start-up image.
7. The multi-operating system diagnostic method based on multi-core heterogeneous SOC of claim 6, wherein the root file system includes a test tool for a module to be diagnosed; the module to be diagnosed comprises at least one of an EMMC module, a DDR module, a serial port module, a serial peripheral interface module, a camera interface module, a global positioning system module, a WIFI module and a Bluetooth module.
8. The multi-operating system diagnosis method based on multi-core heterogeneous SOC according to any one of claims 1 to 7, wherein the first storage device corresponding to the multi-core heterogeneous SOC is a DDR of the multi-core heterogeneous SOC.
9. A multi-operating system diagnosis device based on a multi-core heterogeneous SOC, wherein at least two operating systems of the multi-operating systems applied to the multi-core heterogeneous SOC include a first operating system;
the apparatus may be configured to be coupled to a device,
the first loading module is used for loading the diagnosis configuration file from the external storage device to the first storage device corresponding to the multi-core heterogeneous SOC in response to the identification of the external storage device;
the configuration updating module is used for responding to the first operating system to receive the abnormal notification and triggering an automatic diagnosis mode; in the automatic diagnosis mode, updating the diagnosis configuration file according to error code information in the abnormality notification;
the second loading module is used for determining an operating system to be diagnosed based on the updated diagnosis configuration file, starting a mirror image of the diagnosis system corresponding to the operating system to be diagnosed, and loading the mirror image from the external storage device to a corresponding memory address of the first storage device;
the diagnosis starting module is used for copying the diagnosis system starting mirror image to a corresponding operation address, and starting the corresponding diagnosis system according to the diagnosis system starting mirror image so as to diagnose the corresponding operation system to be diagnosed respectively.
10. A multi-operating system diagnosis system based on multi-core heterogeneous SOC is characterized by comprising,
the multi-operating system diagnostic device based on multi-core heterogeneous SOC of claim 9;
the multi-core heterogeneous SOC comprises at least two operating systems; the at least two operating systems include a first operating system; the method comprises the steps of,
and an external storage device configured to store a diagnostic profile and at least two diagnostic system boot images corresponding to the at least two operating systems.
11. A computer readable storage medium having stored thereon computer instructions which, when executed, perform the steps of the multi-operating system diagnostic method based on a multi-core heterogeneous SOC of any of claims 1 to 8.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410104184.XA CN117632570B (en) | 2024-01-25 | 2024-01-25 | Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410104184.XA CN117632570B (en) | 2024-01-25 | 2024-01-25 | Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN117632570A CN117632570A (en) | 2024-03-01 |
| CN117632570B true CN117632570B (en) | 2024-04-12 |
Family
ID=90030760
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202410104184.XA Active CN117632570B (en) | 2024-01-25 | 2024-01-25 | Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN117632570B (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117931529B (en) * | 2024-03-21 | 2024-08-27 | 上海励驰半导体有限公司 | Startup management method and device, electronic device and storage medium |
Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010186242A (en) * | 2009-02-10 | 2010-08-26 | Mitsubishi Electric Corp | Computer system |
| WO2012016439A1 (en) * | 2010-08-06 | 2012-02-09 | 中兴通讯股份有限公司 | Method, device and equipment for service management |
| CN105389235A (en) * | 2015-10-28 | 2016-03-09 | 致象尔微电子科技(上海)有限公司 | Heterogeneous multi-core debug system and method |
| CN113485858A (en) * | 2021-06-15 | 2021-10-08 | 荣耀终端有限公司 | System fault processing method of electronic equipment and electronic equipment |
| CN113704032A (en) * | 2021-08-20 | 2021-11-26 | 北京计算机技术及应用研究所 | Embedded heterogeneous multi-core processor architecture parallel debugging system and method |
| CN114064152A (en) * | 2021-11-26 | 2022-02-18 | 中船重工(武汉)凌久电子有限责任公司 | Embedded multi-core debugging system based on dynamic loading and debugging method thereof |
| CN115599737A (en) * | 2022-12-13 | 2023-01-13 | 南京芯驰半导体科技有限公司(Cn) | Heterogeneous multi-core system, communication method, chip, equipment and storage medium |
| CN115617558A (en) * | 2022-10-26 | 2023-01-17 | 寒武纪行歌(南京)科技有限公司 | Vehicle diagnosis system, method, storage medium and vehicle |
| CN115658160A (en) * | 2022-12-12 | 2023-01-31 | 南京芯驰半导体科技有限公司 | Multi-OS upgrade method, device and system based on multi-core heterogeneous SOC |
| CN117193229A (en) * | 2022-12-29 | 2023-12-08 | 上海映驰科技有限公司 | Heterogeneous multi-core vehicle gateway and ECU fault diagnosis and program upgrading method |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7386761B2 (en) * | 2004-04-16 | 2008-06-10 | International Business Machines Corporation | Diagnostic repair system and method for computing systems |
| US10955805B2 (en) * | 2018-10-09 | 2021-03-23 | Intel Corporation | SoC architecture to integrate with one out of two diagnostics platforms |
| US11803454B2 (en) * | 2021-04-30 | 2023-10-31 | Dell Products L.P. | Chained loading with static and dynamic root of trust measurements |
-
2024
- 2024-01-25 CN CN202410104184.XA patent/CN117632570B/en active Active
Patent Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010186242A (en) * | 2009-02-10 | 2010-08-26 | Mitsubishi Electric Corp | Computer system |
| WO2012016439A1 (en) * | 2010-08-06 | 2012-02-09 | 中兴通讯股份有限公司 | Method, device and equipment for service management |
| CN105389235A (en) * | 2015-10-28 | 2016-03-09 | 致象尔微电子科技(上海)有限公司 | Heterogeneous multi-core debug system and method |
| CN113485858A (en) * | 2021-06-15 | 2021-10-08 | 荣耀终端有限公司 | System fault processing method of electronic equipment and electronic equipment |
| CN113704032A (en) * | 2021-08-20 | 2021-11-26 | 北京计算机技术及应用研究所 | Embedded heterogeneous multi-core processor architecture parallel debugging system and method |
| CN114064152A (en) * | 2021-11-26 | 2022-02-18 | 中船重工(武汉)凌久电子有限责任公司 | Embedded multi-core debugging system based on dynamic loading and debugging method thereof |
| CN115617558A (en) * | 2022-10-26 | 2023-01-17 | 寒武纪行歌(南京)科技有限公司 | Vehicle diagnosis system, method, storage medium and vehicle |
| CN115658160A (en) * | 2022-12-12 | 2023-01-31 | 南京芯驰半导体科技有限公司 | Multi-OS upgrade method, device and system based on multi-core heterogeneous SOC |
| CN115599737A (en) * | 2022-12-13 | 2023-01-13 | 南京芯驰半导体科技有限公司(Cn) | Heterogeneous multi-core system, communication method, chip, equipment and storage medium |
| CN117193229A (en) * | 2022-12-29 | 2023-12-08 | 上海映驰科技有限公司 | Heterogeneous multi-core vehicle gateway and ECU fault diagnosis and program upgrading method |
Non-Patent Citations (1)
| Title |
|---|
| 基于国产化平台的20.1英寸数字化仪表设计;李璨等;《2019年船舶电子自主可控技术发展学术年会论文集》;20191130;第1-4页 * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117632570A (en) | 2024-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108763099B (en) | System starting method and device, electronic equipment and storage medium | |
| EP3479224B1 (en) | Memory allocation techniques at partially-offloaded virtualization managers | |
| EP3479223B1 (en) | Secure booting of virtualization managers | |
| US11429414B2 (en) | Virtual machine management using partially offloaded virtualization managers | |
| CN109710317B (en) | System startup method, device, electronic device and storage medium | |
| US8782469B2 (en) | Request processing system provided with multi-core processor | |
| CN111095205A (en) | Multi-core framework for pre-boot environment of system-on-chip | |
| US10133654B1 (en) | Firmware debug trace capture | |
| CN117632570B (en) | Multi-operating system diagnosis method, device and system based on multi-core heterogeneous SOC | |
| US12147703B2 (en) | Vehicle | |
| WO2024022212A1 (en) | Configuration information management method and apparatus, and server | |
| US20090013167A1 (en) | Computer device, method for booting the same, and booting module for the same | |
| US9417884B2 (en) | Method for enabling calibration during start-up of a micro controller unit and integrated circuit therefor | |
| CN110764962A (en) | Log processing method and device | |
| US8280927B2 (en) | Electronic equipment and memory managing program | |
| US10838737B1 (en) | Restoration of memory content to restore machine state | |
| CN100573450C (en) | At the method and apparatus that has with system's executive utility of non-flash memory | |
| CN118269859A (en) | Control method, controller, vehicle and medium for vehicle operating system | |
| CN117215840A (en) | Log storage method and device for terminal and kernel exception thereof, and readable storage medium | |
| US11204781B2 (en) | Optimizing power, memory and load time of a computing system during image loading based on image segmentation | |
| US20070061613A1 (en) | Restart method for operating system | |
| US20210232405A1 (en) | Circuit and register to prevent executable code access | |
| US20240036941A1 (en) | Vehicle-mounted computer, computer execution method, and computer program | |
| CN118193337A (en) | Data transfer method and device | |
| JP7375643B2 (en) | In-vehicle information processing device, control method and computer program |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |