[发明专利]64位Linux操作系统兼容32位应用软件的方法在审
申请号: | 201410202125.2 | 申请日: | 2014-05-13 |
公开(公告)号: | CN105094870A | 公开(公告)日: | 2015-11-25 |
发明(设计)人: | 张久伶;党立斌 | 申请(专利权)人: | 中标软件有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F17/30 |
代理公司: | 北京汇智英财专利代理事务所(普通合伙) 11301 | 代理人: | 陈践实 |
地址: | 200030 上海市番*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 64 linux 操作系统 兼容 32 应用软件 方法 | ||
技术领域
本发明属于计算机软件领域,尤其涉及一种能够在64位Linux操作系统中兼容32位应用软件的方法。
背景技术
在同一个Linux操作系统中,如Windows、Linux、Unix等操作系统中,通常存在32位和64位两个版本,32位计算机Linux操作系统由来已久,为技术日益成熟的过程中发展起很多让人所熟知并且应用的应用程序,然而64位系统更能满足需要大量内存和浮点性能的客户,并且在机械设计与分析、三维动画、视频编辑和创作以及科学计算和高性能计算等领域大放光芒,64位Linux操作系统比32位Linux操作系统有着更大的寻址能力和数据处理能力,因此64操作位系统在大数据处理和复杂计算方面有着天然的优势,同时得到了越来越多的用户的认可与好评。
基于服务器Linux操作系统运行环境和所需要提供的服务类型,在服务器领域64位Linux操作系统淘汰32位Linux操作系统已经成为必然趋势,然而在计算机发展史中,32位Linux操作系统作为主流的系统版本已经相当长的时间,然而当前的64位操作系统为龙芯平台64位Linux操作系统架构图,如图1所示,对32位软件并不兼容,而在软件从32位过渡到64位的这该段时间内,32位Linux操作系统上出现了大量与之相匹配的软件,这些软件在在短时间内向64位Linux操作系统迁移暂时无法实现与完成,而且客户可能对这些32位软件有特殊的需求而不愿做出改变,这就对64位Linux操作系统对32位应用程序的兼容性提出了新的要求,即可以在64位Linux操作系统完全取代32位之间的过渡时间段内,在这样一个相当长的时间段内,使64位Linux操作系统保持对32位Linux操作系统的兼容特性,而目前还没有解决这些问题的产品或者方法出现。
发明内容
针对现有技术中存在的不足,本发明的目的在于提供一种64位Linux操作系统兼容32位应用软件的方法,64位Linux操作系统装入32位子Linux系统,从而使32位程序能够完全应用在64位Linux操作系统中,从而提高了64位Linux操作系统的资源利用率以及运行效率,完全实现了对32位应用程序的兼容。
本发明的技术方案如下:
一种64位Linux操作系统下兼容32位应用软件的方法,包括以下步骤:
步骤S1:于所述64位处理器对应地设有64位操作系统,在所述64位操作系统的内核中设计一32位系统调用接口,与该系统调用接口对应的32位运行库、链接器以及程序加载器均设计于该64位操作系统中,所述32位运行库、链接器、程序加载器以及32位系统调用接口共同形成32位子操作系统;
步骤S2:对运行的应用程序进行判断,并选择与程序相对应的操作系统,调用与该程序位数相对应的加载器、链接器以及运行库进行执行。
上述的方法,进一步地,还包括判断步骤:
声明一个指针判断,对运行的应用程序格式进行判断:
(1)若判断结果是32位应用程序,则调用32位子操作系统中的32位加载器来装载该应用程序;
(2)若判断结果是64位应用程序,则调用64位Linux操作系统中的64位加载器来装载该应用程序。
基于本发明又一方面在64位Linux操作系统中兼容32位应用软件的方法,进一步地,还包括判断步骤:
在所述操作系统的内核上一层为虚拟系统调用中间层,用于识别32位与64位应用程序;
获取-运行的应用程序所属的系统调用的格式,由该中间层对该格式进行判断,若判断为32位系统调用,则对该系统调用的数据结构进行转换,进而执行该系统调用;
若判断为64位系统调用,则直接执行该系统调用。
上述的方法,所述应用程序在装载应用结束后,根据该应用程序在编译时标定的运行库位置来装载该应用程序所对应的运行库。
上述的方法,应用程序装载结束以后,32位应用程序的装载器调用32位动态链接器来完成内存中的应用程序与运行库的链接工作,64位应用程序的装载器调用64位动态链接器完成内存中的应用程序与所属运行库的链接工作。
上述的方法,所述操作系统采用龙芯64位处理器。
上述的方法,所述操作系统调用虚拟系统调用中间层以上的运行库、装载器、链接器均为两份,其中一份为32位,另一份为64位。
上述的方法,所述运行库具有标准接口定义,由运行库中的函数间接地使用系统调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中标软件有限公司,未经中标软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410202125.2/2.html,转载请声明来源钻瓜专利网。