[发明专利]用户定义类型的编译时边界检查有效
申请号: | 201110306863.8 | 申请日: | 2011-09-26 |
公开(公告)号: | CN102402451A | 公开(公告)日: | 2012-04-04 |
发明(设计)人: | D·S·哈维 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 陈斌 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户 定义 类型 编译 边界 检查 | ||
1.一种配置有数据且配置有指令的计算机可读非瞬态存储介质,其中所述指令在由至少一个处理器执行时使得所述处理器执行用于用户定义类型的编译时边界检查的过程,所述过程包括在程序从源代码经历中间语言代码到可执行代码的编译过程中执行的如下步骤:
在源代码中标识(302)用于安全地访问存储器的用户定义类,即,具有存储器访问代码作为经注释成员并具有边界提供成员作为另一经注释成员的用户定义类,其中所述存储器访问代码经用户定义边界检查注释来注释,而所述边界提供成员被注释为指示它提供用于生成所述存储器访问代码上的边界检查的边界信息;
在所述中间语言代码中插入(304)所述用户定义边界检查注释的边界检查表示;以及
应用(306)优化,其中所述优化减少否则会在所述可执行代码中出现的重复的边界检查。
2.根据权利要求1所述的配置的介质,其特征在于,还包括响应于边界检查表示而将边界检查代码插入(308)到所述中间语言代码中,且所述应用步骤向插入的边界检查代码应用所述优化而不是向边界检查表示应用所述优化。
3.根据权利要求1所述的配置的介质,其特征在于,所述应用步骤向边界检查表示(220)应用(306)所述优化而不是向所述中间语言代码中的边界检查代码(222)应用所述优化。
4.根据权利要求1所述的配置的介质,其特征在于,所述标识步骤标识(302)经访问显式分配存储器注释来注释的存储器访问(208)方法。
5.根据权利要求1所述的配置的介质,其特征在于,所述标识步骤标识(302)指示用户定义边界检查的注释以补充(310)内建类型(128)的系统定义的边界检查。
6.根据权利要求1所述的配置的介质,其特征在于,所述标识步骤标识(302)指示用户定义边界检查的注释以补充(310)垃圾收集器托管类型(130)的系统定义的边界检查。
7.一种用于程序开发者管理用户定义类型的编译时边界检查的过程,所述用户定义类型即非内建的类型,所述过程包括如下步骤:
获得(314)计算机程序的源代码;
在所述源代码中指定(316)用户定义的数据类型;
定位(318)由所述用户定义的数据类型定义的存储器访问方法;
用访问显式分配存储器(326)注释来注释(322)所述存储器访问方法;以及
用以下中的至少一项注释(322)所述源代码:
指示由所述用户定义的数据类型定义的字段含有用于所述存储器访问方法的边界的字段含边界(328)注释,
指示由所述用户定义的数据类型定义的边界获取方法返回用于所述存储器访问方法的边界的边界获取器方法(330)注释。
8.根据权利要求7所述的过程,其特征在于,所述用户定义类型包装(332)以下中的至少一项:内建阵列类型,内建托管类型。
9.一种计算机系统,包括:
逻辑处理器(110);
与所述逻辑处理器可操作地通信的存储器(112);
驻留于所述存储器中并具有用户定义类型的源代码(122),所述用户定义类型具有存储器访问方法,所述存储器访问方法是经用户定义边界检查注释来注释的,所述用户定义类型还具有至少一个边界指定器;
驻留于所述存储器中并被配置成在中间语言代码中插入所述用户定义边界检查注释的边界检查表的编译器(224);以及
驻留于所述存储器中并被配置成向中间语言代码应用优化以减少重复的边界检查的优化器(226)。
10.根据权利要求9所述的系统,其特征在于,经注释的源代码包括设备驱动器(230)源代码122,而所述用户定义类型对应于存储器映射的缓冲区(232)。
11.根据权利要求9所述的系统,其特征在于,经注释的源代码包括垃圾收集数据类型(130),而所述用户定义类型对应于显式分配的存储器。
12.根据权利要求9所述的系统,其特征在于,所述用户定义类型被定义为没有任何多元素阵列类型(132)作为组成类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110306863.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种工业机风扇高置和集成的发动机前端轮系
- 下一篇:一种平衡式一拖二采油机组