[發明專利]一種串行化的多進程任務調度方法和裝置有效
| 申請號: | 201810119531.0 | 申請日: | 2018-02-06 |
| 公開(公告)號: | CN108228330B | 公開(公告)日: | 2022-03-04 |
| 發明(設計)人: | 曾祥祿 | 申請(專利權)人: | 北京安博通科技股份有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京弘權知識產權代理有限公司 11363 | 代理人: | 逯長明;許偉群 |
| 地址: | 100120 北京市西城*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 串行 進程 任務 調度 方法 裝置 | ||
本申請公開一種串行化的多進程任務調度方法和裝置,其中,所述方法包括:S100、注冊特定事件和與所述特定事件對應的特定事件處理函數到特定事件列表;S200、啟動多項通過單線程管理的工作進程;S300、記錄與所述工作進程的子進程通信的ipc文件描述符;S400、注冊io事件、與所述io事件對應的io事件處理函數和io事件回調函數至io事件列表,其中,所述io事件為ipc文件描述符;S500、在所述特定事件列表和所述io事件列表中,查找待執行事件,添加所述待執行事件至待執行隊列中,讀取一個所述待執行事件;S600、執行所述步驟S500中讀取出的一個所述待執行事件,返回所述步驟S500。本申請中,管理進程采用單線程管理多項工作進程,簡化任務調度復雜度,沒有死鎖風險。
技術領域
本申請涉及多進程任務調度技術領域,尤其涉及一種串行化的多進程任務調度方法 和裝置。
背景技術
進程是正在運行的程序實體,并且包括這個運行的程序中占據的所有系統資源,比 如說CPU(寄存器),IO,內存,網絡資源等。進程常常被定義為程序的執行,可以把一 個進程看成是一個獨立的程序,在內存中有其完備的數據空間和代碼空間。一個進程所擁 有的數據和變量只屬于它自己。進程是具有一定獨立功能的程序關于某個數據集合上的 一次運行活動,是系統進行資源分配和調度的一個獨立單位。管理進程是操作系統的職 能之一,主要是對處理機進行管理。為了提高CPU的利用率而采用多道程序技術。通過 進程管理來協調多道進程之間的關系,使CPU得到充分的利用。
線程,有時被稱為輕量級進程,是程序執行流的最小單元。一個標準的線程由線程ID,當前指令指針,寄存器集合和堆棧組成。另外,線程是進程中的一個實體,是被系 統獨立調度和分派的基本單位,線程自己不擁有系統資源,只擁有一點在運行中必不可 少的資源,但它可與同屬一個進程的其它線程共享進程所擁有的全部資源。一個線程可 以創建和撤消另一個線程,同一進程中的多個線程之間可以并發執行。由于線程之間的 相互制約,致使線程在運行中呈現出間斷性。線程也有就緒、阻塞和運行三種基本狀態。
現有技術中,為了更好的利用多核CPU的性能,在軟件實現的方案中,經常會出現由一個管理進程啟動多個工作進程并發執行以獲得更高的效率的方案。此時管理進程就需要啟用多個線程同時和多個工作進程進行進程間通信,收集任務執行結果和下發新的任務指令,如圖1所示的現有技術中管理進程與工作進程通信的結構示意圖。當管理進 程同時處理多個工作進程發送的報告或請求時,會出現多個線程改變同一個全局變量的 情況,就要對全局變量進行加鎖以獲取數據的一致性,也有方案通過共享內存的方式進 行進程間通信,此時需要對共同訪問的內存區域進行加鎖來保證數據的一致性。
然而,采用現有技術時,任務調度過程中需要考慮全局變量的一致性,任務調度復雜度較高;如果通過加鎖的方式保證數據一致性的,此時同一時間只有一個線程或者進 程會訪問某個全局變量。加鎖順序不對或者任務狀態切換復雜時容易出現兩持鎖線程或 進程相互等待的情況,發生死鎖想象。
發明內容
本申請提供一種串行化的多進程任務調度方法和裝置,以解決管理進程在處理多進 程任務時,任務調度復雜度較高且易產生死鎖的技術問題。
第一方面,本申請提供一種串行化的多進程任務調度方法,所述方法包括:
S100、注冊特定事件和與所述特定事件對應的特定事件處理函數到特定事件列表;
S200、啟動多項通過單線程管理的工作進程;
S300、記錄與所述工作進程的子進程通信的ipc文件描述符;
S400、注冊io事件、與所述io事件對應的io事件處理函數和io事件回調函數至 io事件列表,其中,所述io事件為ipc文件描述符;
S500、在所述特定事件列表和所述io事件列表中,查找待執行事件,添加所述待執行事件至待執行隊列中,讀取一個所述待執行事件;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京安博通科技股份有限公司,未經北京安博通科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810119531.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種分組調度系統
- 下一篇:一種資源管理方法及系統





