亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種操作系統(tǒng)句柄管理方法

文檔序號(hào):6563536閱讀:280來源:國(guó)知局
專利名稱:一種操作系統(tǒng)句柄管理方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)和嵌入式操作系統(tǒng),更確切地說,涉及一種操 作系統(tǒng)的句柄管理方法。
背景技術(shù)
隨著計(jì)算機(jī)系統(tǒng)和嵌入式操作系統(tǒng)的迅速發(fā)展,嵌入式操作系統(tǒng)已經(jīng)融入 我們的生活,除了日常生活中可以看到的家電產(chǎn)品、工業(yè)于軍事應(yīng)用的獨(dú)立產(chǎn) 品之外,許多大型電腦系統(tǒng),事實(shí)上也是有許許多多小的嵌入式系統(tǒng)組成。 使用嵌入式操作系統(tǒng)的產(chǎn)品越來越多,使得如何開發(fā)高穩(wěn)定性,高效率的操作 系統(tǒng)和應(yīng)用程序成為非常關(guān)鍵的問題。在操作系統(tǒng)中,無論是對(duì)系統(tǒng)資源的訪 問還是進(jìn)程、線程的同步、控制等,都要涉及到對(duì)句柄的操作。如何增強(qiáng)系統(tǒng) 的句柄管理,提高句柄訪問效率,盡可能地提高運(yùn)行速度,是研究者所關(guān)心的 問題。
無論操作系統(tǒng)的資源采用何種形式進(jìn)行管理,效率和性能的穩(wěn)定性、安全 性總是處在第一位的。通過對(duì)句柄的管理可以知道應(yīng)用程序創(chuàng)建進(jìn)程的個(gè)數(shù)、 線程的個(gè)數(shù)、信號(hào)量的個(gè)數(shù)、事件的個(gè)數(shù),通過句柄可以快速的查找某個(gè)進(jìn)程 的父進(jìn)程和子進(jìn)程,以及在其中創(chuàng)建的信號(hào)量和事件;也可以查找到某個(gè)線程 的父線程和子線程以及在其中創(chuàng)建的信號(hào)量和事件。
現(xiàn)有技術(shù)在進(jìn)行句柄管理時(shí)一般采用針對(duì)每一類變量如進(jìn)程、線程等的句 柄分別建立鏈表,鏈表的每個(gè)節(jié)點(diǎn)一般包括句柄的類型和指向上一個(gè)節(jié)點(diǎn)的指 針以及指向下一個(gè)節(jié)點(diǎn)的指針。這樣的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型所包含的信息量較 少,不便于操作系統(tǒng)進(jìn)行資源管理和進(jìn)程控制。

發(fā)明內(nèi)容
為了便于操作系統(tǒng)對(duì)系統(tǒng)內(nèi)部資源的管理和訪問,解決現(xiàn)有技術(shù)句柄管理 方法信息量不足,管理不便的問題,本發(fā)明提供了一種新的操作系統(tǒng)句柄管理 方法。
本發(fā)明的操作系統(tǒng)句柄管理方法對(duì)每一類型的句柄分別建立鏈表,并進(jìn)行 句柄管理,所述鏈表的每個(gè)節(jié)點(diǎn)包括句柄的類型,節(jié)點(diǎn)所屬的進(jìn)程,節(jié)點(diǎn)所 屬的線程,本節(jié)點(diǎn)的私有數(shù)據(jù),指向本節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的指針,和指向本節(jié) 點(diǎn)的下一個(gè)節(jié)點(diǎn)的指針。
其中,所述句柄的類型包括進(jìn)程句柄、線程句柄、信號(hào)量句柄和事件句柄。
"優(yōu)選地,進(jìn)行句柄管理包括以下步驟初始化進(jìn)程、線程、信號(hào)量和事件 鏈表全局變量;創(chuàng)建進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn);將新增進(jìn)程、線 程、信號(hào)量和事件句柄的節(jié)點(diǎn)添加到相應(yīng)鏈表;從相應(yīng)鏈表中刪除已經(jīng)終止的 進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)。
優(yōu)選地,初始化鏈表全局變量時(shí),將各個(gè)鏈表全局變量的初值設(shè)定為零。
優(yōu)選地,所述創(chuàng)建進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn)包括以下步驟
申請(qǐng)一個(gè)進(jìn)程全局變量指針頭節(jié)點(diǎn);
申請(qǐng)一個(gè)線程全局變量指針頭節(jié)點(diǎn);
申請(qǐng)一個(gè)信號(hào)量全局變量指針頭節(jié)點(diǎn);
申請(qǐng)一個(gè)事件全局變量指針頭節(jié)點(diǎn)。
優(yōu)選地,所述將新增進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)添加到相應(yīng)鏈
表包括以下步驟
根據(jù)用戶創(chuàng)建的進(jìn)程,將進(jìn)程句柄節(jié)點(diǎn)添加到進(jìn)程鏈表中;
根據(jù)用戶創(chuàng)建的線程,將線程句柄節(jié)點(diǎn)添加到線程鏈表中;
根據(jù)用戶創(chuàng)建的信號(hào)量,將信號(hào)量句柄添加到信號(hào)量鏈表<中;
根據(jù)用戶創(chuàng)建的事件,將事件句柄添加到事件鏈表中。
優(yōu)選地,所述從相應(yīng)鏈表中刪除進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)包
括以下步驟
根據(jù)用戶刪除的進(jìn)程,從進(jìn)程鏈表中刪除相應(yīng)的進(jìn)程句柄節(jié)點(diǎn);
根據(jù)用戶刪除的線程,從線程鏈表中刪除相應(yīng)的線程句柄節(jié)點(diǎn);
根據(jù)用戶刪除的信號(hào)量,從信號(hào)量鏈表中刪除相應(yīng)的信號(hào)量節(jié)點(diǎn);
根據(jù)用戶刪除的事件,從事件鏈表中刪除相應(yīng)的事件句柄節(jié)點(diǎn)。
使用本發(fā)明的句柄管理方法,保存在鏈表中的信息比較全面,用戶可以快 速查找到每個(gè)線程,每個(gè)進(jìn)程所分配的信號(hào)量,事件句柄;反之,也可以由每 個(gè)信號(hào)量、事件查找到所屬的進(jìn)程和線程,從而實(shí)現(xiàn)真正意義上的系統(tǒng)句柄管 理,極大地方便了操作系統(tǒng)對(duì)資源和進(jìn)程的管理和訪問。


下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,附圖中
圖1是本發(fā)明的句柄管理系統(tǒng)結(jié)構(gòu)示意圖。
圖2是本發(fā)明句柄鏈表的節(jié)點(diǎn)數(shù)據(jù)類型示意圖。
圖3是本發(fā)明創(chuàng)建進(jìn)程、線程、信號(hào)量、事件節(jié)點(diǎn)添加到鏈表的方法流程 示意圖。
圖4是是本發(fā)明創(chuàng)建進(jìn)程、線程、信號(hào)量、事件節(jié)點(diǎn)添加到鏈表的方法流 程示意圖。
具體實(shí)施例方式
本發(fā)明的操作系統(tǒng)句柄管理方法對(duì)每一類型的句柄分別建立鏈表,并根據(jù) 鏈表進(jìn)行句柄管理。其中,句柄的類型包括進(jìn)程句柄、線程句柄、信號(hào)量句柄 和事件句柄。四種類型句柄的鏈表組成的柄管理系統(tǒng)結(jié)構(gòu)示意圖如圖l所示。 每種類型的句柄分別對(duì)應(yīng)一個(gè)雙向鏈表全局變量,鏈表的每個(gè)節(jié)點(diǎn)存儲(chǔ)句柄的 相應(yīng)信息。新創(chuàng)建或刪除句柄時(shí)則增加或刪除相應(yīng)節(jié)點(diǎn)。

表的每個(gè)節(jié)點(diǎn)的數(shù)據(jù)類型如圖2所示。由圖2可見,每個(gè)節(jié)點(diǎn)包括句柄的類型,節(jié)點(diǎn)所屬的進(jìn)程,節(jié)點(diǎn)所屬的線程,本節(jié)點(diǎn)的私有數(shù)據(jù),指向本節(jié) 點(diǎn)的上一個(gè)節(jié)點(diǎn)的指針,和指向本節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)的指針。由于保存在鏈表 中的信息比較全面,因此用戶可以快速査找到每個(gè)線程,每個(gè)進(jìn)程分配了多少個(gè)信號(hào)量,多少個(gè)事件句柄,反過來也可以由每個(gè)信號(hào)量、事件査找到所屬的 進(jìn)程和線程,達(dá)到真正意義上的系統(tǒng)句柄管理。
進(jìn)行句柄管理操作主要包括初始化進(jìn)程、線程、信號(hào)量和事件鏈表全局 變量;創(chuàng)建進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn);將新增進(jìn)程、線程、信號(hào) 量和事件句柄的節(jié)點(diǎn)添加到相應(yīng)鏈表;從相應(yīng)鏈表中刪除已經(jīng)終止的進(jìn)程、線 程、信號(hào)量和事件句柄的節(jié)點(diǎn)。
例如,初始化鏈表全局變量時(shí),將各個(gè)鏈表全局變量的初值設(shè)定為零。創(chuàng) 建進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn)包括以下步驟申請(qǐng)一個(gè)進(jìn)程全局變 量指針頭節(jié)點(diǎn),例如定義其相應(yīng)變量為pmcessh;申請(qǐng)一個(gè)線程全局變量指針 頭節(jié)點(diǎn),例如定義其相應(yīng)變量為threadh;申請(qǐng)一個(gè)信號(hào)量全局變量指針頭節(jié) 點(diǎn),例如定義其相應(yīng)變量為semah;申請(qǐng)一個(gè)事件全局變量指針頭節(jié)點(diǎn),例如 定義其相應(yīng)變量為eventh。
則各個(gè)變量的初值為processh=0; threadh=0; semah=0; eventh=0。
將新增進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)添加到相應(yīng)鏈表的方法流程 圖如圖3所示。可見,新增的節(jié)點(diǎn)被插入到相應(yīng)鏈表的頭部,包括以下步驟-按進(jìn)程節(jié)點(diǎn)大小分配一個(gè)節(jié)點(diǎn),并插入到進(jìn)程鏈表的頭部;根據(jù)線程節(jié)點(diǎn)大小 分配一個(gè)節(jié)點(diǎn),并插入到線程鏈表的頭部;根據(jù)信號(hào)量節(jié)點(diǎn)大小分配一個(gè)節(jié)點(diǎn), 并插入到信號(hào)量鏈表的頭部;根據(jù)事件節(jié)點(diǎn)大小分配一個(gè)節(jié)點(diǎn),并插入到事件 鏈表的頭部。其中鏈表的插入和現(xiàn)有技術(shù)對(duì)鏈表數(shù)據(jù)結(jié)構(gòu)的操作方法相同。
當(dāng)需要從相應(yīng)鏈表中刪除進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)時(shí),其方 法的流程圖如土4所示,包括以下步驟根據(jù)欲刪除進(jìn)程從進(jìn)程鏈表中査找到 相應(yīng)的節(jié)點(diǎn)并刪除;根據(jù)欲刪除的線程從線程鏈表中査找到相應(yīng)的節(jié)點(diǎn)并刪 除;根據(jù)欲刪除的信號(hào)量節(jié)點(diǎn)從信號(hào)量鏈表中查找到相應(yīng)的節(jié)點(diǎn)并刪除;根據(jù) 欲刪除的事件從事件鏈表中査找到相應(yīng)的節(jié)點(diǎn)并刪除。
權(quán)利要求
1. 一種操作系統(tǒng)句柄管理方法,對(duì)每一類型的句柄分別建立鏈表并進(jìn)行句柄管理,其特征在于,所述鏈表的每個(gè)節(jié)點(diǎn)包括句柄的類型,節(jié)點(diǎn)所屬的進(jìn)程,節(jié)點(diǎn)所屬的線程,本節(jié)點(diǎn)的私有數(shù)據(jù),指向本節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的指針,和指向本節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)的指針。
2、 根據(jù)權(quán)利要求1所述的操作系統(tǒng)句柄管理方法,其特征在于,所述句 柄的類型包括進(jìn)程句柄、線程句柄、信號(hào)量句柄和事件句柄。
3、 根據(jù)權(quán)利要求1所述的操作系統(tǒng)句柄管理方法,其特征在于,進(jìn)行句 柄管理包括以下步驟初始化進(jìn)程、線程、信號(hào)量和事件鏈表全局變量;創(chuàng)建 進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn);將新增進(jìn)程、線程、信號(hào)量和事件句 柄的節(jié)點(diǎn)添加到相應(yīng)鏈表;從相應(yīng)鏈表中刪除已經(jīng)終止的進(jìn)程、線程、信號(hào)量 和事件句柄的節(jié)點(diǎn)。
4、 根據(jù)權(quán)利要求3所述的操作系統(tǒng)句柄管理方法,其特征在于,初始化 鏈表全局變量時(shí),將各個(gè)鏈表全局變量的初值設(shè)定為零。
5、 根據(jù)權(quán)利要求3所述的操作系統(tǒng)句柄管理方法,其特征在于,所述創(chuàng) 建進(jìn)程、線程、信號(hào)量和事件鏈表頭節(jié)點(diǎn)包括以下步驟申請(qǐng)一個(gè)進(jìn)程全局變量指針頭節(jié)點(diǎn); 申請(qǐng)一個(gè)線程全局變量指針頭節(jié)點(diǎn); 申請(qǐng)一個(gè)信號(hào)量全局變量指針頭節(jié)點(diǎn); 申請(qǐng)一個(gè)事件全局變量指針頭節(jié)點(diǎn)。
6、 根據(jù)權(quán)利要求3所述的操作系統(tǒng)句柄管理方法,其特征在于,所述將 新增進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)添加到相應(yīng)鏈表包括以下步驟-根據(jù)用戶創(chuàng)建的進(jìn)程,將進(jìn)程句柄節(jié)點(diǎn)添加到進(jìn)程鏈表中; 根據(jù)用戶創(chuàng)建的線程,將線程句柄節(jié)點(diǎn)添加到線程鏈表中; 根據(jù)用戶創(chuàng)建的信號(hào)量,將信號(hào)量句柄添加到信號(hào)量鏈表中; 根據(jù)用戶創(chuàng)建的事件,將事件句柄添加到事件鏈表中。
7、 根據(jù)權(quán)利要求3所述的操作系統(tǒng)句柄管理方法,其特征在于,所述從 相應(yīng)鏈表中刪除進(jìn)程、線程、信號(hào)量和事件句柄的節(jié)點(diǎn)包括以下步驟: 根據(jù)用戶刪除的進(jìn)程,從進(jìn)程鏈表中刪除相應(yīng)的進(jìn)程句柄節(jié)點(diǎn); 根據(jù)用戶刪除的線程,從線程鏈表中刪除相應(yīng)的線程句柄節(jié)點(diǎn); 根據(jù)用戶刪除的信號(hào)量,從信號(hào)量鏈表中刪除相應(yīng)的信號(hào)量節(jié)點(diǎn); 根據(jù)用戶刪除的事件,從事件鏈表中刪除相應(yīng)的事件句柄節(jié)點(diǎn)。
全文摘要
本發(fā)明涉及一種操作系統(tǒng)句柄管理方法,對(duì)每一類型的句柄分別建立鏈表并進(jìn)行句柄管理,所述鏈表的每個(gè)節(jié)點(diǎn)包括句柄的類型,節(jié)點(diǎn)所屬的進(jìn)程,節(jié)點(diǎn)所屬的線程,本節(jié)點(diǎn)的私有數(shù)據(jù),指向本節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的指針,和指向本節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)的指針。使用本發(fā)明的句柄管理方法,保存在鏈表中的信息比較全面,用戶可以快速查找到每個(gè)線程,每個(gè)進(jìn)程所分配的信號(hào)量,事件句柄;反之,也可以由每個(gè)信號(hào)量、事件查找到所屬的進(jìn)程和線程,從而實(shí)現(xiàn)真正意義上的系統(tǒng)句柄管理,極大地方便了操作系統(tǒng)對(duì)資源和進(jìn)程的管理和訪問。
文檔編號(hào)G06F9/46GK101206586SQ200610157589
公開日2008年6月25日 申請(qǐng)日期2006年12月19日 優(yōu)先權(quán)日2006年12月19日
發(fā)明者胡本平 申請(qǐng)人:康佳集團(tuán)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1