CN113918228B - 一种基于多cpu架构的内存文件系统启动方法 - Google Patents
一种基于多cpu架构的内存文件系统启动方法 Download PDFInfo
- Publication number
- CN113918228B CN113918228B CN202111081614.3A CN202111081614A CN113918228B CN 113918228 B CN113918228 B CN 113918228B CN 202111081614 A CN202111081614 A CN 202111081614A CN 113918228 B CN113918228 B CN 113918228B
- Authority
- CN
- China
- Prior art keywords
- file system
- architecture
- cpu architecture
- memory file
- cpu
- 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; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及计算机内存领域,公开了一种基于多CPU架构的内存文件系统启动方法,包括:加载并执行UEFI固件程序;根据UEFI固件程序执行EBC引导程序;根据EBC引导程序加载引导配置文件系统;根据引导配置文件系统获取当前环境的CPU架构A1根据所述CPU架构A1判断使用的架构内核A2并进行加载根据加载的架构内核A2加载通用的Squashfs内存文件系统,并对Squashfs内存文件系统进行挂载;根据通用的Squashfs内存文件系统获取当前环境的CPU架构A3,并获取CPU架构A3的Overlay文件系统;对Overlay文件系统进行加载和挂载,并将加载和挂载后的Overlay文件系统与通用的Squashfs内存文件系统进行合并,获取并运行最终的内存文件系统。本发明用于减少存储空间的开销,同时还能保证多CPU架构下内存文件系统的兼容与统一。
Description
技术领域
本发明涉及计算机内存文件系统技术领域,具体地说,是一种基于多CPU架构的内存文件系统启动方法,用于减少了存储空间的开销,同时还能保证多CPU架构下内存文件系统的兼容与统一。
背景技术
日常工作中对硬件进行测试,通常使用装载内存文件系统的存储介质,并配合引导程序、引导配置文件系统、内核等进行内存文件系统的引导启动。由于硬件的CPU架构种类较多,所以测试时通常需要针对不同的CPU架构装有不同的引导程序、内核、内存文件系统的存储介质,不不具备通用性,会导致前期的准备工作量繁重,且不同的存储介质之间容易出现混乱,不易管理的情况。现有的技术都是通过准备多存储介质,每个存储介质中放置不同的EFI程序、内存文件系统,通过不同的存储介质实现不同CPU架构下的内存文件系统的引导与启动。这导致了前期准备工作量大,且存储介质之间容易出现混乱、不易管理。且对于不同CPU架构的内存文件系统所安装的软件功能是相同的,只是二进制程序的架构不同,如果对每个CPU架构都单独准备内存文件系统会浪费较大的存储空间。
因此,亟需一种技术方案以解决上述问题,能够在保证多CPU架构下内存文件系统的兼容与统一的前提下,减少存储空间的开销,增强多架构下内存文件系统引导启动的兼容性与统一性,降低了用于启动内存文件系统的存储介质的管理难度。
发明内容
本发明的目的在于提供一种基于多CPU架构的内存文件系统启动方法,实现增强多架构下内存文件系统引导启动的兼容性与统一性;降低了用于启动内存文件系统的存储介质的管理难度的功能,具有降低了用于启动内存文件系统的存储介质的管理难度的效果。
本发明通过下述技术方案实现:一种基于多CPU架构的内存文件系统启动方法,包括以下步骤:
步骤S1.通过上电加载并执行UEFI固件程序;
步骤S2.根据UEFI固件程序执行EBC引导程序;
步骤S3.根据EBC引导程序加载引导配置文件系统;
步骤S4.根据引导配置文件系统获取当前环境的CPU架构A1;
步骤S5.根据所述CPU架构A1判断使用的架构内核A2并进行加载;
步骤S6.根据加载的架构内核A2加载通用的Squashfs内存文件系统,并对Squashfs内存文件系统进行挂载;
步骤S7.根据通用的Squashfs内存文件系统获取当前环境的CPU架构A3,并获取CPU架构A3的Overlay文件系统;
步骤S8.对Overlay文件系统进行加载和挂载,并将加载和挂载后的Overlay文件系统与通用的Squashfs内存文件系统进行合并,获取并运行最终的内存文件系统。
在本技术方案中,本发明采用EBC引导程序,较之传统的EFI引导程序,具有多CPU架构通用性;且内存文件系统使用Squashfs文件系统和Overlay文件系统的组合,将非二进制文件系统、二进制文件系统进行分离,Squashfs文件系统作为基础内存文件系统根据架构的不同挂载不同的Overlay文件系统,不仅减少了存储空间的开销,而且保证了多CPU架构下内存文件系统的兼容与统一。不同CPU架构UEFI固件程序能够运行同一份EBC程序,因此通过EBC在不同CPU架构硬件的BootLoader阶段做到了统一、兼容。
引导配置文件系统的grub_cpu环境变量能够判断此时正在运行的CPU架构,根据grub_cpu值的不同可以加载不同的引导菜单,从而运行不同架构的内核。
Squashfs文件系统在本发明中作为底层的内存文件系统,能够被内核加载到内存中并进行根文件系统的挂载,存放非二进制文件系统,从而实现多CPU架构的兼容与通用。
Overlay文件系统在本发明中作为顶层的内存文件系统,存放二进制文件系统,每个CPU架构对应一个Overlay文件系统。在Squashfs文件系统接收内核参数挂载指定overlay文件系统后,对应的Overlay文件系统会挂载在Squashfs文件系统之上,从而组合成完整的内存文件系统。
名词解释:
EBC:EFI Byte Code(EFI字节码)。EFI Byte Code是一组专用于EFI驱动程序的虚拟机器语言,需要在UEFI驱动程序运行环境被解释运行。而现有各CPU架构主板上的UEFI固件程序均参照UEFI标准实现,因此都支持EBC的解释运行。
Squashfs文件系统:是一套供Linux内核使用的GPL开源只读压缩文件系统。能够为文件系统内的文件系统、inode及目录结构进行压缩,并支持最大1024千字节的区段,以提供更大的压缩比。编译了Squashfs模块的Linux内核能够识别并挂载Squashfs文件系统。
Overlay文件系统:Overlayfs是一种堆叠文件系统,它依赖并建立在其它的文件系统之上,并不直接参与磁盘空间结构的划分,仅仅将原来底层文件系统中不同的目录进行“合并”,然后向用户呈现。因此对于用户来说,它所见到的overlay文件系统根目录下的内容就来自挂载时所指定的不同目录的“合集”。
为了更好地实现本发明,进一步地,步骤S2包括: 步骤S2.1. 将不同架构的UEFI程序反编译成C语言源代码;
步骤S2.2.消除C语言源代码中常量的运算,并添加针对不同架构定义的宏;
步骤S2.3.使用编译器将消除常量后的C语言源代码编译成EBC引导程序。
在本技术方案中,在编写可能移植到EBC(EFI字节码)的驱动程序时,将UEFI驱动程序转换为EBC所需的任务包括:将汇编语言源代码移植到C语言源代码,将C++语言源移植到C语言源,消除使用浮动类型,将浮点数学运算转换为整数数学运算,消除在需要常量的语句中使用sizeof(),避免自然整数和固定大小整数之间的算术运算和比较。一些特定的组合会产生意想不到的结果。
为了更好地实现本发明,进一步地,步骤S3中配置文件系统包括引导启动内存文件系统的菜单选项,所述菜单选项包括内存文件系统和当前环境的架构内核。
在本技术方案中,EBC引导程序加载引导配置文件,引导配置文件中描述了引导启动的菜单选项,每个菜单项中包括了内核以及内存文件系统。
为了更好地实现本发明,进一步地,步骤S4包括:
引导配置文件通过所述菜单选项中的grub_cpu环境变量获取当前环境的CPU架构A1,并对CPU架构A1进行判断。
在本技术方案中,对CPU架构A1的判断能够更好的将内存文件系统中的二进制文件、非二进制文件分离,更有助于后续的封装进Qverlay文件系统和Squashfs文件系统。
为了更好地实现本发明,进一步地,步骤S5包括:
若grub_pc的值为amd64架构,选择amd64架构内核A2,并进行加载;
若grub_pc的值不为amd64架构,选择对应的架构内核A2,并进行加载。
在本技术方案中,若grub_pc的值为其他架构(arm64、mips64el等),则选择其他架构的内核并加载,由于架构较多,这里没有将每一个架构单独列出分支。
为了更好地实现本发明,进一步地,步骤S6包括:所述根文件系统中的文件为非二进制文件。
在本技术方案中,内存文件系统由两部分组成:通用的、存放非二进制文件的Squashfs文件系统;CPU架构相关、存放二进制文件的Overlay文件系统。通过两部分的组合挂载,实现最终的内存文件系统。
为了更好地实现本发明,进一步地,步骤S7包括:Squashfs文件系统通过内核参数或环境变量获取当前环境的CPU架构A3。
在本技术方案中,如果CPU架构A3为amd64架构,则加载amd64架构的overlay文件系统并进行overlay层的挂载,与squashfs文件系统合并为内存文件系统【overlay文件系统中为二进制文件,如果CPU架构A3为其他架构,则选择其他架构的内核并加载,由于架构较多,这里没有将每一个架构单独列出分支。
为了更好地实现本发明,进一步地,步骤S8包括:根据获取的CPU架构A3,加载CPU架构A3对应Overlay文件系统,并进行Overlay层的挂载。
在本技术方案中,Squashfs文件系统与Overlay文件系统合并后的文件系统即为最终完整的内存文件系统,此时内存文件系统已可正常运行。
为了更好地实现本发明,进一步地,步骤S8还包括:所述加载和挂载后的Overlay文件系统中的文件为二进制文件。
在本技术方案中,通过存储非二进制文件的Squashfs文件系统与存储二进制文件的Overlay文件系统的合并,实现内存文件系统对于多CPU架构的统一与兼容。
本发明与现有技术相比,具有以下优点及有益效果:
(1)本发明能够使用单一的存储介质在不同CPU架构进行内存文件系统的引导与启动,不仅方便快捷、而且降低的存储介质的管理难度;
(2)本发明使用EBC而不是EFI作为UEFI固件程序的引导程序,增加的兼容性与通用性;
(3)本发明将内存文件系统中的二进制文件系统、非二进制文件系统分离,分别封装进Overlay文件系统和Squashfs文件系统。其中包含非二进制文件系统的Squashfs文件系统作为基础内存文件系统,所有CPU架构通用,从而实现了不同CPU架构下的兼容与统一,并且减少了存储的开销。
附图说明
本发明结合下面附图和实施例做进一步说明,本发明所有构思创新应视为所公开内容和本发明保护范围。
图1为本发明所提供的的一种基于多CPU架构的内存文件系统启动方法的流程图。
具体实施方式
实施例1:
本实施例的一种基于多CPU架构的内存文件系统启动方法,如图1所示,包括以下步骤:
步骤S1.通过上电加载并执行UEFI固件程序;
步骤S2.根据UEFI固件程序执行EBC引导程序;
步骤S3.根据EBC引导程序加载引导配置文件系统;
步骤S4.根据引导配置文件系统获取当前环境的CPU架构A1;
步骤S5.根据所述CPU架构A1判断使用的架构内核A2并进行加载;
步骤S6.根据加载的架构内核A2加载通用的Squashfs内存文件系统,并对Squashfs内存文件系统进行挂载;
步骤S7.根据通用的Squashfs内存文件系统获取当前环境的CPU架构A3,并获取CPU架构A3的Overlay文件系统;
步骤S8.对Overlay文件系统进行加载和挂载,并将加载和挂载后的Overlay文件系统与通用的Squashfs内存文件系统进行合并,获取并运行最终的内存文件系统。
在本实施例中,本发明采用EBC引导程序,较之传统的EFI引导程序,具有多CPU架构通用性;且内存文件系统使用Squashfs文件系统和Overlay文件系统的组合,将非二进制文件系统、二进制文件系统进行分离,Squashfs文件系统作为基础内存文件系统根据架构的不同挂载不同的Overlay文件系统,不仅减少了存储空间的开销,而且保证了多CPU架构下内存文件系统的兼容与统一。不同CPU架构UEFI固件程序能够运行同一份EBC程序,因此通过EBC在不同CPU架构硬件的BootLoader阶段做到了统一、兼容。
引导配置文件系统的grub_cpu环境变量能够判断此时正在运行的CPU架构,根据grub_cpu值的不同可以加载不同的引导菜单,从而运行不同架构的内核。
实施例2:
本实施例在实施例1的基础上做进一步优化,在本实施例中的具体操作为:将不同架构的kernel.img EFI程序反编译成C语言源代码;在C语言源代码中消除浮点类型的使用,将浮点运算转换为整数运算;消除C语言源代码中的常量的sizeof()运算,避免可变长的整数与固定大小的整数之间进行运算和比较;在C语言源代码中添加针对不同架构定义的宏,使用宏判断对不同架构进行差异化执行;使用编译器将C语言源代码编译成EBC程序。
此外,在编写可能移植到EBC(EFI字节码)的驱动程序时,将UEFI驱动程序转换为EBC所需的任务包括:将汇编语言源代码移植到C语言源代码,将C++语言源移植到C语言源,消除使用浮动类型,将浮点数学运算转换为整数数学运算,消除在需要常量的语句中使用sizeof(),避免自然整数和固定大小整数之间的算术运算和比较。一些特定的组合会产生意想不到的结果。
本实施例的其他部分与实施例1相同,故不再赘述。
实施例3:
本实施例在上述实施例1的基础上做进一步优化,在本实施例中,EBC引导程序加载引导配置文件,引导配置文件中描述了引导启动的菜单选项,每个菜单项中包括了内核以及内存文件系统。
本实施例的其他部分与上述实施例1相同,故不再赘述。
实施例4:
本实施例在上述实施例1-3任一项的基础上做进一步优化,在本实施例中,引导配置文件通过所述菜单选项中的grub_cpu环境变量获取当前环境的CPU架构A1,并对CPU架构A1进行判断,对CPU架构A1的判断能够更好的将内存文件系统中的二进制文件、非二进制文件分离,更有助于后续的封装进Qverlay文件系统和Squashfs文件系统。
本实施例的其他部分与上述实施例1-3任一项相同,故不再赘述。
实施例5:
本实施例在上述实施例1-4任一项基础上做进一步优化,在本实施例中,若grub_pc的值为其他架构(arm64、mips64el等),则选择其他架构的内核并加载,由于架构较多,这里没有将每一个架构单独列出分支。
本实施例的其他部分与上述实施例1-4任一项相同,故不再赘述。
实施例6:
本实施例在上述实施例1的基础上做进一步优化,在本实施例中,在本技术方案中,内存文件系统由两部分组成:通用的、存放非二进制文件的Squashfs文件系统;CPU架构相关、存放二进制文件的Overlay文件系统。通过两部分的组合挂载,实现最终的内存文件系统。
本实施例的其他部分与上述实施例1相同,故不再赘述。
实施例7:
本实施例在上述实施例1的基础上做进一步优化,在本实施例中,如果CPU架构A3为amd64架构,则加载amd64架构的overlay文件系统并进行overlay层的挂载,与squashfs文件系统合并为内存文件系统【overlay文件系统中为二进制文件,如果CPU架构A3为其他架构,则选择其他架构的内核并加载,由于架构较多,这里没有将每一个架构单独列出分支。
本实施例的其他部分与上述实施例1相同,故不再赘述。
实施例8:
本实施例在上述实施例1的基础上做进一步优化,在本实施例中,Squashfs文件系统与Overlay文件系统合并后的文件系统即为最终完整的内存文件系统,此时内存文件系统已可正常运行。
本实施例的其他部分与上述实施例1相同,故不再赘述。
实施例9:
本实施例在上述实施例1的基础上做进一步优化,在本实施例中,通过存储非二进制文件的Squashfs文件系统与存储二进制文件的Overlay文件系统的合并,实现内存文件系统对于多CPU架构的统一与兼容。
本实施例的其他部分与上述实施例1相同,故不再赘述。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化,均落入本发明的保护范围之内。
Claims (9)
1.一种基于多CPU架构的内存文件系统启动方法,其特征在于,包括以下步骤:
步骤S1.通过上电加载并执行UEFI固件程序;
步骤S2.根据UEFI固件程序执行EBC引导程序;
步骤S3.根据EBC引导程序加载引导配置文件系统;
步骤S4.根据引导配置文件系统获取当前环境的CPU架构A1;
步骤S5.根据所述CPU架构A1判断使用的架构内核A2并进行加载;
步骤S6.根据加载的架构内核A2加载通用的Squashfs内存文件系统,并对Squashfs内存文件系统进行挂载;
步骤S7.根据通用的Squashfs内存文件系统获取当前环境的CPU架构A3,并获取CPU架构A3的Overlay文件系统;
步骤S8.对Overlay文件系统进行加载和挂载,并将加载和挂载后的Overlay文件系统与通用的Squashfs内存文件系统进行合并,获取并运行最终的内存文件系统。
2.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S2包括:
步骤S2.1.将不同架构的UEFI程序反编译成C语言源代码;
步骤S2.2.消除C语言源代码中常量的运算,并添加针对不同架构定义的宏;
步骤S2.3.使用编译器将消除常量后的C语言源代码编译成EBC引导程序。
3.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S3中配置文件系统包括引导启动内存文件系统的菜单选项,所述菜单选项包括内存文件系统和当前环境的架构内核。
4.根据权利要求3所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S4包括:引导配置文件通过所述菜单选项中的grub_cpu环境变量获取当前环境的CPU架构A1,并对CPU架构A1进行判断。
5.根据权利要求1-4任一项所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S5包括:若grub_pc的值为amd64架构,选择amd64架构内核A2,并进行加载;若grub_pc的值不为amd64架构,选择对应的架构内核A2,并进行加载。
6.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S6包括:根文件系统中的文件为非二进制文件。
7.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S7包括:Squashfs文件系统通过内核参数或环境变量获取当前环境的CPU架构A3。
8.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S8包括:根据获取的CPU架构A3,加载CPU架构A3对应Overlay文件系统,并进行Overlay层的挂载。
9.根据权利要求1所述的一种基于多CPU架构的内存文件系统启动方法,其特征在于,所述步骤S8还包括: 所述加载和挂载后的Overlay文件系统中的文件为二进制文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081614.3A CN113918228B (zh) | 2021-09-15 | 2021-09-15 | 一种基于多cpu架构的内存文件系统启动方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081614.3A CN113918228B (zh) | 2021-09-15 | 2021-09-15 | 一种基于多cpu架构的内存文件系统启动方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113918228A CN113918228A (zh) | 2022-01-11 |
CN113918228B true CN113918228B (zh) | 2023-10-13 |
Family
ID=79235157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111081614.3A Active CN113918228B (zh) | 2021-09-15 | 2021-09-15 | 一种基于多cpu架构的内存文件系统启动方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918228B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140645A (zh) * | 2007-11-05 | 2008-03-12 | 陆航程 | 基于物联网的税控方法及用于税控的epc、ebc物联网和机具 |
CN101729573A (zh) * | 2009-12-18 | 2010-06-09 | 四川长虹电器股份有限公司 | 网络入侵检测的动态负载均衡方法 |
CN105378689A (zh) * | 2013-06-14 | 2016-03-02 | 惠普发展公司,有限责任合伙企业 | 统一可扩展固件接口(uefi)驱动器和协议 |
CN105556461A (zh) * | 2013-10-24 | 2016-05-04 | 英特尔公司 | 用于预os镜像重写以提供跨架构支持、安全性自省和性能优化的技术 |
CN105579953A (zh) * | 2013-10-29 | 2016-05-11 | 英特尔公司 | 灵活引导程序代码架构 |
CN106598652A (zh) * | 2016-11-25 | 2017-04-26 | 湖南国科微电子股份有限公司 | FPGA环境下快速启动Linux内核的系统和启动方法 |
CN110018859A (zh) * | 2019-04-15 | 2019-07-16 | 珠海全志科技股份有限公司 | 设备启动方法、装置、计算机设备和存储介质 |
CN110413230A (zh) * | 2019-07-12 | 2019-11-05 | 湖南建工集团有限公司 | 一种嵌入式系统构建方法及存储介质 |
CN111966423A (zh) * | 2020-07-24 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实现内存操作系统的方法和设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7305544B2 (en) * | 2004-12-10 | 2007-12-04 | Intel Corporation | Interleaved boot block to support multiple processor architectures and method of use |
US20200356358A1 (en) * | 2019-05-07 | 2020-11-12 | Dell Products L.P. | Systems and methods for incrementally and dynamically updating firmware |
-
2021
- 2021-09-15 CN CN202111081614.3A patent/CN113918228B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140645A (zh) * | 2007-11-05 | 2008-03-12 | 陆航程 | 基于物联网的税控方法及用于税控的epc、ebc物联网和机具 |
CN101729573A (zh) * | 2009-12-18 | 2010-06-09 | 四川长虹电器股份有限公司 | 网络入侵检测的动态负载均衡方法 |
CN105378689A (zh) * | 2013-06-14 | 2016-03-02 | 惠普发展公司,有限责任合伙企业 | 统一可扩展固件接口(uefi)驱动器和协议 |
CN105556461A (zh) * | 2013-10-24 | 2016-05-04 | 英特尔公司 | 用于预os镜像重写以提供跨架构支持、安全性自省和性能优化的技术 |
CN105579953A (zh) * | 2013-10-29 | 2016-05-11 | 英特尔公司 | 灵活引导程序代码架构 |
CN106598652A (zh) * | 2016-11-25 | 2017-04-26 | 湖南国科微电子股份有限公司 | FPGA环境下快速启动Linux内核的系统和启动方法 |
CN110018859A (zh) * | 2019-04-15 | 2019-07-16 | 珠海全志科技股份有限公司 | 设备启动方法、装置、计算机设备和存储介质 |
CN110413230A (zh) * | 2019-07-12 | 2019-11-05 | 湖南建工集团有限公司 | 一种嵌入式系统构建方法及存储介质 |
CN111966423A (zh) * | 2020-07-24 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实现内存操作系统的方法和设备 |
Non-Patent Citations (1)
Title |
---|
基于虚拟机监控技术的可信虚拟域;邢彬等;《信息安全学报》;第1卷(第1期);75-94 * |
Also Published As
Publication number | Publication date |
---|---|
CN113918228A (zh) | 2022-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6381737B1 (en) | Automatic adapter/stub generator | |
JP3349417B2 (ja) | ホスト機械コードのアプリケーションをインストールするシステム | |
EP3180734B1 (en) | Restrictive access control for modular reflection | |
US7340730B2 (en) | On demand, network accessible, run time compile server | |
CN102053831B (zh) | 一种Linux操作系统的定制方法及系统 | |
JPH10269082A (ja) | アーキテクチャ独立バイナリープログラムを直接実行するシステム、方法及び装置 | |
CN109739508B (zh) | 源代码编译方法、装置、系统及存储介质 | |
KR20130111220A (ko) | 컴퓨팅 플랫폼에서의 작업부하의 분배 및 병렬화 | |
US10248409B1 (en) | Limiting the effects of source code patches on corresponding native-code patches | |
KR101407629B1 (ko) | 자바 변환 가속 장치 및 방법 | |
Altman | Undocumented secrets of MATLAB-Java programming | |
CN112783558B (zh) | 一种加快Linux内核启动的自解压阶段的方法 | |
CN111768183A (zh) | 一种执行智能合约的方法、区块链节点和存储介质 | |
CN113918228B (zh) | 一种基于多cpu架构的内存文件系统启动方法 | |
CN111770202B (zh) | 一种执行智能合约的方法、区块链节点和存储介质 | |
CN100465894C (zh) | 一种Java Processor启动时类装载方法 | |
US6922735B2 (en) | Management of co-processor information by integrating non-program information with program information | |
CN115794259B (zh) | 通过acpi生成设备树的方法 | |
CA2678095C (en) | Object level compatibility and class resizing utilizing semantic values | |
EP1481320B1 (en) | Two tier clusters for representation of objects in java programming environments | |
CN114398102B (zh) | 一种应用程序包生成方法、装置、编译服务器及计算机可读存储介质 | |
CA2719661A1 (en) | Programmatic dispatch to functions with matching linkage | |
Alliet et al. | Complete translation of unsafe native code to safe bytecode | |
WO2001057654A2 (en) | Preprocessing of interfaces to allow fast call of native elements | |
EP1889158B1 (en) | Method and apparatus for combined execution of native code and target code during program code conversion |
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 |