亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于選項標(biāo)識的指令解析方法及裝置與流程

文檔序號:11729158閱讀:148來源:國知局
本發(fā)明涉及軟件架構(gòu)
技術(shù)領(lǐng)域
:,特別是涉及一種基于選項標(biāo)識的指令解析方法及裝置。
背景技術(shù)
::目前,在軟件架構(gòu)中,針對指令的處理架構(gòu)都是固定的架構(gòu),當(dāng)需要后續(xù)新增指令擴展時,需要編寫新的擴展指令,重新構(gòu)建信的指令處理架構(gòu),這樣重新構(gòu)建指令處理架構(gòu)的過程非常繁瑣,指令處理架構(gòu)的易用性較低,沒有實現(xiàn)模塊化編程,不能滿足軟件架構(gòu)的產(chǎn)品的特定需求,一旦有新的產(chǎn)品需求如指令擴展,則需要重新構(gòu)建整個軟件架構(gòu),重新構(gòu)建針對指令的處理架構(gòu),易用性較低。技術(shù)實現(xiàn)要素:本發(fā)明的目的是提供一種基于選項標(biāo)識的指令解析方法及裝置,以實現(xiàn)提高指令擴展的易用性。為解決上述技術(shù)問題,本發(fā)明提供一種基于選項標(biāo)識的指令解析方法,該方法包括:接收用戶下發(fā)的指令;依據(jù)指令名字progname和操作名字verbname查詢到指令對應(yīng)的操作option;依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果。優(yōu)選的,依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果之后,還包括:依據(jù)解析結(jié)果封裝需求request,對封裝后的需求request進行指令解析處理。優(yōu)選的,所述對封裝后的需求request進行指令解析處理,包括:依據(jù)封裝后的需求request中的task_id信息從模板table中獲取模板對象;依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析。優(yōu)選的,所述依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析之后,還包括:解析完畢后,依據(jù)task_id信息查詢指令接口handle。本發(fā)明還提供一種基于選項標(biāo)識的指令解析裝置,用于實現(xiàn)上述基于選項標(biāo)識的指令解析方法,包括:接收模塊,用于接收用戶下發(fā)的指令;查詢模塊,用于依據(jù)指令名字progname和操作名字verbname查詢到指令對應(yīng)的操作option;解析模塊,用于依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果。優(yōu)選的,所述裝置還包括:封裝模塊,用于依據(jù)解析結(jié)果封裝需求request,對封裝后的需求request進行指令解析處理。優(yōu)選的,所述封裝模塊包括:模板對象獲取單元,用于依據(jù)封裝后的需求request中的task_id信息從模板table中獲取模板對象;匹配解析單元,用于依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析。優(yōu)選的,所述封裝模塊還包括:查詢單元,用于解析完畢后,依據(jù)task_id信息查詢指令接口handle。本發(fā)明所提供的一種基于選項標(biāo)識的指令解析方法及裝置,接收用戶下發(fā)的指令;依據(jù)指令名字progname和操作名字verbname查詢到指令對應(yīng)的操作option;依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果??梢姡峁┝艘环N依據(jù)option選型標(biāo)識進行解析封裝的指令處理策略,主要實現(xiàn)為單個指令由獨立的數(shù)據(jù)結(jié)構(gòu)維護,使得指令封裝與解析流程模塊化,具備很好的維護性及擴展性,如此新增指令以模塊形式融入軟件架構(gòu),實現(xiàn)模塊化編程,基于指令標(biāo)識選型進行選項解析具備很高的易用性,便于后續(xù)新增指令擴展,提高易用性。附圖說明為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖1為本發(fā)明所提供的一種基于選項標(biāo)識的指令解析方法的流程圖;圖2為指令解析過程具體流程圖;圖3為本發(fā)明所提供的一種基于選項標(biāo)識的指令解析裝置的結(jié)構(gòu)示意圖。具體實施方式本發(fā)明的核心是提供一種基于選項標(biāo)識的指令解析方法及裝置,以實現(xiàn)提高指令擴展的易用性。為了使本
技術(shù)領(lǐng)域
:的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。請參考圖1,圖1為本發(fā)明所提供的一種基于選項標(biāo)識的指令解析方法的流程圖,該方法包括:s11:接收用戶下發(fā)的指令;s12:依據(jù)指令名字progname和操作名字verbname查詢到指令對應(yīng)的操作option;s13:依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果。可見,該方法提供了一種依據(jù)option選型標(biāo)識進行解析封裝的指令處理策略,主要實現(xiàn)為單個指令由獨立的數(shù)據(jù)結(jié)構(gòu)維護,使得指令封裝與解析流程模塊化,具備很好的維護性及擴展性,如此新增指令以模塊形式融入軟件架構(gòu),實現(xiàn)模塊化編程,基于指令標(biāo)識選型進行選項解析具備很高的易用性,便于后續(xù)新增指令擴展,提高易用性。進一步的,步驟s13之后,還包括:依據(jù)解析結(jié)果封裝需求request,對封裝后的需求request進行指令解析處理。進一步的,對封裝后的需求request進行指令解析處理的過程具體為:依據(jù)封裝后的需求request中的task_id信息從模板table中獲取模板對象;依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析。進一步的,依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析之后,還包括:解析完畢后,依據(jù)task_id信息查詢指令接口handle。本方法提供了一種依據(jù)option選型標(biāo)識進行解析封裝的指令處理策略,主要實現(xiàn)為單個指令由獨立的數(shù)據(jù)結(jié)構(gòu)維護,包括選項內(nèi)容、模板內(nèi)容、選項標(biāo)識、選型描述等部分,使得指令封裝與解析流程模塊化,具備很好的維護性及擴展性。本方法主要處理流程為:用戶下發(fā)設(shè)置/查詢指令,首先依據(jù)progname(指令名字)verbname(操作名字)查詢對應(yīng)操作option,因為所有指令的操作option均由一個全局的table進行維護。查詢成功后,依據(jù)該指令對應(yīng)option定義的標(biāo)識選型進行指令選項解析進而依據(jù)解析結(jié)果封裝對應(yīng)request;將request發(fā)送至處理模塊便進入指令解析處理階段,該階段通過task_id從模板table中獲取對應(yīng)指令的模板對象,進而依據(jù)模板中存儲的控制域field對接收的request進行匹配解析,解析完畢可依據(jù)task_id獲取對應(yīng)task_handle進而進入具體的指令執(zhí)行階段。本方法新增指令以模塊形式融入軟件架構(gòu),實現(xiàn)模塊化編程,并且基于指令標(biāo)識選型進行選項解析具備很高的易用性。本方法從軟件架構(gòu)上來講,針對每個獨立的指令,采用獨立的頭文件進行維護,內(nèi)部包含指令數(shù)據(jù)結(jié)構(gòu)、指令選項描述結(jié)構(gòu)、指令選項模板、模板table以及定義的其他關(guān)鍵數(shù)據(jù)結(jié)構(gòu)。模塊初始化模塊數(shù)據(jù)結(jié)構(gòu)中只需要定義公共控制域,其他采用#include策略添加對應(yīng)指令頭文件方式進行新增。指令新增實例代碼如下:由于指令頭文件包含各個階段所需數(shù)據(jù)結(jié)構(gòu)對象,需要針對性隔離編譯,采用常規(guī)條件編譯策略即可,模塊條件編譯代碼如下:#ifdeffunc_xx{cmd_name,cmd_size,null};#endif其中指令選項描述結(jié)構(gòu)主要用于指令解析封裝階段,用于分析指令選項的類型、長度、內(nèi)容等信息為后續(xù)分析解析提供更好的便利性;指令選項模板以及模板table對象主要用于指令解析處理階段,主要用于匹配解析選項進而依據(jù)解析選項內(nèi)容查詢對應(yīng)處理handle,從而完成整個指令的處理工作。本方法依據(jù)產(chǎn)品需求定義,采用新型指令處理架構(gòu),主要目的為便于后續(xù)新增指令擴展而設(shè)計的一套易用性架構(gòu),更好的實現(xiàn)模塊化編程思路,進而滿足產(chǎn)品特定需求。詳細的,本發(fā)明主要包含指令解析封裝和指令解析處理兩個階段,其中指令解析封裝階段主要分為構(gòu)建option,解析指令選項以及構(gòu)建request,option構(gòu)建方法如下:數(shù)據(jù)結(jié)構(gòu):具體指令實現(xiàn)(cmd_funcx.h):指令解析封裝階段用到的選項結(jié)構(gòu),其中sd_optionx為對應(yīng)的選項標(biāo)識指令解析階段主要分為獲取模板,依據(jù)模板解析選項,template構(gòu)建方法如下:模板數(shù)據(jù)結(jié)構(gòu):具體指令模板結(jié)構(gòu)(cmd_funcx.h):如圖2所示,為總體流程圖,用戶下發(fā)設(shè)置/查詢指令,首先校驗指令progname、verbname,查看是否支持該指令,然后從optiontable中獲取對應(yīng)該指令的option信息,進而依據(jù)該指令事先定義的sd信息確認指令各個參數(shù)域,待指令解析完成后構(gòu)建對應(yīng)指令request,通過發(fā)送接口發(fā)送至處理模塊,處理模塊接收到request,依據(jù)request中的task_id信息從templatetable中提取對應(yīng)該指令的template信息,提取成功后,依據(jù)template中事先存儲的field信息校對request中的sd對應(yīng)的field信息,校驗成功后通過task_id查詢對應(yīng)的指令handle接口進行處理,執(zhí)行完畢即完成整個指令執(zhí)行流程。參考圖3,圖3為本發(fā)明所提供的一種基于選項標(biāo)識的指令解析裝置的結(jié)構(gòu)示意圖,用于實現(xiàn)上述基于選項標(biāo)識的指令解析方法,該裝置包括:接收模塊101,用于接收用戶下發(fā)的指令;查詢模塊102,用于依據(jù)指令名字progname和操作名字verbname查詢到指令對應(yīng)的操作option;解析模塊103,用于依據(jù)操作option中定義的標(biāo)識選項進行指令選擇解析,得到解析結(jié)果??梢姡撗b置中采用了一種依據(jù)option選型標(biāo)識進行解析封裝的指令處理策略,主要實現(xiàn)為單個指令由獨立的數(shù)據(jù)結(jié)構(gòu)維護,使得指令封裝與解析流程模塊化,具備很好的維護性及擴展性,如此新增指令以模塊形式融入軟件架構(gòu),實現(xiàn)模塊化編程,基于指令標(biāo)識選型進行選項解析具備很高的易用性,便于后續(xù)新增指令擴展,提高易用性?;谏鲜鲅b置,進一步的,所述裝置還包括:封裝模塊,用于依據(jù)解析結(jié)果封裝需求request,對封裝后的需求request進行指令解析處理。進一步的,封裝模塊包括:模板對象獲取單元,用于依據(jù)封裝后的需求request中的task_id信息從模板table中獲取模板對象;匹配解析單元,用于依據(jù)模板對象中存儲的控制域field對封裝后的需求request進行匹配解析。進一步的,封裝模塊還包括:查詢單元,用于解析完畢后,依據(jù)task_id信息查詢指令接口handle以上對本發(fā)明所提供的一種基于選項標(biāo)識的指令解析方法及裝置進行了詳細介紹。本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對于本
技術(shù)領(lǐng)域
:的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權(quán)利要求的保護范圍內(nèi)。當(dāng)前第1頁12當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1