[发明专利]执行使用者空间程式方法、使用其的电脑系统及纪录媒体有效
申请号: | 201110020737.6 | 申请日: | 2011-01-10 |
公开(公告)号: | CN102591697A | 公开(公告)日: | 2012-07-18 |
发明(设计)人: | 林纬政 | 申请(专利权)人: | 技嘉科技股份有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F17/30 |
代理公司: | 北京挺立专利事务所(普通合伙) 11265 | 代理人: | 叶树明 |
地址: | 中国台湾*** | 国省代码: | 中国台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 执行 使用者 空间 程式 方法 使用 电脑 系统 纪录 媒体 | ||
【技术领域】
本发明是有关于一种使用者空间程式的使用方法,且特别是有关于一种可连结不同编译器所编译的函式库的执行使用者空间程式的方法、使用其的电脑系统及纪录媒体。
【背景技术】
在电脑科学中,函式库(library)是用于开发软体的子程式集合。函式库是向其他程式提供服务的程式码,而非独立程式。函式库链结(link)则是指把一个或多个函式库包括到程式中。而不同编译器所编译出的动态函式库,由于定址方式不同,因此在不同编译器所编译的程式中便无法直接连结。
例如,一般Linux核心通用的编译器为GNU编译器集合(GNU CompilerCollection,底下称为GCC编译器)与GNU的GLIBC装载程式。而Android系统是基于Linux核心的软体平台与作业系统,其是采用自行研发的BIONIC编译器与BIONIC的装载程式。而由BIONIC编译器所编译的装载程式无法在装载时更新GCC编译器所编译的动态函式库记忆体位址,导致原本Linux的动态函式库无法连结,所有的程式都必须透过BIONIC编译器重新编译,以正确连结。但是在没有原始码的情况下,BIONIC编译器无法重新编译。
【发明内容】
本发明提供一种执行使用者空间程式的方法及使用其的电脑系统,在不重新编译的情况之下,可连结不同编译器所编译的函式库。
具体而言,本发明提出一种执行使用者空间程式的方法,适用于电脑系统。此电脑系统包括使用者空间与核心,使用者空间包括第一程式,其中第一程式连结至第一标准函式库,且第一程式与第一标准函式库由第一编译器所编译。在此,于使用者空间中提供第二程式以及第三方函式库,其中第二程式连结至第二标准函式库,且第二程式与第二标准函式库由第二编译器所编译,而第三方函式库相依于第二标准函式库。第一程式藉由核心所提供档案系统模组与第二程式沟通,以透过第二程式连结至第三方函式库,其中档案系统模组于使用者空间中有对应的档案系统函式库。而第一程式透过第二程式连结至第三方函式库的步骤包括:第二程式透过档案系统函式库向档案系统模组注册虚拟档案系统;第一程式透过虚拟档案系统传送操作请求至第二程式;第二程式依据操作请求连结至第三方函式库,藉以执行第三方函式库中对应的函式;第二程式透过虚拟档案系统传送回应至第一程式。
在本发明之一实施例中,上述第二程式透过档案系统函式库向档案系统模组注册虚拟档案系统的步骤包括:第二程式呼叫档案系统函式库的注册函式,以传送档案系统路径以及第二标准函式库的函式指标;注册函式透过第二标准函式库的开启函式向核心传送开启请求;核心依据开启请求,开启虚拟装置,使得虚拟装置传送运算描述子至第二程式;第二程式透过第二标准函式库的控制函式向核心传送建立请求,以依据档案系统路径建立虚拟档案系统。
在本发明之一实施例中,在上述第二程式透过档案系统函式库向档案系统模组注册虚拟档案系统的步骤之后,第二程式会呼叫档案系统函式库的等待函式,以轮询虚拟档案系统是否接收到操作请求。
在本发明之一实施例中,在上述第二程式依据操作请求连结至第三方函式库,藉以执行第三方函式库中对应的函式的步骤之前,倘若等待函式轮询到虚拟档案系统接收到操作请求时,呼叫档案系统函式库的处理函式来解析操作请求。
在本发明之一实施例中,上述第一程式透过虚拟档案系统传送操作请求至第二程式的步骤包括:第一程式呼叫第一标准函式库的函式以透过虚拟档案系统传送操作请求至档案系统模组,其中操作请求包括档案系统路径;档案系统模组依据档案系统路径传送操作请求至第二程式。
在本发明之一实施例中,上述档案系统模组为使用者空间档案系统(Filesystem in Userspace,FUSE)模组。另外,操作请求的格式为可扩展标记语言(Extensible Markup Language,XML)。
另外,本发明提出一种电脑系统,包括核心与使用者空间。核心提供一档案系统模组。使用者空间中包括对应于档案系统模组的档案系统函式库、第一程式、第一标准函式库、第二程式、第二标准函式库以及第三方函式库。其中,第一程式连结至第一标准函式库,其皆由第一编译器所编译;而第二程式连结至第二标准函式库,其皆由第二编译器所编译;第三方函式库是相依于第二标准函式库。第二程式透过档案系统函式库向档案系统模组注册虚拟档案系统,使得第一程式得以透过虚拟档案系统传送操作请求至第二程式。而第二程式依据操作请求连结至第三方函式库,藉以执行第三方函式库中对应的函式。之后,第二程式透过虚拟档案系统传送回应至第一程式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于技嘉科技股份有限公司,未经技嘉科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110020737.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:平移式装箱机抓头装置
- 下一篇:微型袋装烟包装机下料机构