Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Implementation method of cross-platform ABI compatible C + + component framework

A component framework and implementation method technology, applied in the computer field, can solve problems such as increased workload, high complexity, and difficulty in pure C++ language, and achieve the effect of improving work efficiency

Active Publication Date: 2020-12-29
第六镜科技(成都)有限公司
View PDF5 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] However, the above two methods still have the following problems: First, the complexity is high. In order to avoid ABI compatibility issues, Windows requires users to use complex COM frameworks, so that standard C++ types cannot be used as external interfaces, and C++ is lost. part of language
The second is non-cross-platform. The existing solutions adopt their own platform-related solutions for mainstream systems such as the Windows operating system, resulting in the need to write external interfaces for the same class library in different operating systems, doubling the workload
Third, the coupling of the operating system is strong. The existing solutions must use a large number of Windows system APIs in the Windows operating system. It is difficult to use pure C++ language to realize all functions, which is not conducive to the development of open source projects and cross-platform projects.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Implementation method of cross-platform ABI compatible C + + component framework
  • Implementation method of cross-platform ABI compatible C + + component framework
  • Implementation method of cross-platform ABI compatible C + + component framework

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0047] The implementation mode of the present invention is illustrated by specific specific examples below, and those who are familiar with this technology can easily understand other advantages and effects of the present invention from the contents disclosed in this description. Obviously, the described embodiments are a part of the present invention. , but not all examples. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.

[0048] see figure 1 A flow chart of an implementation method of a cross-platform ABI compatible C++ component framework provided by an embodiment of the present invention, including steps:

[0049] Based on the generic ABI interface type, the underlying proprietary ABI interface type system is constructed; wherein, the ABI interface type includes a pure virtual function, and the parameters of th...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

The embodiment of the invention provides an implementation method of a cross-platform ABI compatible C + + component framework. According to the method, the cross-platform (i.e., irrelevant to an operating system) ABI compatible component framework implemented by adopting modern C + + is provided. The ABI compatible component framework is based on an ABI interface type with stable layout, a proprietary type system is constructed, then a corresponding relation between the ABI interface type in the proprietary system and an implementation function is constructed, and according to the corresponding relation, a compiler in an operating system calls the function of the ABI interface type according to the corresponding relation when compiling a C + + program. The ABI interface type has stability, and a bottom layer system is constructed in the service life and then associated with functions in a C + + program, so that layouts in executable files generated by compilers of different versions are not changed, namely the layouts are compatible with the executable files.

Description

technical field [0001] The embodiment of the present invention relates to the field of computer technology, in particular to a method for realizing a cross-platform ABI compatible C++ component framework. Background technique [0002] C++'s ABI (Application Binary Interface - C++ Application Binary Interface) defines the low-level interface specification for calls between the C++ language and the operating system. It describes a data type's memory layout, exported symbols, and calling convention. ABI compatibility means that two different versions of C++ compilers compile the same code, and the generated executable files are compatible with each other, and can be correctly called by a third party without recompiling the source code in a third-party configuration environment. Because the C++ standard library implementations provided by major manufacturers are almost incompatible, the ABIs of executable files generated by compiling the same code with different manufacturers a...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Applications(China)
IPC IPC(8): G06F8/36G06F8/41
CPCG06F8/36G06F8/41Y02D10/00
Inventor 张铭雨叶雨桐
Owner 第六镜科技(成都)有限公司
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products