[发明专利]程序编译方法、编译器及计算机有效

专利信息
申请号: 201010296704.X 申请日: 2010-09-28
公开(公告)号: CN102419714A 公开(公告)日: 2012-04-18
发明(设计)人: 程碧波 申请(专利权)人: 程碧波
主分类号: G06F9/45 分类号: G06F9/45;G06F21/24
代理公司: 北京康信知识产权代理有限责任公司 11240 代理人: 吴贵明
地址: 100081 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 程序 编译 方法 编译器 计算机
【说明书】:

技术领域

发明涉及一种源代码编译方法、编译器及计算机。

背景技术

当前主机系统在编译并安装程序时,均首先将程序源代码编译成二进制机器代码,然后将二进制机器代码连接安装在主机系统中。在安装二进制代码或执行二进制代码时,系统再检查代码指令的特权级,并根据其特权级产生执行、不执行或报警的后果。而特权级指令的设计、分类均由CPU等硬件厂家设计决定,留给软件编写者的自由度很小。例如一旦攻击者突破了ring0级特权,则所有指令都可以执行,从而给系统带来极大的不安全性。事实上主机系统在特殊情况例如驱动程序编写时,只使用少数几个ring0级指令就可以了。此外,硬件厂家有很多指令未公开发布已经是计算机领域的惯例,而这些指令中难免会有硬件厂家留下的高特权级后门指令,从而对使用硬件的用户产生安全威胁。

现有的计算机特权指令之审核是在安装或执行二进制机器代码一级。以Intel机器指令而论,其包含了4级特权:ring0,ring1,ring2,ring3。其中ring0级特权优先级最高,可以执行系统内任何指令,而ring3级特权优先级最低,无法执行高级特权指令。一旦破解者获得ring0级特权,就基本上可以在系统内任意妄为。现在的操作系统极力封锁ring0级特权,只向用户开放低级特权,以保证系统安全。但由于安装驱动程序需要操作ring0级特权指令,以及硬件本身可能有的特权指令后门,从而使得系统留下了安全隐患,导致安全性不够高。

针对相关技术中的计算机系统的安全性不够高的问题,目前尚未提出有效的解决方案。

发明内容

针对相关技术中计算机系统的安全性不够高的问题而提出本发明,为此,本发明的主要目的在于提供一种源代码编译方法、编译器及计算机,以解决上述问题。

为了实现上述目的,根据本发明的一个方面,提供了一种源代码编译方法。该源代码编译方法包括:编译器获取源代码各指令的特权级;编译器判断源代码各指令的特权级和编译者的特权级是否符合;在源代码所有指令的特权级和编译者的特权级均符合的情况下,编译器对源代码进行编译;以及在源代码任意指令的特权级和编译者的特权级不符合的情况下,编译器拒绝对源代码进行编译。

为了实现上述目的,根据本发明的另一方面,提供了一种编译器。该编译器包括:获取模块,用于获取源代码各指令的特权级;判断模块,用于判断源代码各指令的特权级和编译者的特权级是否符合;以及编译模块,用于在源代码所有指令的特权级和编译者的特权级均符合的情况下,对源代码进行编译,在源代码任意指令的特权级和编译者的特权级不符合的情况下,拒绝对源代码进行编译。

通过本发明,采用编译器获取源代码各指令的特权级;编译器判断源代码各指令的特权级和编译者的特权级是否符合;在源代码所有指令的特权级和编译者的特权级均符合的情况下,编译器对源代码进行编译;以及在源代码任意指令的特权级和编译者的特权级不符合的情况下,编译器拒绝对源代码进行编译的方法,仅对符合条件的源代码中的各个指令进行编译,防止了对一些非法或可疑源代码的编译,解决了相关技术中的计算机系统安全性不够高的问题,进而达到了提高计算机系统安全性的效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的源代码编译方法的流程图;

图2是根据本发明实施例的编译器的示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

根据本发明的实施例,提供了一种源代码编译方法、编译器及计算机。

图1是根据本发明实施例的源代码编译方法的流程图。

如图1所示,该方法包括如下的步骤S102至步骤S108:

步骤S102,编译器获取源代码各指令的特权级。

例如,编译器可以首先读取源代码各代码指令,然后以读取的代码指令在编译器中检索出预设的此指令之特权级。

对可用于源代码的所有指令均已经在编辑器中各自预设好特权级,因此源代码文件本身不需要再设置任何特权级。编译者的特权级是通过口令等形式由编译器授予的。

步骤S104,编译器判断源代码各指令的特权级和编译者的特权级是否符合。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于程碧波,未经程碧波许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010296704.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top