[发明专利]将可执行代码编译到较不可信的地址空间中无效
申请号: | 200780043929.0 | 申请日: | 2007-11-27 |
公开(公告)号: | CN101553784A | 公开(公告)日: | 2009-10-07 |
发明(设计)人: | D·C·赖顿;R·S·乌诺基 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F12/02 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌;钱静芳 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 实现托管代码的不安全的应用程序能够以安全的方式来执行。具体而言,操作系统可被配置成在用户模式中执行应用程序,但通过以内核模式操作的类型安全JIT编译器来处理托管代码编译。操作系统还可将单个存储器位置指定为通过具有不同许可集的多个地址空间来访问。以用户模式操作的应用程序能够在读/执行地址空间中执行,而JIT编译器在读/写地址空间中操作。当遇到指向中间语言代码的一个或多个指针时,应用程序运行时环境可将一个或多个编译请求发送到内核模式安全组件,该组件确认这些请求。如果得到确认,则JIT编译器将编译所请求的中间语言代码,并且应用程序可从共享存储器堆访问所编译的代码。 | ||
搜索关键词: | 可执行 代码 编译 不可信 地址 空间 | ||
【主权项】:
1.一种在计算机化环境中的执行托管代码以使得能够以不威胁或以其他方式损害系统安全性的方式编译并执行不可信程序代码的方法,所述计算机化环境包括存储器、以及JIT编译器和加载在所述存储器中的一个或多个应用程序,所述方法包括:从被设置成具有用于访问共享存储器堆的第一许可集的第一地址空间执行应用程序;从所述应用程序接收编译一个或多个中间语言指令集的一个或多个请求;使用在具有用于访问所述共享存储器堆的第二许可集的第二地址空间中运行的JIT编译器来将所述一个或多个中间语言指令集编译成新编译的代码;以及将所述新编译的代码传递给所述共享存储器堆,其中所述应用程序可取出所述新编译的代码并从所述第一地址空间执行所述新编译的代码。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200780043929.0/,转载请声明来源钻瓜专利网。
- 上一篇:节能型泵站拍门缓闭装置
- 下一篇:双偏心轮驱动阶梯型栅条过滤设备