CN115495201A - 用于边缘计算的嵌入式抽象虚拟机系统 - Google Patents
用于边缘计算的嵌入式抽象虚拟机系统 Download PDFInfo
- Publication number
- CN115495201A CN115495201A CN202211390456.4A CN202211390456A CN115495201A CN 115495201 A CN115495201 A CN 115495201A CN 202211390456 A CN202211390456 A CN 202211390456A CN 115495201 A CN115495201 A CN 115495201A
- Authority
- CN
- China
- Prior art keywords
- layer
- embedded
- platform
- processor
- virtual
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 230000002093 peripheral effect Effects 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 5
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 3
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了用于边缘计算的嵌入式抽象虚拟机系统,涉及虚拟机技术领域,包括将嵌入式虚拟机的体系结构抽象为为基础结构、应用横切层两大部分;基础结构分为处理器层、虚拟硬件平台层、平台抽象层、逻辑程序层,处理器层通过抽象嵌入式系统的底层处理器实现;虚拟硬件平台层抽象出电路板和处理器层等底层硬件,平台抽象层将底层硬件和操作系统组合中抽象出逻辑程序层。本发明中,分层设计提供系统稳定性和弹性,也减少开发人员需要记住的信息量,本发明提高了开发人员的生产力并提高新软件的质量、可靠性和稳健性。
Description
技术领域
本发明属于虚拟机技术领域,具体涉及用于边缘计算的嵌入式抽象虚拟机系统。
背景技术
目前,每个嵌入式系统设计都是定制的,交付的嵌入式设备都建立在各系统供应商的SDK之上,固件应用程序中缺乏抽象层,导致程序与底层处理器、电路板和电子组件紧密的耦合在一起。当开发者需要更新固件以适配新的处理器或电子元器件时,将产生的固件程序更改是灾难性的。整个应用程序通常需要重写并移植新的供应商SDK和新的RTOS。随着芯片定时报废以及系统周围供应链波动性的增加,我们需持续投入大量资源将固件程序与底层硬件脱钩。
保持嵌入式系统软件的可移植性、可重用性最困难的方面是对底层硬件平台的依赖。每个嵌入式系统在处理器和外围设备的组合方面都是独一无二的。在开发嵌入式软件时,如果不使用抽象层,应用程序将与处理器、电路板和 RTOS 耦合。在许多情况下,迁移到新的处理器或电路板会触发大规模的软件重写和计划延迟。
发明内容
本发明的目的是为了解决现有技术中存在的缺点,而提出的用于边缘计算的嵌入式抽象虚拟机系统。
为了实现上述目的,本发明采用了如下技术方案:
设计用于边缘计算的嵌入式抽象虚拟机系统,包括:
将嵌入式虚拟机的体系结构抽象为为基础结构、应用横切层两大部分;
基础结构分为处理器层、虚拟硬件平台层、平台抽象层、逻辑程序层;
处理器层通过抽象嵌入式系统的底层处理器实现;
虚拟硬件平台层抽象出电路板和处理器层等底层硬件;虚拟硬件平台将应用程序与硬件细节结合,将特定与电路板的功能封装在通用驱动程序和通用API中,允许应用程序与底层硬件更改分离;
平台抽象层将底层硬件和操作系统组合中抽象出逻辑程序层;平台抽象层代表一组提供特定功能和职责的平台接口,涵盖底层硬件和RTOS提供的功能,同时配置逻辑程序所需的底层硬件和逻辑组件之间的特定连接。
进一步的,每一个平台抽象层包含一个处理器,并负责用户对处理器及其外围设备的期望配置。
进一步的,所述硬件平台层由驱动程序、HAL驱动程序、驱动程序注册表、寄存器、虚拟硬件平台组成。
进一步的,所述虚拟平台层包括启动排序器、C/C++运行时库、事件调度中心、计时器管理、虚拟平台。
进一步的,所述驱动程序定义基本驱动程序接口和默认驱动程序类型,并为GPIO、I2C、LED、SPI、系统时钟、计时器等通信总线驱动程序提供基本接口。
进一步的,基本驱动程序接口定义start、stop、restart、started等方法并返回驱动程序的注册类型id。
进一步的,处理器层由架构结构和引导处理程序组成;
处理器层的引导处理程序,在各个嵌入式系统通电时,嵌入式虚拟机的第一个控制上下文为处理器,每个处理器设定特定的启动顺序、启动要求和适用的限制;
处理器特定的启动代码再讲控制权移交到硬件平台层启动序列器已继续启动过程之前的执行。
进一步的,处理器层的架构接口包括PIC底层架构、AVR底层架构、MIPS底层架构、ARMv8底层架构。
进一步的,平台抽象层代表一组提供特定功能和职责的平台接口,涵盖底层硬件和RTOS提供的功能,同时配置逻辑程序所需的底层硬件和逻辑组件之间的特定连接;
平台抽象层的提供基础的抽象接口,用户可扩展平台抽象并在多个平台实现上重用,基础的底层抽象包含虚拟实时操作系统、虚拟驱动模型、语言运行时三大关键部分。
进一步的,虚拟实时操作系统化是对于底层RTOS的抽象,由底层RTOS实现标准化接口的接入配置;
虚拟驱动模型构建虚拟机系统的通用驱动程序接口的定义和一个DriverRegistry驱动注册对象用于访问平台抽象层上可用的驱动程序,而无需耦合到特定的底层设备。
本发明提出的用于边缘计算的嵌入式抽象虚拟机系统,有益效果在于:
(1)、本发明提高了开发人员的生产力并提高新软件的质量、可靠性和稳健性。
(2)、分层设计提供系统稳定性和弹性,也减少开发人员需要记住的信息量。
(3)、构建嵌入式产品的公司可以专注于其独特的应用程序功能和核心业务价值,而不是花时间为新平台重建基础设施。公司和开发人员都受益于提高的生产力、更短的代码编译测试周期以及从硬件计划异步开发固件和驱动程序的能力。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是本发明的嵌入式抽象虚拟机的启动顺序图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。这些实施例仅用于说明本发明而不用于限制本发明的范围。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设有”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
现结合说明书附图,详细说明本发明的结构特点。
参见图1,用于边缘计算的嵌入式抽象虚拟机系统,包括:
将嵌入式虚拟机的体系结构抽象为为基础结构、应用横切层两大部分。
基础结构分为处理器层、虚拟硬件平台层、平台抽象层、逻辑程序层。
处理器层通过抽象嵌入式系统的底层处理器实现。
虚拟硬件平台层抽象出电路板和处理器层等底层硬件;虚拟硬件平台将应用程序与硬件细节结合,将特定与电路板的功能封装在通用驱动程序和通用API中,允许应用程序与底层硬件更改分离。
平台抽象层将底层硬件和操作系统组合中抽象出逻辑程序层;平台抽象层代表一组提供特定功能和职责的平台接口,涵盖底层硬件和RTOS提供的功能,同时配置逻辑程序所需的底层硬件和逻辑组件之间的特定连接。
具体的,在本实施方式中,处理器层包含应用虚拟处理器架构和虚拟处理器。虚拟处理器架构在没有MMU的架构上提供具有默认直通实现的虚拟内存管理单元接口,同时在没有缓存的架构上提供具有默认直通实现的虚拟缓存接口,该架构由多个处理器共享,例如大量的Cortex-M设备等。
虚拟处理器架构提供interruptsEnable、interruptsDisable、memoryBarrier、instructionBarrier等解耦的4个抽象方法,由开发者通过CRTP继承实现自身的对应的处理器逻辑,以访问其功能。
虚拟处理器提供一个抽象层来与底层处理器接口,每个处理器实现都有一个头文件,实现虚函数、提供可选可选扩展、声明常量已经定义和声明它提供的外围设备。虚拟处理器包含earlyInitHook、init、reset等3个方法,其中earlyInitHook方法在调用C运行时设置函数之前运行,用于早期初始化任何需要执行的超早期代码,例如DRAM可能需要在启动过程重新定位之前进行初始化内存到它在内存中的正确位置。init和reset方法分别用户初始化处理器和进行程序的软重置,无需执行完整的电源循环,这两个函数由外围设备实现。
硬件平台层由驱动程序、HAL驱动程序、驱动程序注册表、寄存器、虚拟硬件平台等5个部分组成。驱动程定义基本驱动程序接口和默认驱动程序类型,并为GPIO、I2C、LED、SPI、系统时钟、计时器等通信总线驱动程序提供基本接口。
基本驱动程序接口定义start、stop、restart、started等方法并返回驱动程序的注册类型id。
通信总线基本接口包含commBus的构造函数初始化和使用波特率初始化通信总线状态的构造方法。提供transfer方法启动跨通信总线的信息传输,transfer方法传递的函数应该处理读、写和读写操作,返回总线传输的状态,派生类也可以支持其他操作类。提供badurate方法用来为总线配置使用新的波特率,由于每个通信中线驱动程序不同,所有将波特率的更新请求转发到派生类。提供busStatus获取当前总线状态。提供callback方法处理回调,通过推送到调度线程或通过在同一个控制线程上直接调用回调。其中派生通信类需实现传输和波特率更新,派生通信类覆盖transfer方法来处理特定的每个设备的传输操作,为入队操作或使用AO模型的驱动程序传入回调,基类会处理回调,因此无需但因调用来自客户端驱动程序的回调。
GPIO驱动实现包含默认构造函数并返回GPIO驱动类型id,提供get、set方法对GPIO引脚状态进行logic 1和logic 0的设置,同时实现toggle方法用以切换引脚状态,将引脚状态从高变地,或从低变高。
I2C驱动实现包含包含默认构造函数初始化I2C主设备,提供pullup和sweep方法用以执行I2C总线扫描以识别活动的I2C设备地址,并将ACK存储在列表中,通过callback回调返回给调用者。
使用LED驱动器类型的主要方法是on、off、toggle方法,用来控制LED等的打开和关闭,并使用toggle方法切换LED灯的切换和亮起。
SPI通信总线是全双工的,总是同时发送和接收,驱动的TX 操作涉及一个有效的tx_buffer指针,其中rx_buffer设置为nullptr,RX操作涉及一个有效的rx_buffer指针,其中tx_buffer设置为nullptr,当tx_buffer设置为nullptf时,驱动程序输出空字节。提供sort和mode方法分别设置SPI总线的字节序和 SPI总线模式。
HAL驱动程序为处理器外围驱动程序提供通用功能的驱动程序概念的扩展,包括终端:外围驱动程序需要启用、禁用终端,以及从终端上下文调用回调。这些中断通过IRQ队列处理。
DriverRegistry驱动注册对象实现驱动程序注册表,提供一个通用的DriverRegistry接口,支持静态和动态内存分配方式。无论是动态内存还是静态内存使用是在编译时由模板参数确定的。下面提供了两个方便的定义:DynamicDriverRegistry 和StaticDriverRegistry<>这些类型应该用于为开发者的的platform而不是直接使用DriverRegistry。每个平台和程序只能定义一个DriverRegistry。DriverRegistry提供add、remove、find、finAll等驱动程序的注册、注销和按名称执行驱动程序查找。如果找到驱动程序,则为该驱动程序的 DriverBase对象将返回给开发者。如果没有找到驱动程序,将返回一个空对象。
虚拟硬件平台VirtualHardwarePlatformBase利用中介者模式来封装处理器和设备驱动程序的交互,协调底层处理器和外围设备的配置。VirtualHardwarePlatformBase包含设备驱动程序初始化代码,并提供必要的板级接口,启动顺序有init()函数执行控制,驱动程序按照平台规定的正确顺序配置和启动。VirtualHardwarePlatformBase提供earlyInitHook、initProcessor来初始化处理器和执行处理器初始化之前的前置执行。通过soft_reset、hard_reset、shutdown方法执行系统复位、硬件复位、系统的关闭操作。
虚拟平台层包含启动排序器、C/C++运行时库、事件调度中心、计时器管理、虚拟平台组成。
启动排序器在处理器的初始设置要求完成后,虚拟处理器调用引导序列器。由引导序列器调用C/C++运行时库启动。引导序列器BootSequencer调用虚拟平台中函数完成其自身的进程main(),将控制权交给客户端应用程序。C和C++应用程序需要在进入函数之前进行内存重定位、零初始化和调用静态构造main()函数。同时虚拟平台应允许用户在系统处于可用状态是实现软件逻辑,在之后正确初始化main()。BootSequencer应利用策略模式来允许用户重新定义引导过程。
事件调度中心EventCenter提供用于订阅事件和发布事件的汇聚点。基于事件的对象可以使用观察者模式,允许消费者为特定时间注册回调。对于集中式事件,必须有一个事件来源,消费者可以订阅和发布通知。事件调度中心采用事件驱动架构,分别有事件监听器、事件订阅者2种实现方法。事件监听器仅对一个事件做出反应,例如UserRegisteredEvent需有一个UserRegisteredEventListener监听器来保持较小并专注于对特定时间做出反应的单一责任。事件订阅者与事件监听器不同,需对多个事件作出反应,且不是临时使用即销毁的,应遵守单一责任原则。例如可以让一个RequestTransactionSubscriber的事件订阅者对RequestReceivedEvent、ResponseSentEvent、KernelExceptionEvent等事件作出反应,并在开始时绑定到它们,分别提交和回滚事务。
计时器管理器TimerManager集中式管理计时器允许将现有计时器重新用于其他目的。例如,不需要有两个单独的1秒计时器,一个计时器到期时可以触发两个动作。此外300毫秒计时器和1秒计时器可以共享相同的计时器硬件。
虚拟平台VirtualPlatform充当封装底层硬件、操作系统的媒介。所有特定与平台的交互都包含在虚拟平台及其子组件中,应用软件通过通用虚拟平台接口与底层硬件和操作系统进行通信。单个虚拟平台接口支持多种实现,需要使用桥接模式实现。为此VirtualPlatform提供访问DriverRegistry 、DispatchQueue、EventCenter功能的接口,而不暴露它们。
综上所述,本发明的用于边缘计算的嵌入式抽象虚拟机系统可以限制平台依赖性,减少底层硬件更改对进度的影响。质量设计提高敏捷性和效率,而不是阻碍它。本方法提高了开发人员的生产力并提高新软件的质量、可靠性和稳健性。分层设计提供系统稳定性和弹性,也减少开发人员需要记住的信息量。构建嵌入式产品的公司可以专注于其独特的应用程序功能和核心业务价值,而不是花时间为新平台重建基础设施。公司和开发人员都受益于提高的生产力、更短的代码编译测试周期以及从硬件计划异步开发固件和驱动程序的能力。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,包括:
将嵌入式虚拟机的体系结构抽象为为基础结构、应用横切层两大部分;
基础结构分为处理器层、虚拟硬件平台层、平台抽象层、逻辑程序层;
处理器层通过抽象嵌入式系统的底层处理器实现;每一个平台抽象层包含一个处理器,并负责用户对处理器及其外围设备的期望配置;
虚拟硬件平台层抽象出电路板和处理器层;
平台抽象层将底层硬件和操作系统组合中抽象出逻辑程序层。
2.根据权利要求1所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,虚拟硬件平台将应用程序与硬件细节结合,将特定与电路板的功能封装在通用驱动程序和通用API中,允许应用程序与底层硬件更改分离。
3.根据权利要求1所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,所述硬件平台层由驱动程序、HAL驱动程序、驱动程序注册表、寄存器、虚拟硬件平台组成。
4.根据权利要求1所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,所述虚拟平台层包括启动排序器、C/C++运行时库、事件调度中心、计时器管理、虚拟平台。
5.根据权利要求3所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,所述驱动程序定义基本驱动程序接口和默认驱动程序类型,并为通信总线驱动程序GPIO、I2C、LED、SPI、系统时钟、计时器提供基本接口。
6.根据权利要求5所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,基本驱动程序接口定义start、stop、restart、started的方法并返回驱动程序的注册类型id。
7.根据权利要求1所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,处理器层由架构结构和引导处理程序组成;
处理器层的引导处理程序,在各个嵌入式系统通电时,嵌入式虚拟机的第一个控制上下文为处理器,每个处理器设定特定的启动顺序、启动要求和适用的限制;
处理器特定的启动代码再讲控制权移交到硬件平台层启动序列器已继续启动过程之前的执行。
8.根据权利要求7所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,处理器层的架构接口包括PIC底层架构、AVR底层架构、MIPS底层架构、ARMv8底层架构。
9.根据权利要求1所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,平台抽象层代表一组提供特定功能和职责的平台接口,涵盖底层硬件和RTOS提供的功能,同时配置逻辑程序所需的底层硬件和逻辑组件之间的特定连接;
平台抽象层的提供基础的抽象接口,用户可扩展平台抽象并在多个平台实现上重用,基础的底层抽象包含虚拟实时操作系统、虚拟驱动模型、语言运行时三大关键部分。
10.根据权利要求9所述的用于边缘计算的嵌入式抽象虚拟机系统,其特征在于,虚拟实时操作系统化是对于底层RTOS的抽象,由底层RTOS实现标准化接口的接入配置;
虚拟驱动模型构建虚拟机系统的通用驱动程序接口的定义和一个DriverRegistry驱动注册对象用于访问平台抽象层上可用的驱动程序,而无需耦合到特定的底层设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211390456.4A CN115495201B (zh) | 2022-11-08 | 2022-11-08 | 用于边缘计算的嵌入式抽象虚拟机系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211390456.4A CN115495201B (zh) | 2022-11-08 | 2022-11-08 | 用于边缘计算的嵌入式抽象虚拟机系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115495201A true CN115495201A (zh) | 2022-12-20 |
CN115495201B CN115495201B (zh) | 2024-02-20 |
Family
ID=85115793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211390456.4A Active CN115495201B (zh) | 2022-11-08 | 2022-11-08 | 用于边缘计算的嵌入式抽象虚拟机系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115495201B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040215439A1 (en) * | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method and apparatus for abstraction of physical hardware implementation to logical software drivers |
CN102196308A (zh) * | 2011-05-19 | 2011-09-21 | 广东星海数字家庭产业技术研究院有限公司 | 一种基于数字电视的多硬件接口兼容驱动系统 |
CN102541616A (zh) * | 2010-12-17 | 2012-07-04 | 北京凯思昊鹏软件工程技术有限公司 | 一种嵌入式操作系统虚拟机及其实现方法 |
CN110780858A (zh) * | 2019-10-28 | 2020-02-11 | 天津津航计算技术研究所 | 一种基于嵌入式操作系统的软件分层架构 |
CN113253640A (zh) * | 2021-04-25 | 2021-08-13 | 湖南航天机电设备与特种材料研究所 | 飞控计算机及其通用硬件抽象层 |
CN113687913A (zh) * | 2021-08-05 | 2021-11-23 | 浪潮云信息技术股份公司 | 一种面向边缘计算异构环境的轻量级应用适配方法 |
-
2022
- 2022-11-08 CN CN202211390456.4A patent/CN115495201B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040215439A1 (en) * | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method and apparatus for abstraction of physical hardware implementation to logical software drivers |
CN102541616A (zh) * | 2010-12-17 | 2012-07-04 | 北京凯思昊鹏软件工程技术有限公司 | 一种嵌入式操作系统虚拟机及其实现方法 |
CN102196308A (zh) * | 2011-05-19 | 2011-09-21 | 广东星海数字家庭产业技术研究院有限公司 | 一种基于数字电视的多硬件接口兼容驱动系统 |
CN110780858A (zh) * | 2019-10-28 | 2020-02-11 | 天津津航计算技术研究所 | 一种基于嵌入式操作系统的软件分层架构 |
CN113253640A (zh) * | 2021-04-25 | 2021-08-13 | 湖南航天机电设备与特种材料研究所 | 飞控计算机及其通用硬件抽象层 |
CN113687913A (zh) * | 2021-08-05 | 2021-11-23 | 浪潮云信息技术股份公司 | 一种面向边缘计算异构环境的轻量级应用适配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115495201B (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108170503B (zh) | 一种跨系统运行安卓应用的方法、终端及存储介质 | |
CN101233489B (zh) | 自适应进程分派的方法和系统 | |
EP1449077B1 (en) | Method and system for concurrent handler execution in an smi and pmi-based dispatch-execution framework | |
US8321656B2 (en) | Timer use in extensible firmware interface compliant systems | |
US8276145B2 (en) | Protected mode scheduling of operations | |
US20070067771A1 (en) | Real-time threading service for partitioned multiprocessor systems | |
US20060020940A1 (en) | Soft-partitioning systems and methods | |
KR20070072396A (ko) | 이질적 리소스와의 명령어 세트 아키텍처-기반 시퀀서간통신 | |
US20110219373A1 (en) | Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform | |
Gohringer et al. | RAMPSoCVM: runtime support and hardware virtualization for a runtime adaptive MPSoC | |
WO2014107540A1 (en) | Software interface for a hardware device | |
WO2021168861A1 (zh) | 一种多核处理器、多核处理器处理方法及相关设备 | |
US6963970B2 (en) | System and method for executing a fast reset of a computer system | |
EP2941694B1 (en) | Capability based device driver framework | |
US7350193B2 (en) | Procedure invocation in an integrated computing environment having both compiled and interpreted code segments | |
US20020174266A1 (en) | Parameterized application programming interface for reconfigurable computing systems | |
CN115495201B (zh) | 用于边缘计算的嵌入式抽象虚拟机系统 | |
US20200401415A1 (en) | Operating system architecture for microkernel generations support | |
CN112306539A (zh) | 一种单片机应用层开发方法、系统、终端及介质 | |
Richardson | Developing Dynamically Reconfigurable Real-time Systems with Real-time OSGi (RT-OSGi). | |
EP2941695A1 (en) | High throughput low latency user mode drivers implemented in managed code | |
CN116361033B (zh) | 通信方法、电子设备及存储介质 | |
Van Scoy et al. | An overview of DARK | |
CN109901826B (zh) | 用于Java程序的数据处理方法、装置和电子设备 | |
CN117908971A (zh) | 基于微内核系统的设备资源管理方法、装置、设备和介质 |
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 |