[发明专利]处理值类型有效
申请号: | 201580026936.4 | 申请日: | 2015-05-13 |
公开(公告)号: | CN106663019B | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | J·R·罗斯;B·戈茨;G·斯蒂尔 | 申请(专利权)人: | 甲骨文国际公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 11038 中国国际贸易促进委员会专利商标事务所 | 代理人: | 欧阳帆 |
地址: | 美国加*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理 类型 | ||
1.一种用于通过生成和执行对应的较低级别的指令来实现较高级别的指令的方法,所述较低级别的指令针对对于所述较高级别的指令透明的一个或多个存储机构,所述方法包括:
接收指定将特定值类型的值指派到多个容器中的特定容器的一个或多个较高级别的指令,其中所述多个容器表示用于在代码块的执行期间维护一个或多个变量的数据结构,其中所述多个容器中的至少两个容器具有不同的尺寸,其中所述特定值类型包括多个对象字段或数组元素,其中所述特定容器不驻留在堆中;
基于根据所述特定值类型将一个或多个指派规则应用于所述一个或多个较高级别的指令,生成将整个值存储到所述特定容器中的一个或多个较低级别的指令;
执行所述一个或多个较低级别的指令;
其中所述方法由一个或多个计算设备执行。
2.如权利要求1所述的方法,其中所述一个或多个指派规则包括以下中的一个或多个:
限制哪些值类型能够被指派到所述特定容器的约束,
在向所述特定容器中加载所述值的拆箱表示或对保持所述值的第二容器的引用之间进行选择的规则。
3.如权利要求2所述的方法,其中在向特定容器中加载所述值的所述拆箱表示或对保持所述值的第二容器的引用之间进行选择的规则基于以下中的一项或多项:所述值是否是不可变的、所述值是否能够适配在所述特定容器内、所述值是否超出了特定的尺寸阈值、所述多个容器中的另一个容器是否已经存储了所述值、所述值的组成成分的性质、或者所述一个或多个较低级别的指令将如何利用所述值。
4.如权利要求2-3中的任一项所述的方法,其中所述多个容器被存储在为多个线程中的特定线程预留的存储器位置中,并且所述第二容器在由所述多个线程共享的存储器位置中位于所述多个容器的外部。
5.如权利要求2-3中的任一项所述的方法,其中所述约束基于以下中的一项或多项:
(1)确定所述特定容器已经被分配为适配一个或多个值类型,并且将对所述特定容器的指派限制为所述一个或多个值类型的值,
(2)将对所述特定容器的指派限制为与所述特定容器共享尺寸的值或具有比所述特定容器小的尺寸的值,
(3)将对所述特定容器的指派限制为一个或多个特定值类型直至接收到重置所述特定容器的指令。
6.如权利要求2-3中的任一项所述的方法,还包括:
响应于确定要在所述特定容器中加载所述值的所述拆箱表示以及确定所述特定容器不能适配所述值,调整所述特定容器的尺寸以适配所述值。
7.如权利要求1-3中的任一项所述的方法,还包括:
接收指定改变第二特定容器中存储的第二值的组成部分的一个或多个第二较高级别的指令,其中所述第二值具有第二特定值类型;
至少部分地基于与所述第二特定值类型相关联的元数据来生成识别所述第二特定容器的与所述组成部分对应的部分的单个较低级别的指令;
执行所述单个较低级别的指令。
8.如权利要求7所述的方法,其中识别所述第二特定容器的所述部分包括以下中的一项或多项:使用对应于所述第二特定值类型的值类型定义的字段定义来定位所述部分,使用所述值类型定义的访问控制信息来实行对所述部分的访问限制,或者基于所述值类型定义来执行类型检查。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于甲骨文国际公司,未经甲骨文国际公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580026936.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种终端设备刷机方法、装置和设备
- 下一篇:虚拟化环境中的智能GPU调度