[发明专利]一种面向异构众核环境的从核系统调用实现方法有效
| 申请号: | 201510830277.1 | 申请日: | 2015-11-24 |
| 公开(公告)号: | CN105468448B | 公开(公告)日: | 2019-01-01 |
| 发明(设计)人: | 黄高阳;郑岩;王星焱;王礼生;陈斐;朱蕾 | 申请(专利权)人: | 无锡江南计算技术研究所 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 北京众合诚成知识产权代理有限公司 11246 | 代理人: | 龚燮英 |
| 地址: | 214083 江苏*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 面向 异构众核 环境 系统 调用 实现 方法 | ||
本发明提供了一种面向异构众核环境的从核系统调用实现方法,包括:在主核和从核之间布置主核和从核均能访问的一块共享的空间作为主从交互区,用于在主核和从核之间交互或传递数据;利用从核系统调用的处理代码,保存从核系统调用的上下文;利用从核系统调用的处理代码,解析系统调用的系统调用号,将系统调用号保存在主从交互区;利用从核系统调用的处理代码,解析系统调用的传递的参数,将这些参数保存到主从的交互区上;利用从核系统调用的处理代码,向主核发送中断以通知主核处理从核的相关系统调用;利用从核系统调用的处理代码,使得从核判断主核处理完成标志,恢复从核系统调用的上下文。
技术领域
本发明涉及本发明涉及处理器技术领域,具体涉及一种面向异构众核环境的从核系统调用实现方法。
背景技术
异构众核计算作为一种新型计算模式推动计算机技术的发展,已成为高性能计算研究的前沿热点。在异构众核CPU中,由于从核上不能运行完整的操作系统,如何有效的支持从核完成大部分POSIX(Portable Operating System Interface)兼容的系统调用,将很大程度上决定了整个众核操作系统的好用性。当前为支持从核上系统调用的实现,主要有两种方式:1)使用用户层的系统调用库:对用户使用大部分的系统调用,直接以库的方式在用户层实现;2)在从核上直接运行操作系统,从而支持从核的用户运行,但该方式对从核的硬件要求较高,而且对整个众核操作系统的设计也是一个挑战。
一般情况下,用户程序(应用程序)通过应用编程接口(API)而不是直接通过系统调用来编程。一个API定义了一组应用程序使用的编程接口。它们可以实现成一个系统调用,也可以通过调用多个系统调用来实现,而完全不使用任何系统调用也不存在问题。在Unix世界中,最流行的应用编程接口是基于POSIX标准的,其目标是提供一套大体上基于Unix的可移植操作系统标准。在C语言程序设计中,C标准函数库是所有符合标准的头文件集合,以及常用的函数库实现,并且C库实现了Unix系统的主要API,包括C库函数和系统调用。Linux系统作为类Unix系统,系统调用也是作为C库的一部分,如图1所示。
在传统的C库系统调用的实现时,由于涉及到从用户态到核心态的切换,因此在不同的硬件平台上的实现是不一样的,但是它们都会提供一条特殊的指令,使得用户能够从用户态切换到核心态。如alpha架构下,使用的是一条sys_call 0x83这条指令完成的,而在x86平台则是通过IDT中断描述符表,以及指令int$0x80来实现的。但无论哪种方式都离不开一条会导致运行特权级切换(指从用户态切换到核心态)的指令(alpha下是sys_call,x86下是int)。传统的系统调用的具体实现主要流程如下:
系统调用号的传递:在Linux中,每个系统调用被赋予一个系统调用号,调用系统调用时,需传递系统调用号,在x86平台是使用eax寄存器保存调用的系统调用号的,而alpha架构下是$0寄存器。
参数传递:大部分系统调用还需要使用参数输入的,在x86系统上,ebx,ecx,edx,esi和edi按照顺序存放前五个参数。
切换到核心态:主要通过特殊的指令实现。X86下为int,alpha为sys_call。
系统调用返回值:一般是通过寄存器传递来完成结果的返回。如在alpha下使用$0寄存器保存系统调用的结果,错误码则使用$19传递。
但是,当前的技术中,直接实现用户层的系统调用库,工作量巨大,因为其需要对每一个系统调用仔细分析,重新在用户层实现,并且还有所受限(有很多系统调用是需要用到操作系统内部的结构,这个问题很难解决)。
发明内容
本发明所要解决的技术问题是针对现有技术中存在上述缺陷,提供一种简单且高效的面向异构众核环境的从核系统调用实现方法,其能够在异构众核环境下支持从核直接调用大部分的POSIX兼容的系统调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡江南计算技术研究所,未经无锡江南计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510830277.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:高压多芯屏蔽信号电缆
- 下一篇:具有补强板划线结构的柔性扁平电缆





