Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR PROCESSING PROCESS OF MULTICORE OPERATING SYSTEM
Document Type and Number:
WIPO Patent Application WO/2015/188330
Kind Code:
A1
Abstract:
Provided are a method and device for processing a process of a multicore operating system. The method for processing a process of a multicore operating system comprises: determining, by a first process, that it is needed to communicate with a second process, wherein the first process and the second process belong to different domains; and communicating, by the first process, with the second process according to a creation association relationship between processes, wherein the creation association relationship between processes comprises an association relationship between a created process generated during process creation and a creating process. By means of the embodiments of the present invention, a first process can communicate with a second process according to a creation association relationship between processes, wherein the creation association relationship between processes comprises an association relationship between a created process generated during process creation and a creating process, so that the first process can communicate with the second process which is located in a domain different therefrom.

Inventors:
SHEN QINGNI (CN)
GUO MINGYU (CN)
LI CAI (CN)
ZHANG TIAN (CN)
TANG JIYUAN (CN)
CHEN KEPING (CN)
CAI YI (CN)
Application Number:
PCT/CN2014/079663
Publication Date:
December 17, 2015
Filing Date:
June 11, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
International Classes:
G06F9/54
Foreign References:
CN101901207A2010-12-01
CN101266561A2008-09-17
CN101299194A2008-11-05
Attorney, Agent or Firm:
LEADER PATENT & TRADEMARK FIRM (CN)
北京同立钧成知识产权代理有限公司 (CN)
Download PDF:
Claims:
权 利 要 求 书

1、 一种多内核操作系统进程处理方法, 其特征在于, 包括: 第一进程确定需要与第二进程进行通信, 其中, 所述第一进程与所述 第二进程属于不同域;

所述第一进程根据进程间的创建关联关系与所述第二进程进行通信, 其中, 所述进程间的创建关联关系, 包括进程创建时生成的被创建进程与 创建进程之间的关联关系。

2、 根据权利要求 1 所述的方法, 其特征在于, 所述第一进程根据进 程间的创建关联关系与所述第二进程进行通信, 包括:

若所述第一进程根据所述进程间的创建关联关系确定所述第一进程 与所述第二进程具有同一关联进程, 则所述第一进程根据进程间的创建关 联关系确定所述第二进程的进程标识, 并根据所述进程标识与所述第二进 程进行通信。

3、 根据权利要求 1 所述的方法, 其特征在于, 所述第一进程根据进 程间的创建关联关系与所述第二进程进行通信, 包括:

若所述第一进程与所述第二进程为父子进程关系, 则所述第一进程通 过共享的管道描述符与所述第二进程进行通信;

或者,

所述第一进程通过共享的文件描述符与所述第二进程进行信息共享。

4、 根据权利要求 3 所述的方法, 其特征在于, 在所述第一进程创建 第二进程时, 还包括:

所述第一进程标记运行所述第二进程的核的信息, 以使所述第二进程 迁移到其它核时, 所述第二进程根据该标记确定运行所述第二进程的核的 信息。

5、 一种进程处理装置, 其特征在于, 所述装置应用于第一进程, 所 述装置, 包括:

第一通信模块, 用于确定需要与第二进程进行通信, 其中, 所述第一 进程与所述第二进程属于不同域;

第二通信模块, 用于根据进程间的创建关联关系与所述第二进程进行 通信, 其中, 所述进程间的创建关联关系, 包括进程创建时生成的被创建 进程与创建进程之间的关联关系。

6、 根据权利要求 5 所述的装置, 其特征在于, 所述第二通信模块, 具体用于:

若根据所述进程间的创建关联关系确定所述第一进程与所述第二进 程具有同一关联进程, 则根据进程间的创建关联关系确定所述第二进程的 进程标识, 并根据所述进程标识与所述第二进程进行通信。

7、 根据权利要求 5 所述的装置, 其特征在于, 所述第二通信模块, 具体用于:

若所述第一进程与所述第二进程为父子进程关系, 则通过共享的管道 描述符与所述第二进程进行通信;

或者,

所述通过共享的文件描述符与所述第二进程进行信息共享。

8、 根据权利要求 7 所述的装置, 其特征在于, 还包括: 标记模块, 用于:

在所述第一进程创建第二进程时, 标记运行所述第二进程的核的信 息, 以使所述第二进程迁移到其它核时, 所述第二进程根据该标记确定运 行所述第二进程的核的信息。

Description:
多内核操作系统进程处理方法及装置

技术领域 本发明涉及通信技术, 尤其涉及一种多内核操作系统进程处理方法及 装 置。 背景技术

进程管理是操作系统最核心的功能, 在操作系统中, 不论是常驻程序还 是应用程序, 都以进程为标准执行单位。

现有技术中, 多内核操作系统的进程管理主要釆用表格状的 进程管理模 型。 在表格纵向上, 每个硬件核上有一个单独的操作系统内核, 每个操作系 统内核负责调度当前硬件核上的各个进程; 在表格横向上, 每个应用由分布 在多个核上的各个进程组成, 通过表格横向信息确定组成一个应用的多个进 程, 并将由多个进程组成的应用作为一个域, 以域为单位维护管理一个由多 进程组成的单独应用。 对于表格状的进程管理模型, 属于同一域内的第一进 程能够根据域内信息获知与其处于同一域内其 他进程的进程标识信息, 因此 第一进程可以与处于同一域内的其他进程之间 进行通信。

但是, 现有技术中对于表格状的进程管理模型, 第一进程并不能够与其 处于不同域的第二进程进行通信。 发明内容 本发明实施例提供一种多内核操作系统进程处 理方法及装置。

本发明实施例提供一种多内核操作系统进程处 理方法, 包括:

第一进程确定需要与第二进程进行通信, 其中, 所述第一进程与所述第 二进程属于不同域;

所述第一进程根据进程间的创建关联关系与所 述第二进程进行通信, 其 中, 所述进程间的创建关联关系, 包括进程创建时生成的被创建进程与创建 进程之间的关联关系。

本发明实施例提供一种进程处理装置, 所述装置应用于第一进程, 所 述装置, 包括:

第一通信模块, 用于确定需要与第二进程进行通信, 其中, 所述第一进 程与所述第二进程属于不同域;

第二通信模块, 用于根据进程间的创建关联关系与所述第二进 程进行通 信, 其中, 所述进程间的创建关联关系, 包括进程创建时生成的被创建进程 与创建进程之间的关联关系。

本发明实施例提供一种多内核操作系统进程处 理方法及装置, 通过第一 进程根据进程间的创建关联关系与所述第二进 程进行通信, 其中, 所述进程 间的创建关联关系, 包括进程创建时生成的被创建进程与创建进程 之间的关 联关系, 解决了第一进程并不能够与其处于不同域的第 二进程进行通信的问 题, 使得第一进程与其处于不同域的第二进程之间 能够进行通信。

附图说明 图 1为本发明多内核操作系统进程处理方法实施 一的流程图; 图 2为本发明进程处理装置实施例一的结构示意 ;

图 3为本发明进程处理装置实施例四的结构示意 。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描 述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作出创造性劳动前 提 下所获得的所有其他实施例, 都属于本发明保护的范围。

图 1为本发明多内核操作系统进程处理方法实施 一的流程图,如图 1 所示, 本实施例的方法可以包括:

步骤 101、 第一进程确定需要与第二进程进行通信, 其中, 所述第一 进程与所述第二进程属于不同域;

需要说明的是, 多内核操作系统中, 组成同一应用的多个进程属于同 一域;

例如, 应用 1由进程 1、 进程 2、 进程 3组成; 应用 2由进程 4、 进程 5、 进程 6组成; 则进程 1与进程 2属于同一域, 进程 1与进程 4属于不 同域。

步骤 102、 所述第一进程根据进程间的创建关联关系与所 述第二进程 进行通信, 其中, 所述进程间的创建关联关系, 包括进程创建时生成的被 创建进程与创建进程之间的关联关系。

例如, 进程间的创建关联关系包括进程 1创建进程 2 , 进程 2创建进 程 3 , 进程 3创建进程 4 , 进程 4创建进程 5的进程 1、 2、 3、 4、 5之间 的关联关系;

现有技术中, 对于多内核操作系统中属于不同域内的第一进 程和第二进 程之间并不能够通信。 本发明中, 所述第一进程根据进程间的创建关联关 系与所述第二进程进行通信, 其中, 所述进程间的创建关联关系, 包括进 程创建时生成的被创建进程与创建进程之间的 关联关系。

现有技术中,由于多内核操作系统将由多个进 程组成的应用作为一个域, 以域为单位维护管理一个由多个进程组成的单 独应用, 对于属于不同域的第 一进程和第二进程, 并不会记录第一进程与第二进程的创建关联关 系, 因此, 第一进程在需要与第二进程进行通信时,并不 能够获得第二进程的相关信息, 因此第一进程并不能够与其处于不同域的第二 进程进行通信; 通过本发明中 所述第一进程根据进程间的创建关联关系与所 述第二进程进行通信, 其 中, 所述进程间的创建关联关系, 包括进程创建时生成的被创建进程与创 建进程之间的关联关系,使得第一进程能够通 过进程间的创建关联关系获取 第二进程的相关信息, 使得第一进程与其处于不同域的第二进程之间 能够进 行通信。

本实施例, 通过第一进程根据进程间的创建关联关系与所 述第二进程 进行通信, 其中, 所述进程间的创建关联关系, 包括进程创建时生成的被 创建进程与创建进程之间的关联关系,解决了 第一进程并不能够与其处于不 同域的第二进程进行通信的问题, 使得第一进程与其处于不同域的第二进程 之间能够进行通信。

多内核操作系统进程处理方法实施例二

多内核操作系统进程处理方法实施例一步骤 102, 可以包括: 若所述第 一进程根据所述进程间的创建关联关系确定所 述第一进程与所述第二进 程具有同一关联进程, 则所述第一进程根据进程间的创建关联关系确 定所 述第二进程的进程标识, 并根据所述进程标识与所述第二进程进行通信 。

其中, 所述进程标识, 可以为进程编号或进程名称。

可选的, 各进程的进程控制块中除了在多内核操作系统 下具有的描述 当前进程的属性外, 还增加描述父子进程的进程控制块的指针。 在创建新 进程时, 父进程中加入指向新的子进程控制块的指针, 同样子进程中加入 指向父进程控制块的指针。

可选的,进程间的创建关联关系可以通过指向 父 \子进程控制块的指针 表示。

可选的, 第一进程根据进程间的创建关联关系确定所述 第一进程与所 述第二进程具有同一关联进程,则所述第一进 程根据指向父\子进程控制块 的指针, 获得第二进程的进程标识, 并根据该进程标识与所述第二进程进 行通信。

例如, 应用 1由进程 1、 进程 2、 进程 3组成; 应用 2由进程 4、 进程 5、 进程 6组成; 且进程间的创建关联关系包括进程 1创建进程 2 , 进程 2 创建进程 3 , 进程 3创建进程 4 , 进程 4创建进程 5; 若进程 1确定需要与 进程 4进程通信时, 则进程 1通过进程 1进程控制块中指向子进程控制块 的指针、 进程 2进程控制块中指向子进程控制块的指针、 进程 3进程控制 块中指向子进程控制块的指针找到进程 4 , 并获取进程 4的进程标识, 从 而根据该进程标识与进程 4进行通信。

可选的, 进程 1通过向进程 4对应的进程编号发送消息的方式与进程 4进行通信。

本实施例, 若所述第一进程根据所述进程间的创建关联关 系确定所述 第一进程与所述第二进程具有同一关联进程, 则所述第一进程根据进程间 的创建关联关系确定所述第二进程的进程标识 , 并根据所述进程标识与所 述第二进程进行通信, 解决了第一进程并不能够与其处于不同域的第 二进程 进行通信的问题, 使得第一进程与其处于不同域的第二进程之间 能够进行通 信。

可选的, 进程间的创建关联关系可以表示为进程树。

可选的, 在多内核操作系统中可以通过结束进程树删除 以一进程为根节 点的进程树上的所有进程。例如,进程 1创建进程 2、进程 2创建进程 3和 4、 进程 4创建进程 5 , 对进程 2进行结束进程树操作时, 则将进程 2、 3、 4、 5 都删除。

在多内核操作系统中, 通过结束进程树的方式, 能够清除木马进程。 一 些新型木马服务端程序运行后, 会同时生成两个木马进程, 即第一木马进程 和第二木马进程,这两个木马进程相互监控, 相互保护。若第一木马进程(或 第二木马进程)发现第二木马进程(或第一木 马进程)被结束时, 则会利用 自身复制一份, 迅速再生。 对于现有技术中的多内核操作系统, 即使发现了 这两个木马进程也无法通过结束进程的方式清 除木马。 由于两个木马进程必 然有一个是被另一个所创建, 则可以分别对两个木马进程使用结束进程树的 方式, 若对第一木马进程进行结束进程树后两个木马 进程还是不能被结束, 则说明第二木马进程创建了第一木马进程, 此时对第二木马进程进行结束进 程树, 则即可同时结束第一木马进程和第二木马进程 , 从而全面清除木马。

多内核操作系统进程处理方法实施例三

如图 1 所示的多内核操作系统进程处理方法实施例一 步骤 102, 可以包 括: 若所述第一进程与所述第二进程为父子进程关 系, 则所述第一进程通 过共享的管道描述符与所述第二进程进行通信 ; 或者, 所述第一进程通过 共享的文件描述符与所述第二进程进行信息共 享。

可选的, 各进程的进程控制块中除了在多内核操作系统 下具有的描述 当前进程的属性外, 还增加描述父子进程的进程控制块的指针。 在创建新 进程时, 父进程中加入指向新的子进程控制块的指针, 同样子进程中加入 指向父进程控制块的指针。

可选的, 父进程在创建子进程时, 父进程将其管道描述符或文件描述 符复制到子进程中, 父进程确定需要与子进程进行通信时, 则通过该管道 描述符与子进程进行通信, 或者, 通过该文件描述辅与子进程进行信息共 享。

可选的, 所述第一进程为父进程, 所述第二进程为子进程, 或者, 所 述第一进程为子进程, 所述第二进程为父进程。

本实施例, 若所述第一进程与所述第二进程为父子进程关 系, 则所述 第一进程通过共享的管道描述符与所述第二进 程进行通信; 或者, 所述第 一进程通过共享的文件描述符与所述第二进程 进行信息共享, 解决了第一 进程并不能够与其处于不同域的第二进程进行 通信的问题, 使得第一进程与 其处于不同域的第二进程之间能够进行通信。 同时, 父子进程之间通过共享 的管道描述符或共享的文件描述符进行通信, 使得通信方式更加灵活。

多内核操作系统进程处理方法实施例四

在多内核操作系统进程处理方法实施例三的基 础上, 在所述第一进程创 建所述第二进程时, 多内核操作系统进程处理方法还可以包括: 所述第一进 程标记运行所述第二进程的核的信息, 以使所述第二进程迁移到其它核 时, 所述第二进程根据该标记确定运行所述第二进 程的核的信息。

其中, 所述核的信息可以为硬件核信息或内核编号。

可选的, 各进程的进程控制块中加入运行该进程的核的 信息; 一方面 是考虑到多内核操作系统中内核独立调度的特 性, 进程通常会持久驻留在 某个硬件核上; 另一方面, 提供了进程对资源的范围控制权限的管理; 通 过在第一进程创建第二进程时, 标记运行第二进程的核的信息, 以使第二 进程迁移到其它核时, 第二进程根据该标记确定运行第二进程的核的 信 息, 以避免第二进程对其他核的资源进行越权访问 。

本实施例, 通过在第一进程创建第二进程时, 标记运行第二进程的核 的信息, 以使第二进程迁移到其它核时, 第二进程根据该标记确定运行第 二进程的核的信息, 以避免第二进程对其他核的资源进行越权访问 。

图 2为本发明进程处理装置实施例一的结构示意 , 如图 2所示, 本 实施例的装置可以包括: 第一通信模块 201和第二通信模块 202。 其中, 第一通信模块 201 , 用于确定需要与第二进程进行通信, 其中, 所述第一 进程与所述第二进程属于不同域; 第二通信模块 202 , 用于根据进程间的 创建关联关系与所述第二进程进行通信, 其中, 所述进程间的创建关联关 系, 包括进程创建时生成的被创建进程与创建进程 之间的关联关系。

本实施例的装置, 可以用于执行图 1所示方法实施例的技术方案, 其 实现原理和技术效果类似, 此处不再赘述。

进程处理装置实施例二

本实施例的装置在图 1所示装置结构的基础上, 进一步地, 第二通信 模块 202 , 具体可以用于: 若根据所述进程间的创建关联关系确定所述第 一进程与所述第二进程具有同一关联进程, 则根据进程间的创建关联关系 确定所述第二进程的进程标识, 并根据所述进程标识与所述第二进程进行 通信。

本实施例的装置, 可以用于执行多内核操作系统进程处理方法实 施例 二的技术方案, 其实现原理和技术效果类似, 此处不再赘述。

进程处理装置实施例三

实施例的装置在图 1所示装置结构的基础上, 进一步地, 第二通信模 块 202, 具体可以用于: 若所述第一进程与所述第二进程为父子进程关 系, 则通过共享的管道描述符与所述第二进程进行 通信; 或者, 所述通过共享 的文件描述符与所述第二进程进行信息共享。

本实施例的装置, 可以用于执行多内核操作系统进程处理方法实 施例 三的技术方案, 其实现原理和技术效果类似, 此处不再赘述。

图 3为本发明进程处理装置实施例四的结构示意 , 如图 3所示, 本 实施例的装置在进程处理装置实施例三结构的 基础上, 进一步地, 还可以 包括: 标记模块 203 , 该标记模块 203 , 用于在所述第一进程创建第二进 程时, 标记运行所述第二进程的核的信息, 以使所述第二进程迁移到其它 核时, 所述第二进程根据该标记确定运行所述第二进 程的核的信息。

本实施例的装置, 可以用于执行多内核操作系统进程处理方法实 施例 四的技术方案, 其实现原理和技术效果类似, 此处不再赘述。

本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读 取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述 的存储介质包括: ROM, RAM, 磁碟或者光盘等各种可以存储程序代码的介 最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述各实施例对本发明进行了详细的 说明, 本领域的普通 技术人员应当理解:其依然可以对前述各实施 例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替 换; 而这些修改或者替换, 并 不使相应技术方案的本质脱离本发明各实施例 技术方案的范围。