国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      命令管理裝置及其命令管理方法

      文檔序號:6485960閱讀:225來源:國知局
      命令管理裝置及其命令管理方法
      【專利摘要】本發(fā)明提供一種命令管理裝置,包括:注冊模塊,其用于注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù);接收模塊,其用于接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素;處理模塊,其用于判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。相應(yīng)地,提供一種命令管理方法。本發(fā)明使用注冊的方式進(jìn)行命令的采集,便于命令的維護(hù)與擴(kuò)展。
      【專利說明】命令管理裝置及其命令管理方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計(jì)算機(jī)處理系統(tǒng)【技術(shù)領(lǐng)域】,尤其涉及一種命令管理裝置及其命令管理方法。
      【背景技術(shù)】
      [0002]隨著計(jì)算機(jī)處理系統(tǒng)技術(shù)的發(fā)展,目前出現(xiàn)了許多各種類型的計(jì)算機(jī)處理系統(tǒng)應(yīng)用,例如,嵌入式系統(tǒng)。應(yīng)用嵌入式系統(tǒng)的嵌入式設(shè)備,例如,電視機(jī)頂盒、電梯、公交卡刷卡機(jī)、自動取款機(jī)、KTV點(diǎn)唱機(jī)、全自動洗衣機(jī)等。在嵌入式設(shè)備中,為了更好更高效地控制設(shè)備,尤其是那些沒有n (用戶界面)的設(shè)備,命令行的操作就顯得至關(guān)重要,而命令行的操作直接與嵌入式設(shè)備里的命令行管理方法相關(guān)。
      [0003]現(xiàn)有的命令行管理方法通常是把所有的命令放在若干個(gè)數(shù)組中,然后配上執(zhí)行函數(shù)(例如,可參見發(fā)表于《今日電子》2009年第8期的文章“智能命令行設(shè)計(jì)及其在SOPC系統(tǒng)中的應(yīng)用”)。這種方法很簡單,但是比較死板,不能夠處理比較復(fù)雜的情況,不適合命令的擴(kuò)展,命令很多,層次很多時(shí)就容易產(chǎn)生沖突。此外,這種方法不方便維護(hù),具體來講,很容易在多個(gè)程序員開發(fā)不同模塊時(shí)產(chǎn)生命令重復(fù)定義的沖突,給維護(hù)帶來很大成本。

      【發(fā)明內(nèi)容】

      [0004]為了解決上述問題,本發(fā)明提供一種命令管理裝置及其命令管理方法,以實(shí)現(xiàn)更簡單、更高效的命令管理方式。
      [0005]為了實(shí)現(xiàn)以上目的,本發(fā)明提供的命令管理裝置包括:
      [0006]注冊模塊,其用于注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù);
      [0007]接收模塊,其用于接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素;
      [0008]處理模塊,其用于判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。
      [0009]優(yōu)選的是,所述注冊的命令的參數(shù)包括以下至少之一:元素的順序、該命令的功能和該命令的應(yīng)用范圍。
      [0010]進(jìn)一步優(yōu)選的是,所述注冊的命令的功能定義在該命令的回調(diào)函數(shù)中,所述使用所述注冊的命令的處理包括:調(diào)用所述注冊的命令的回調(diào)函數(shù)。
      [0011]優(yōu)選的是,將所述注冊的命令的參數(shù)保存在以下之一:樹結(jié)構(gòu)、文件列表。
      [0012]優(yōu)選的是,所述注冊模塊還用于注冊視圖,所述視圖表示命令層次。
      [0013]優(yōu)選的是,如果所述注冊的命令的參數(shù)保存在樹結(jié)構(gòu)中,則保存所述注冊的命令的參數(shù)的處理包括:
      [0014]將所述注冊的命令的參數(shù)保存在一顆樹中,其中,一棵樹表示一個(gè)視圖,其樹結(jié)構(gòu)的根節(jié)點(diǎn)為視圖對象,根節(jié)點(diǎn)的子節(jié)點(diǎn)為視圖對象或命令對象,命令對象節(jié)點(diǎn)的子節(jié)點(diǎn)為命令元素對象,所述視圖對象表示命令的層次,所述命令對象表示命令元素的順序。[0015]進(jìn)一步優(yōu)選的是,每個(gè)命令對象節(jié)點(diǎn)和作為其子節(jié)點(diǎn)的命令元素對象構(gòu)成二叉樹。
      [0016]本發(fā)明同時(shí)提供一種命令管理方法,包括:
      [0017]注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù);
      [0018]重復(fù)執(zhí)行以下處理:
      [0019]接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素;
      [0020]判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。
      [0021]優(yōu)選的是,所述方法還包括:
      [0022]在注冊的命令的回調(diào)函數(shù)中定義該命令的功能;
      [0023]所述使用所述注冊的命令的處理包括:調(diào)用所述注冊的命令的回調(diào)函數(shù)。
      [0024]優(yōu)選的是,所述注冊命令的元素的處理還包括注冊視圖,所述視圖表示命令層次。
      [0025]優(yōu)選的是,如果所述注冊的命令的參數(shù)保存在樹結(jié)構(gòu)中,則保存所述注冊的命令的參數(shù)的處理包括:
      [0026]將所述注冊的命令的參數(shù)保存在一顆樹中,其中,一棵樹表示一個(gè)視圖,其樹結(jié)構(gòu)的根節(jié)點(diǎn)為視圖對象,根節(jié)點(diǎn)的子節(jié)點(diǎn)為視圖對象或命令對象,命令對象節(jié)點(diǎn)的子節(jié)點(diǎn)為命令元素對象,所述視圖對象表示命令的層次,所述命令對象表示命令元素的順序。
      [0027]本發(fā)明的技術(shù)效果如下:
      [0028](I)命令管理方式靈活,方便命令的參數(shù)的擴(kuò)展,適用于那些需要強(qiáng)大命令行支持的設(shè)備,例如交換機(jī)和路由器;
      [0029](2)由于采用命令注冊方式,而不是采用集中式的方式管理,所以方便計(jì)算機(jī)處理系統(tǒng)中的其它軟件模塊自己管理自己的命令,也方便開發(fā)人員自己維護(hù)自己命令,再也不用將所有命令放到一起去維護(hù),杜絕了命令的重復(fù)定義,因此便于維護(hù),而且維護(hù)成本低;
      [0030](3)命令查找快,效率高。
      【專利附圖】

      【附圖說明】
      [0031]圖1是根據(jù)本發(fā)明實(shí)施例的命令管理裝置的結(jié)構(gòu)圖;
      [0032]圖2是根據(jù)本發(fā)明實(shí)施例的命令注冊步驟的流程圖;
      [0033]圖3是根據(jù)本發(fā)明實(shí)施例的樹結(jié)構(gòu)的示圖;
      [0034]圖4是根據(jù)本發(fā)明實(shí)施例的命令處理步驟的流程圖。
      【具體實(shí)施方式】
      [0035]以下,將參照附圖和實(shí)施例對本發(fā)明進(jìn)行描述。
      [0036]總地來講,本發(fā)明提供的命令管理裝置包括注冊模塊、接收模塊和處理模塊。其中,注冊模塊用于注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù)。接收模塊用于接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素。處理模塊用于判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。[0037]這里,所述注冊的命令的參數(shù)包括以下至少之一:元素的順序、該命令的功能和該命令的應(yīng)用范圍。注冊的命令的功能可定義在該命令的回調(diào)函數(shù)中,在使用注冊的命令時(shí),調(diào)用該命令的回調(diào)函數(shù)即可。注冊的命令的參數(shù)可保存在樹結(jié)構(gòu)、文件列表等數(shù)據(jù)結(jié)構(gòu)中。此外,注冊模塊還可用于注冊視圖,這里,視圖表示命令層次。
      [0038]以下將結(jié)合具體實(shí)施例對本發(fā)明的具體實(shí)現(xiàn)進(jìn)行詳細(xì)描述。在本實(shí)施例中,注冊命令的參數(shù)保存在樹結(jié)構(gòu)中,并將注冊命令的功能定義在相應(yīng)命令的回調(diào)函數(shù)中。
      [0039]圖1是根據(jù)本發(fā)明實(shí)施例的命令管理裝置的結(jié)構(gòu)圖。如圖1中的虛線框所示,該命令管理裝置包括注冊模塊1、接收模塊2和處理模塊3。
      [0040]注冊模塊I可進(jìn)一步包括命令注冊接口 11、語法解析模塊12和樹結(jié)構(gòu)建立模塊13,其中,命令注冊接口 11用于注冊命令的元素、元素的順序、回調(diào)函數(shù)和應(yīng)用范圍;語法解析模塊12用于對注冊的命令進(jìn)行語法解析;樹結(jié)構(gòu)建立模塊13用于根據(jù)解析結(jié)果建立樹結(jié)構(gòu)。
      [0041]命令注冊接口 11又可進(jìn)一步包括命令元素對象接口 111、命令對象接口 112和視圖對象接口 113,其中,命令元素對象接口 111用于注冊命令的元素;命令對象接口 112用于注冊命令元素的順序和回調(diào)函數(shù);和視圖對象接口 113用于注冊視圖,所述視圖表示命令層次。具體來講,在本發(fā)明中,為了方便管理,將命令分成很多層次,例如接口層或管理層,將每個(gè)層次定義為一個(gè)視圖,不同的視圖表示不同的命令層次。
      [0042]在本實(shí)施例中,一顆樹表不一個(gè)視圖(即,一個(gè)命令層次),其樹結(jié)構(gòu)的根節(jié)點(diǎn)為視圖對象,根節(jié)點(diǎn)的子節(jié)點(diǎn)為視圖對象或命令對象,命令對象節(jié)點(diǎn)的子節(jié)點(diǎn)為命令元素對象。
      [0043]以下,將給出本實(shí)施例的一個(gè)具體示例。
      [0044]在本不例中,利用Lex (Lexical Complier)工具和 Yacc (YetAnother ComplierComplier)工具來注冊命令和對接收的命令進(jìn)行處理。由于Lex工具和Yacc工具是本領(lǐng)域技術(shù)人員公知的技術(shù),因此,本文省略其描述。
      [0045]此外,在本示例中,將使用以下幾個(gè)概念:
      [0046](I) Cmo (command object):命令元素對象,用來表示命令的基本元素;
      [0047](2) Cmd(command):命令對象,一條條的命令叫做Cmd,—般情況下一組命令由一個(gè)個(gè)Cmd組成,一個(gè)Cmd由若干個(gè)Cmo組成;
      [0048](3) View:視圖對象,不同的視圖代表不同的命令的不同應(yīng)用范圍,主要是方便用戶了解正在操作的對象范圍。
      [0049]相應(yīng)地,命令元素對象接口 111為Cmo接口,命令對象接口 112為Cmd接口,視圖對象接口 113為View接口。
      [0050]圖2是本示例的由注冊模塊I執(zhí)行的命令注冊步驟的流程圖。
      [0051]如圖2所示,首先,在步驟S201中,根據(jù)所需要使用的命令編寫Yacc語法分析腳本,然后用Yacc工具生成相應(yīng)的C語言文件,即,語法分析器。這里,需要注意:(I)與Lex的配合使用,具體來講,要注意函數(shù)的相互調(diào)用;(2)與C代碼的結(jié)合,這里所述的詞法分析主要是完成詞匯模式(或者常規(guī)表達(dá)式)的解析,解析結(jié)果給建立樹結(jié)構(gòu)提供依據(jù),因此,在Yacc腳本中,C語言的部分要將解析結(jié)果提供給樹結(jié)構(gòu)建立函數(shù)。
      [0052]接著,在步驟S202中,通過Cmo接口注冊Cmo對象。
      [0053]例如命令ping ipAddress,這條命令由兩個(gè)Cmo組成,其中類型為關(guān)鍵字的ping和類型為ip地址的ipAddress。按照命令元素的順序進(jìn)行注冊,例如,將先注冊的元素標(biāo)示為$1,后注冊的元素標(biāo)示為$2,依次類推。Cmo的類型是在Lex腳本中定義的,部分定義如下表1所示。
      [0054]表1
      【權(quán)利要求】
      1.一種命令管理裝置,包括: 注冊模塊,其用于注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù); 接收模塊,其用于接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素; 處理模塊,其用于判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。
      2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述注冊的命令的參數(shù)包括以下至少之一:元素的順序、該命令的功能和該命令的應(yīng)用范圍。
      3.根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述注冊的命令的功能定義在該命令的回調(diào)函數(shù)中,所述使用所述注冊的命令的處理包括:調(diào)用所述注冊的命令的回調(diào)函數(shù)。
      4.根據(jù)權(quán)利要求1所述的裝置,其特征在于,將所述注冊的命令的參數(shù)保存在以下之一:樹結(jié)構(gòu)、文件列表。
      5.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述注冊模塊還用于注冊視圖,所述視圖表示命令層次。
      6.根據(jù)權(quán)利要求4所述的裝置,其特征在于,如果所述注冊的命令的參數(shù)保存在樹結(jié)構(gòu)中,則保存所述注冊的命令的參數(shù)的處理包括: 將所述注冊的命令的參數(shù)保存在一顆樹中,其中,一棵樹表示一個(gè)視圖,其樹結(jié)構(gòu)的根節(jié)點(diǎn)為視圖對象,根節(jié)點(diǎn)的子節(jié)點(diǎn)為視圖對象或命令對象,命令對象節(jié)點(diǎn)的子節(jié)點(diǎn)為命令元素對象,所述視圖對象表示命令的層次,所述命令對象表示命令元素的順序。
      7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,每個(gè)命令對象節(jié)點(diǎn)和作為其子節(jié)點(diǎn)的命令元素對象構(gòu)成二叉樹。
      8.一種命令管理方法,包括: 注冊命令的元素,對注冊的元素進(jìn)行解析,確定所述注冊的命令的參數(shù),并保存所述注冊的命令的參數(shù); 重復(fù)執(zhí)行以下處理: 接收輸入的命令,其中,所述輸入的命令包括至少一個(gè)元素; 判斷輸入的所述命令中的元素與注冊的所述命令的元素是否匹配,如果相匹配,則使用所述注冊的命令。
      9.根據(jù)權(quán)利要求8所述的方法,其特征在于,還包括: 在注冊的命令的回調(diào)函數(shù)中定義該命令的功能; 所述使用所述注冊的命令的處理包括:調(diào)用所述注冊的命令的回調(diào)函數(shù)。
      10.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述注冊命令的元素的處理還包括注冊視圖,所述視圖表示命令層次。
      11.根據(jù)權(quán)利要求8所述的方法,其特征在于,如果所述注冊的命令的參數(shù)保存在樹結(jié)構(gòu)中,則保存所述注冊的命令的參數(shù)的處理包括: 將所述注冊的命令的參數(shù)保存在一顆樹中,其中,一棵樹表示一個(gè)視圖,其樹結(jié)構(gòu)的根節(jié)點(diǎn)為視圖對象,根節(jié)點(diǎn)的子節(jié)點(diǎn)為視圖對象或命令對象,命令對象節(jié)點(diǎn)的子節(jié)點(diǎn)為命令元素對象,所述視圖對象表示命令的層次,所述命令對象表示命令元素的順序。
      【文檔編號】G06F9/46GK103488524SQ201210194062
      【公開日】2014年1月1日 申請日期:2012年6月13日 優(yōu)先權(quán)日:2012年6月13日
      【發(fā)明者】郭銳 申請人:北大方正集團(tuán)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1