CN109542610B - Method for realizing virtual interrupt standard component of multi-partition operating system - Google Patents

Method for realizing virtual interrupt standard component of multi-partition operating system Download PDF

Info

Publication number
CN109542610B
CN109542610B CN201811472036.4A CN201811472036A CN109542610B CN 109542610 B CN109542610 B CN 109542610B CN 201811472036 A CN201811472036 A CN 201811472036A CN 109542610 B CN109542610 B CN 109542610B
Authority
CN
China
Prior art keywords
virtual interrupt
standard
subsystem
interface
interrupt
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
Application number
CN201811472036.4A
Other languages
Chinese (zh)
Other versions
CN109542610A (en
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.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
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 Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201811472036.4A priority Critical patent/CN109542610B/en
Publication of CN109542610A publication Critical patent/CN109542610A/en
Application granted granted Critical
Publication of CN109542610B publication Critical patent/CN109542610B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention belongs to the computer communication technology, and discloses a method for realizing a virtual interrupt standard component of a multi-partition operating system aiming at a multi-partition operating system platform. The invention establishes standard virtual interrupt assembly specification and execution scheme. The standard virtual interrupt component standard establishes the system virtual interrupt dividing standard, divides the subsystem virtual interrupt code, establishes the virtual interrupt initializing standard interface, establishes the virtual interrupt registering interface processing standard and the like. The establishment scheme provides unified management of subsystem virtual interrupt according to subsystem division standards. The formulation scheme ensures that the virtual interrupt implementation scheme of the multi-partition operating system has unified standards and specifications, and unified management is carried out on the virtual interrupt implementation mechanism of each subsystem, so that the coupling among subsystems is reduced, and the independence and maintainability of the system are improved.

Description

Method for realizing virtual interrupt standard component of multi-partition operating system
Technical Field
The invention belongs to the field of airborne networks of avionics systems, and relates to a method for realizing virtual interrupt standard components of a multi-partition operating system.
Background
With the development of avionics technology and the improvement of integration, the application of multi-partition operating system platforms is also increasing. For multi-partition operating systems, the method for reporting device interrupts to partition applications by the core operating system generally adopts a virtual interrupt mode. Because the multi-partition operating system can only report virtual interrupt by one application, when a plurality of applications need to use the virtual interrupt in the system, the existing virtual interrupt implementation mechanism of the multi-partition operating system has the following defects:
(1) There is no unified specification or standard. Because of different models and different applications, the virtual interrupt implementation mechanism of the multi-partition operating system has a difference.
(2) Lack of independence and flexibility. The virtual interrupt implementation mechanism of the multi-partition operating system is uniformly managed by the application in the system, but the flow is complex, and a plurality of applications are mutually coupled. The virtual interrupt implementation mechanism of the application lacks independence.
Summary of the invention
In order to overcome the defects in the description, the invention provides a method for realizing a virtual interrupt standard component of a multi-partition operating system. The virtual interrupt implementation mode of the multi-partition operating system has the management of standard specification and unified specification, effectively avoids the conflict of the virtual interrupt implementation of a plurality of applications in the system, and improves the independence, the flexibility and the maintainability among the applications.
The specific technical scheme of the invention is as follows: the invention provides a virtual interrupt standard component realization method based on a multi-partition operating system platform, which comprises two parts of standard virtual interrupt component specification establishment and standard virtual interrupt component execution.
The standard virtual interrupt assembly specification is formulated, and the specific steps are as follows:
step 1, formulating a system virtual interrupt division standard;
step 2, the unified planning system marks virtual interrupt codes;
step 3, dividing subsystem virtual interrupt codes;
step 4, formulating a virtual interrupt initialization standard interface;
step 5, formulating virtual interrupt registration interface processing specifications;
step 6, making a subsystem virtual interrupt processing standard interface;
step 7, arbitrating the generated virtual interrupt subsystem;
and 8, executing a subsystem virtual interrupt processing standard interface.
The system virtual interrupt dividing standard in the step 1 mainly refers to dividing principles, wherein the dividing principles comprise dividing according to manufacturers, dividing according to professional directions, dividing according to modules and the like.
And step 2, selecting a division principle according to the division standard by the virtual interrupt code of the unified planning system.
And 3, dividing the virtual interrupt codes of the subsystems refers to dividing the virtual interrupt codes of the subsystems according to the number segments according to the step 2.
In step 4, the virtual interrupt initializing standard interface refers to a standard API interface which needs to be executed by the system, and is a common API interface of the system.
In the step 5, the virtual interrupt registration interface processing specification refers to the definition subsystem taking over the virtual interrupt processing specification according to the division standard. Default value 0 is not to take over virtual interrupt handling. The value is set to 1, and virtual interrupt processing is taken over.
In the step 6, the subsystem virtual interrupt handling standard interface includes an API interface format and an API interface parameter of the subsystem standard.
In step 7, the virtual interrupt subsystem generated by arbitration refers to a subsystem to which the virtual interrupt belongs when the virtual interrupt arrives.
The standard virtual interrupt assembly execution scheme comprises the following specific steps:
step A, dividing a system virtual interrupt code;
step B, dividing subsystem virtual interrupt codes;
step C, judging whether the subsystem takes over the interrupt;
step D, if take over, carry out the virtual interrupt and initialize the standard interface;
e, waiting for the interrupt to arrive;
step F, executing virtual interrupt registration interface processing specification;
and G, executing a subsystem virtual interrupt processing standard interface.
The standard virtual interrupt assembly specification formulation in the step of the invention has a dependency relationship with the standard virtual interrupt assembly execution scheme. The standard virtual interrupt assembly specification is formulated to provide methods, schemes and standard basis for the standard virtual interrupt assembly execution scheme. The standard virtual interrupt component execution scheme further verifies the rationality and correctness of standard virtual interrupt component specification formulation.
The virtual interrupt implementation method based on the multi-partition operating system platform has unified flow, management standard and interface standard, effectively avoids conflict of virtual interrupt implementation of a plurality of applications in the system, and improves independence, flexibility and maintainability among the applications.
Drawings
Fig. 1 is a standard virtual interrupt element specification flow.
Fig. 2 is a standard virtual interrupt component execution flow.
The specific embodiment is as follows:
the invention provides a method for realizing a virtual interrupt standard component of a multi-partition operating system aiming at the configuration of the multi-partition operating system. For a better understanding of the present invention, the present invention is further described below with reference to the drawings and specific examples.
As shown in fig. 1, the specification and formulation of the standard virtual interrupt assembly of the present invention specifically comprises the following steps:
step 100, the system virtual interrupt division standard mainly refers to a division principle;
step 101, selecting a division principle according to a division standard;
step 102, dividing virtual interrupt codes of all subsystems according to the number segments according to the step 101;
step 103, the system needs to execute standard initialization API interface, and the common API interface of the system.
Step 104, defining subsystem to take over virtual interrupt processing specification according to the division standard. Default value 0 is not to take over virtual interrupt handling. Setting a value of 1, taking over virtual interrupt processing and registering a virtual interrupt callback routine.
In step 105, the subsystem virtual interrupt handling standard interface includes an API interface format, API interface parameters, of the subsystem standard.
And step 106, arbitrating which subsystem the generated virtual interrupt belongs to according to a pre-registered virtual interrupt callback routine when the virtual interrupt responds.
Step 107, according to the arbitration result, according to step 105, executing the subsystem virtual interrupt processing standard interface.
In the step 100, the dividing principle includes various principles, which are exemplified by: according to manufacturer, according to professional direction, according to module. And uniformly distributing the number segments according to the interrupt number requirements of each subsystem. The rule of number segment allocation follows that the virtual interrupt number segment of each subsystem cannot be repeated.
In step 101, a specific division type may be selected according to different division criteria, for example, division according to manufacturer, division according to professional direction, division according to module, and the like.
In step 102, the virtual interrupt codes of each subsystem are divided according to the selected division criteria and the interrupt number requirement of each subsystem after division (in this embodiment, virtual interrupt division is performed by using the same number of interrupts). If the virtual interrupt number is divided according to the manufacturer, the virtual interrupt number is shown in table 1.
Table 1 sub-systems are divided by manufacturer
Figure BDA0001891199410000031
Figure BDA0001891199410000041
If the virtual interrupt number is divided according to the professional direction, as shown in table 2, the professional direction may be of the flight control type, the electromechanical type, the avionic type, and the like.
Table 2 molecular dividing System in the professional direction
Direction of expertise Virtual interrupt number segment
Professional 1 0---100
Professional 2 101---200
Specialty 3 201---300
Specialty 4 301---400
Professional 5 401---500
If the virtual interrupt number is divided according to the modules, it is specifically shown in table 3.
Table 3 load control response message
Module Virtual interrupt number segment
Module 1 0---100
Module 2 101---200
Module 3 201---300
Module 4 301---400
Module 5 401---500
In the step 103, the system common API interface initializing interface naming rule is as follows: the return type PubSysnameExtVInt. The return type may be int type or other needed type, pub refers to a common interface, sysname refers to a subsystem name, exTVInt refers to extended virtual interrupt initialization, and the parameter identification bit refers to whether to take over virtual interrupt identification. By way of example of this naming convention, assuming naming in the professional direction, the avionics professional direction initialization interface may be defined as: int PubAvionicsExtVInt (identification bit); the electromechanical professional direction initialization interface may be defined as: int PubMechaExtVInt (identification bit).
In step 104, the definition subsystem takes over the virtual interrupt handling specification according to the partitioning criteria. The initial value of each subsystem identification bit is defaulted to 0 (without taking over the virtual interrupt handling). If a subsystem takes over virtual interrupt processing, the flag value is set to 1 and a virtual interrupt callback routine is registered.
In step 105, after a certain subsystem takes over the virtual interrupt processing, the virtual interrupt is processed according to the standard subsystem API interface format and API interface parameters. The standard subsystem API interface naming convention is as follows: the return type subsystemmeextvint (int SysInt, int subsubint, parameter 1, parameter 2, parameter 3, parameter 4). The return type may be int type or other needed types, sub refers to a subsystem call interface, sysname refers to a subsystem name, exTVInt refers to an extended virtual interrupt, a first parameter SysInt refers to a system interrupt code, a second parameter Sub refers to a subsystem interrupt code, and the latter parameters are modified according to needs. For example, assuming the naming convention is named by the manufacturer, the manufacturer 1API interface may be defined as int SubManu1ExtVInt (int SysInt, int SubInt, parameter 1, parameter 2, parameter 3, parameter 4) and the manufacturer 2API interface may be defined as int SubManu2ExtVInt (int SysInt, int SubInt, parameter 1, parameter 2, parameter 3, parameter 4).
In step 106, when there is a virtual interrupt response, the pre-registered virtual interrupt processing routine arbitrates, and determines which subsystem the generated virtual interrupt belongs to according to the arbitration result. For example, the subsystem is divided by manufacturer, and the division standard and number section are shown in table 1, and if the subsystem virtual interrupt number is 188, the virtual interrupt code of manufacturer 2 is determined.
Step 107, executing the virtual interrupt processing standard interface of the subsystem according to the arbitration result of step 106 and the virtual interrupt standard API interface of the subsystem of step 105. In step 106, for example, the subsystem virtual interrupt is 188, the standard API interface int SubManu2ExtVInt (int SysInt, int SubInt, parameter 1, parameter 2, parameter 3, parameter 4) of vendor 2 is executed.
As shown in fig. 2, the specific steps of the standard virtual interrupt component implementation scheme of the present invention are as follows:
step 200, unifying the virtual interrupt codes of the system according to the step 101;
step 201, dividing virtual interrupt codes of all subsystems according to the number segments according to the step 102;
step 202, if the interrupt is taken over, executing an interrupt initialization standard interface, setting the identification value of the subsystem to be 1, and if the interrupt is not taken over, ending the scheme;
step 203, if an interrupt arrives, executing virtual interrupt registration interface processing specification, if not, continuing to wait for the interrupt;
and 204, after the virtual interrupt registration is completed, subsystem virtual interrupt processing is executed.

Claims (3)

1. A method for realizing virtual interrupt standard components of a multi-partition operating system is characterized by comprising the following steps: the standard virtual interrupt assembly specification establishment and the standard virtual interrupt assembly execution are included, wherein the standard virtual interrupt assembly specification establishment comprises the following steps:
step 1, formulating a system virtual interrupt division standard, wherein the system virtual interrupt division standard comprises multiple sub-system division standards according to manufacturers, professional directions and modules;
step 2, the unified planning system divides virtual interrupt codes, and one division standard is selected according to the division principle of the step 1;
step 3, dividing the virtual interrupt codes of the subsystems, and dividing the virtual interrupt codes of each subsystem according to the number segments according to the step 2, wherein the dividing principle is that the number segments cannot be repeated;
step 4, formulating a virtual interrupt initialization standard interface, wherein the virtual interrupt initialization standard interface refers to a unified standard API interface which needs to be executed by a system and an API interface which is common to the system;
step 5, formulating virtual interrupt registration interface processing specifications, defining subsystems to take over virtual interrupt processing specifications according to division standards, defaulting the initial value of each subsystem identification bit to be 0, not taking over virtual interrupt processing, setting the identification bit value to be 1 after taking over virtual interrupt, and registering a virtual interrupt callback routine;
step 6, making a subsystem virtual interrupt processing standard interface according to a dividing subsystem standard, and processing the virtual interrupt according to a standard subsystem API interface format and an API interface parameter;
step 7, arbitrating the generated virtual interrupt subsystem, arbitrating the virtual interrupt processing routine registered in advance when the virtual interrupt responds, and judging which subsystem the generated virtual interrupt belongs to according to the arbitrating result;
step 8, executing the subsystem virtual interrupt processing standard interface, and executing the subsystem virtual interrupt processing standard interface according to the arbitration result in the step 7;
the standard virtual interrupt component performs the steps comprising:
dividing a system virtual interrupt code;
dividing subsystem virtual interrupt codes;
step three, judging whether the subsystem takes over the interrupt;
step four, if take over, carry out the virtual interrupt and initialize the standard interface;
step five, waiting for the interrupt to arrive;
step six, executing virtual interrupt registration interface processing specification;
and step seven, executing the virtual interrupt processing standard interface of the subsystem.
2. The method for implementing virtual interrupt standard components of multi-partition operating system according to claim 1, wherein in step 4, the system-common API interface initialization interface naming rule is as follows: the return type pubSysnameExtVInt (parameter identification bit), wherein the return type is of the int type or other needed type, pub refers to a public interface, sysname refers to a subsystem name, exTVInt refers to extended virtual interrupt initialization, and parameter identification bit refers to whether to take over virtual interrupt identification.
3. The method for implementing the virtual interrupt standard component of the multi-partition operating system according to claim 1, wherein in the step 6, the standard subsystem API interface naming specifications are as follows: the return type is int type or other needed type, sub refers to subsystem call interface, sysname refers to subsystem name, exTVInt refers to extended virtual interrupt, first parameter SysInt refers to system interrupt code, second parameter SubInt refers to subsystem interrupt code, and later parameters are modified according to need.
CN201811472036.4A 2018-12-04 2018-12-04 Method for realizing virtual interrupt standard component of multi-partition operating system Active CN109542610B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811472036.4A CN109542610B (en) 2018-12-04 2018-12-04 Method for realizing virtual interrupt standard component of multi-partition operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811472036.4A CN109542610B (en) 2018-12-04 2018-12-04 Method for realizing virtual interrupt standard component of multi-partition operating system

Publications (2)

Publication Number Publication Date
CN109542610A CN109542610A (en) 2019-03-29
CN109542610B true CN109542610B (en) 2023-06-30

Family

ID=65852870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811472036.4A Active CN109542610B (en) 2018-12-04 2018-12-04 Method for realizing virtual interrupt standard component of multi-partition operating system

Country Status (1)

Country Link
CN (1) CN109542610B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110196764A (en) * 2019-05-09 2019-09-03 中国航空工业集团公司西安航空计算技术研究所 A kind of system calls standard component implementation method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015090195A1 (en) * 2013-12-17 2015-06-25 华为技术有限公司 Method and device for creating example of operating system
CN105404577A (en) * 2015-12-08 2016-03-16 中国航空工业集团公司西安航空计算技术研究所 Time monitoring method for partition operating system based on information sharing processing mechanism

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0297339B1 (en) * 1987-06-12 1996-02-28 BMC Software, Inc. Supervisory method for a computer operating system
US6075938A (en) * 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US20030229794A1 (en) * 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US7549039B2 (en) * 2005-07-29 2009-06-16 Hewlett-Packard Development Company, L.P. Generating an interrupt in a system having plural partitions that share a resource
US8312456B2 (en) * 2008-05-30 2012-11-13 International Business Machines Corporation System and method for optimizing interrupt processing in virtualized environments
US8566492B2 (en) * 2009-12-31 2013-10-22 Intel Corporation Posting interrupts to virtual processors
CN103853597B (en) * 2014-02-21 2017-04-19 北京神舟航天软件技术有限公司 Method for realizing high-frequency data collection of embedded virtual machine platform
CN104461719B (en) * 2014-11-29 2017-09-08 中国航空工业集团公司第六三一研究所 A kind of empty interrupt expansion method towards partition operating system
CN108255591B (en) * 2017-12-07 2021-10-15 中国航空工业集团公司西安航空计算技术研究所 Unified exception handling method for partition operating system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015090195A1 (en) * 2013-12-17 2015-06-25 华为技术有限公司 Method and device for creating example of operating system
CN105404577A (en) * 2015-12-08 2016-03-16 中国航空工业集团公司西安航空计算技术研究所 Time monitoring method for partition operating system based on information sharing processing mechanism

Also Published As

Publication number Publication date
CN109542610A (en) 2019-03-29

Similar Documents

Publication Publication Date Title
US8521929B2 (en) Virtual serial port management system and method
US9792240B2 (en) Method for dynamic configuration of a PCIE slot device for single or multi root ability
US20130166271A1 (en) Simulating and testing avionics
US10452419B2 (en) Device virtualization for containers
CN109495542B (en) Load distribution method based on performance monitoring and terminal equipment
WO2023051505A1 (en) Job solving method and apparatus
CN108737499A (en) server configuration method and device
US10942874B2 (en) Methods and systems that manage fetching of commands by a controller from queues of a host
CN104503932A (en) Method and system for judging master baseboard management controller of multi-mainboard server
US10341253B2 (en) Automatic consolidation of network resources
CN105190539A (en) Method and apparatus to avoid deadlock during instruction scheduling using dynamic port remapping
CN109542610B (en) Method for realizing virtual interrupt standard component of multi-partition operating system
US10402214B2 (en) Device provided script to convert command
US10318312B2 (en) Support of Option-ROM in socket-direct network adapters
CN103024791B (en) Multi-service processing model and multi-service processing method in communication test system
CN107682573B (en) High-concurrency outbound method, system, equipment and storage medium
CN112131011B (en) Method, computing device, and computer-readable storage medium for managing resources
CN107562650B (en) Method and system for mapping physical host to storage system
CN111414363B (en) Parallel heterogeneous method, system, medium and equipment suitable for client data in MySQL
US11144242B2 (en) Distributed storage system
US20200346787A1 (en) Smart localized control node devices and systems for adaptive avionics applications
CN110018906B (en) Scheduling method, server and scheduling system
CN109976976A (en) A kind of heat dissipation is tactful to configure update method, device, terminal and storage medium
CN116775255B (en) Global integration system supporting wide integration scene
CN109962788A (en) Multi-controller dispatching method, device and system and computer readable storage medium

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