[发明专利]一种基于C/C++编译系统的虚拟机控制系统及其控制方法有效
| 申请号: | 201910294766.8 | 申请日: | 2019-04-12 |
| 公开(公告)号: | CN110018816B | 公开(公告)日: | 2022-04-22 |
| 发明(设计)人: | 王晨 | 申请(专利权)人: | 王晨 |
| 主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/41 |
| 代理公司: | 北京市盛峰律师事务所 11337 | 代理人: | 于国栋 |
| 地址: | 201108 上海市闵*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 c++ 编译 系统 虚拟机 控制系统 及其 控制 方法 | ||
本发明公开了一种基于C/C++编译系统的虚拟机控制系统及其控制方法,所述系统包括词法分析器、语法分析器、类型定义程序模块、代码生成器、虚拟机内存管理模块和虚拟机进程管理模块,源代码经词法分析器进入虚拟机控制系统内。优点是:虚拟机控制系统能够兼容由C/C++开发的用户优先级的应用程序;对于操作系统的系统应用程序,运行于内核优先级下,虚拟机控制系统也可兼容用C/C++开发的系统应用程序;对于运行于内核状态的驱动程序,运行于内核优先级下,本发明的虚拟机控制系统也可兼容用C/C++开发的驱动程序;同时本发明的虚拟机控制系统能根据源代码,在进程运行时更新、增加、删除代码片断数据。
技术领域
本发明涉及计算机系统软件领域,尤其涉及一种基于C/C++编译系统的虚拟机控制系统及其控制方法。
背景技术
目前,现有的Java虚拟机技术,解决了跨平台问题,即一次安装、编译,用户态的应用程序能在Windows、Linux等操作系统上运行,然而,其不能够用Java编译器编译Java虚拟机运行系统级的应用程序,比如说Linux系统上由xorg组织开发xserver图形界面服务端程序,更不能用Java编译器虚拟机去开发运行比系统应用程序优先级别更高的驱动程序。因此,继续一种虚拟机控制系统,实现开发运行比系统应用程序优先级别更高的驱动程序。
发明内容
本发明的目的在于提供一种基于C/C++编译系统的虚拟机控制系统及其控制方法,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明采用的技术方案如下:
一种基于C/C++编译系统的虚拟机控制系统,所述系统包括
词法分析器,用于接收源代码,且所述词法分析器内部设置有算符优先级表以及符号分析栈,能够根据算符优先级的标准分析程序,将源代码转换成语法树;
语法分析器,所述语法分析器用于从语法树中提取变量、常量、函数、类型、命名空间、结构体、联合体、字符串、模板、表达式、条件语句以及节点数据,并将这些数据分类存储到类型定义数据模块中,并将函数、表达式和条件语句送入代码生成器中;所述语法分析器还负责作用域的变换;
类型定义程序模块,用于产生类型定义数据,以决定变量、常量、函数、类型、结构体、联合体、字符串以及模板在虚拟机内存管理模块的存储位置;
代码生成器,用于将从语法树上提取的函数、表达式和条件语句转换生成为虚拟机进程管理模块所能够识别接收的第一代码片断数据;
虚拟机内存管理模块,用于识别接收类型定义数据,在数据内存中布局,建立数据模型和/或用于调用虚拟机进程管理模块,以在代码内存中布局,建立进程模型;
虚拟机进程管理模块,用于识别接收代码片断数据,在代码内存中布局,建立可运行的进程模型,所述虚拟机控制系统运行指定进程模型,遍历各个代码片断节点,并利用运行栈,计算出当前进程模型中第一代码片断数据运行产生的结果;所述虚拟机进程管理模块用于调用所述虚拟机内存管理模块,以修改类型定义数据。
优选的,所述源代码为符合ISO/IEC 14882标准的C/C++源代码文件。
优选的,所述第一代码片断数据采用树结构,所述第一代码片断数据中的各代码片断节点都带有变量名、函数名、操作编码信息以及指向所有子节点的指针;或者所述第一代码片断数据采用链表结构,所述第一代码片断数据中的各代码片断节点内都包含有指向下一项第一代码片断数据的指针。
本发明的目的还在于提供一种基于C/C++编译系统的控制方法,所述控制方法用于上述任一所述的虚拟机控制系统,所述虚拟机进程管理模块接收第一代码片断数据后,对第一代码片断数据执行所述控制方法,所述控制方法包括更新代码片断数据、增加代码片断数据以及删除代码片断数据。
优选的,所述更新代码片断数据包括如下步骤,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于王晨,未经王晨许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910294766.8/2.html,转载请声明来源钻瓜专利网。





