[发明专利]用于端序转换的方法和设备有效
申请号: | 201010621047.1 | 申请日: | 2010-12-21 |
公开(公告)号: | CN102103575A | 公开(公告)日: | 2011-06-22 |
发明(设计)人: | M·J·多梅卡;H·威尔金森;M·P·赖斯 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F17/22 | 分类号: | G06F17/22 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 柯广华;王洪斌 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 转换 方法 设备 | ||
技术领域
本发明涉及计算机领域,更具体来说,涉及用于端序转换的方法和设备。
背景技术
字节端序性(endianess)是数据存储和检索的属性。大端序(Big endian)数据可按照与小端序(little endian)数据相反的字节顺序存储在存储器中。小端序数据可采取最低有效字节在最低存储器字节地址中的方式来存储,而大端序数据可采取最高有效字节在最低存储器字节地址中的方式来存储。具有相同值的大端序变量和小端序变量在CPU寄存器中是相同的,但在存储器中可具有不同的顺序。
若未识别如何在存储器中存储一些数据的不同顺序,使用一种字节端序协定编写的源代码可能不在使用另一种端序协定的平台上执行。例如,可能期望将端序字节顺序保存在写到程序外部或者从程序外部读取的数据内。
可使用若干技术来执行的端序转换可用于在一种端序协定的计算机系统平台上执行以另一种端序协定编写的代码。首先,编程者可使用人工端序转换技术来人工分析代码,并且尝试检测字节顺序相关性存在的位置。然后,编程者可插入例如字节交换(即,端序翻转)指令,以便处理所识别的相关性。但是,人工查找这些相关性区域可能是困难的。其次,通过双端序编译器,编程者可指定代码区域的字节顺序。双端序编译器则自动将字节交换插入可采用相反字节顺序语义来执行的已编译可执行代码中。但是,这种独特编译器的使用可能限制源代码可适用的平台。第三,二进制变换可在保持字节顺序语义的同时,采用从一个指令集到另一个指令集的指令的动态变换来实现以不同架构为目标的可执行代码的执行。但是,这类变换可能是缓慢的,并且影响系统性能。
发明内容
按照本发明的一个方面,提供一种方法,包括:
为第一源代码部分指定第一端序格式以及为第二源代码部分指定第二端序格式;
使用耦合到存储器的处理器,基于确定所述第一代码部分在响应所述第一代码部分的所述指定而被执行时是否会产生字节顺序边界跨越来生成第一诊断;
基于确定所述第二代码部分在响应所述第二代码部分的所述指定而被执行时是否会产生隐式字节顺序转换来生成第二诊断;以及
将所述第一诊断和第二诊断存储在所述存储器中。
按照本发明的另一方面,提供一种产品,包括存储指令的介质,所述指令使基于处理器的系统能够:
确定源代码的第一部分在被执行时是否会产生字节顺序边界跨越;
确定所述源代码的第二部分在被执行时是否会产生隐式字节顺序转换;
基于确定所述第一部分在被执行时是否会产生字节顺序边界跨越,生成第一诊断报告;以及
基于确定所述第二部分在被执行时是否会产生隐式字节顺序转换,生成第二诊断报告。
按照本发明的另一方面,提供一种设备,包括:
处理器,所述处理器耦合到第一存储器,执行以下步骤:(1)确定源代码的第一部分在被执行时是否会产生字节顺序边界跨越;(2)确定所述源代码的第二部分在被执行时是否会产生隐式字节顺序转换;(3)基于确定所述第一部分在被执行时是否会产生字节顺序边界跨越,生成第一诊断;以及(4)基于确定所述第二部分在被执行时是否会产生隐式字节顺序转换,生成第二诊断。
附图说明
通过所附权利要求书、一个或多个示例实施例的以下详细描述和对应的附图,本发明的实施例的特征和优点将变得显而易见,其中:
图1是本发明的一个实施例中的方法的框图。
图2A、图2B和图2C包括用于本发明的实施例中的方法的伪代码。
图3是与本发明的一个实施例配合使用的系统框图。
具体实施方式
在以下描述中,提出许多具体细节。但是,大家理解,即使没有这些具体细节也可实施本发明的实施例。没有详细示出众所周知的电路、结构和技术,以免影响对本描述的理解。对“一个实施例”、“实施例”、“示例实施例”、“各种实施例”等的提及表明这样描述的实施例可包括具体特征、结构或特性,但是不一定每个实施例都包括所述具体特征、结构或特性。此外,一些实施例可具有部分、全部或者没有对于其它实施例所描述的特征。另外,本文所使用的“第一”、“第二”、“第三”描述共同对象,并且表明涉及相似对象的不同实例。这种形容词不是要暗示这样描述的对象必须在时间上、空间上、在等级上或者以任何其它方式按照给定的顺序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010621047.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种检索结果三段式有序收集方法及系统
- 下一篇:发光材料及其制备方法