新四季網

在主從機之間單個物理信道上發送命令/響應對的多重交換的邏輯流的協議和跟蹤及監...的製作方法

2023-05-27 16:16:31 3

專利名稱:在主從機之間單個物理信道上發送命令/響應對的多重交換的邏輯流的協議和跟蹤及監 ...的製作方法
技術領域:
本發明涉及對於在主收發器和從收發器之間在單個物理交換信道上發送命令/響應對的多重交換的邏輯流的協議,並涉及這種協議的應用,尤其涉及對安裝在微處理器卡上的小程序(appletJava程序)執行的跟蹤,監視,或排錯的系統的實現。
背景技術:
當前,在主的和從屬收發器之間交換數據或信息的協議極受關注,因為該協議有可能影響可靠、完善、穩定的數據交換,從而實現在具有相當的計算和處理能力的主單元和由於受存儲能力限制只有低得多的計算和處理能力的從屬單元之間的信息交換。
對由卡閱讀器(CAD)-微處理器卡、晶片卡(稱為嵌入式系統的卡對)組成的計算機系統,情況尤其如此,對此ISO 7816標準定義了兩個用於在晶片卡和CAD閱讀器之間通訊的協議。
具體說來,此兩個協議由參數T=0和T=1定義,每個對應於「半雙工」協議,卡閱讀器和晶片卡兩者中只有一個能在給定瞬時分別發送數據到另一方。
卡插入卡閱讀器之後,由卡閱讀器對卡提供支持,因此在主收發器(CAD閱讀器)和從屬收發器(晶片卡)之間在單個物理信道上發生數據交換。發送的信息單元稱為APDU(應用協議數據單元)。
從已有技術可知,在上述協議中,在命令APDU,或C-APDU和響應APDU,或R-APDU之間進行區分。
一個信息交換會話由一個或多個APDU交換組成。因此,一個APDU交換由一個C-APUD/R-APDU命令/響應對的交換組成,它總由主收發器單元發起,發送C-APDU到從屬收發器,後者通過R-APDU響應。在交換期間,主單元保持禁止而等待響應,從而包括由發送開始的後繼傳遞的命令/響應對的交換在主發送器和從屬發送器之間控制,並反過來也如此。
在最壞情況,不同於由主收發器,即CAD閱讀器希望採用的連續傳遞,通訊的單獨發起通過對從屬收發器,即晶片卡切斷電源而中斷整個交換對話。
但近來,在蝕刻集成電路的物理處理中的持續進步,以及因而在給定矽片的體積或面積中進行計算、處理及存儲的能力的持續提高促進了帶有多種功能的從屬收發器的出現。在多應用晶片方面這種情況尤其突出。例如,某些晶片卡能加入某些應用,而CAD閱讀器能尋找以單獨地與應用通訊。具體說來,鑑於CAD閱讀器展示了無限的能力,在此類CAD閱讀器上可安裝幾個應用,例如設置在銀行或GSM行動電話終端的自動售票機;包括從屬收發器,即多應用晶片卡的系統隨即面臨在基本上獨立的應用之間的單個信息信道上通過命令/響應對進行多重信息交換。
實際上,某些晶片卡可加入若干文件系統,若干小程序或在後者設置的服務。特別是,GSM卡既適合用戶的認證,並作為便攜的嵌入系統,也適應於小程序的執行。
為此目的,ISO 7816-4標準的5.5節定義了邏輯信道的概念。這些邏輯信道使得有可能解耦(decouple)出現在晶片卡上各種參與者、小程序或服務的APDU交換的會話連接。所提出的標準化過程非常簡單,一個晶片卡能管理多至4個序號為0到3的邏輯信道。這些邏輯信道可以藉助如ISO 7816-4標準的6.16節定義的管理信道標準命令分別打開或關閉。接著,對C-APDU命令的目的邏輯信道的索引號以ADPU的類別碼(CLA)的2個低位進行編碼。
因此,由ISO 7816-4標準定義的各種邏輯信道在邏輯上解耦,但是在單個物理交換信道上的APDU交換對CAD閱讀器和它的各種應用,以及對能在晶片卡上執行的各種小程序及服務仍保持禁止,由於分辨各個邏輯信道的命令/響應對的同時多重出現而易於產生的衝突的問題還沒有特別解決,特別在ISO7816-4標準的5.5.1節,段4所描述的內容在發出下一個命令/響應對之前,前一個命令/響應對的發出必須結束,命令和響應必須不在若干邏輯信道上嵌套,在接收一命令並發出對應的響應之間,單個邏輯信道必須激活。

發明內容
本發明的目的是藉助消除強加在多個邏輯信道上的限制以彌補通過以前技術的命令/響應對在主收發器及從屬收發器之間交換數據的協議中的缺陷。
本發明的另一個目的是藉助實現並發邏輯信道表述在主收發器和從屬收發之間的單個物理交換信道上為命令/響應對的多重交換而發送多個邏輯流的協議,其中每個並發的邏輯信道允許獨立交換命令/響應對,因而若干命令/響應對有可能在各個打開的並發信道上同時激活。
特別是,本發明的另一個目的是表述對於在主收發器與從屬收發器之間的單個物理交換信道上為命令/響應對的多重交換發送多個邏輯流的協議,其中如CAD閱讀器這樣的主收發器能夠在另一個並發的邏輯信道上起動一個命令/響應對,APDU,同時一個命令/響應對的交換已經在已激活的並發信道進行,連結到主收發器,CAD閱讀器,的各種應用使用至少一個由安裝在晶片卡中的從屬收發器,小程序或服務管理的應用,從而互相獨立地執行,而不會有任何執行衝突的危險。
相應地,本發明的另一個目的是對在主收發器和從屬收發器之間的單個物理交換信道上為命令/響應對的多重交換發送多個邏輯流的協議,其中不同的命令/響應對能在連接到由從屬收發器管理的各種應用的不同並發邏輯信道上交換,應用是如安裝在多應用晶片卡上的各種小程序或服務,這些應用藉助作為本發明的主題的協議的實現同時並獨立地執行。
本發明的另一個目的也是對在主收發器和從屬收發器之間的單個物理交換信道上為命令/響應對的多重交換發送多個邏輯流的協議,其中,每個並發邏輯信道上包括在進行中的命令/響應交換情況中的主收發器單獨起動時關閉。
本發明的另一個目的還是對在基本邏輯信道上交換命令/響應對的主收發器和從屬收發器之間的單個物理交換信道上為命令/響應對的多重交換發送多個邏輯流的協議。命令/響應對還可能在此主收發器和此從屬收發器之間的並發邏輯信道上交換,該命令/響應對組成由基本邏輯通路傳送的基本邏輯流和由並發邏輯信道傳送的並發邏輯流,這些邏輯流共存,以至從在單個物理交換信道上沒有衝突地交換命令/響應的過程中得益。
本發明的另一個目的是最終當主收發器包括CAD閱讀器,從屬收發器包括晶片卡時,該協議是為完全兼容ISO 7816標準的命令/響應對的技術規範的多重交換發送多個邏輯流的協議。
為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送多個邏輯流的協議,及本發明的主題關係到包括由主收發器起動的至少一個基本邏輯流的諸邏輯流,它們作為單個物理交換信道遵循相同的主/從關係,主的和從屬的收發器分別允許執行至少一個軟體應用。
值得注意的是,它包括在取作參考邏輯流的諸基本邏輯流之一中產生一組並發邏輯流,每個並發邏輯流由分段為命令/響應對的連續基本包形成。形成並發邏輯流組的連續基本包在參考邏輯流上發送,該組的兩個並發邏輯流能獨立並基本上同時地發送不同的命令/響應對。
命令/響應對的任何交換的起動和繼續在主收發器的啟動是根據在參考邏輯流上發送的特定命令完成,而連續基本包的分段在響應在此參考流上這些特定命令時發送的特定響應的起始完成。這一方面允許在主的和從屬的收發器的至少一對應用之間獨立並基本同時地交換命令/響應對,另一方面允許在物理交換信道上的不同於取作參考邏輯流的基本邏輯流上交換優先命令/響應對。
在閱讀說明書描述並注視下面的附圖後,能更好地理解對於為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送多個邏輯流的協議,以及用於跟蹤和監視安裝在如實現按照本發明的協議的嵌入式計算機系統上的小程序執行的系統。


圖1表示實現遵照本發明的協議的主要步驟的流程圖,此流程允許執行該協議,用於在出現單個基本邏輯流時為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送多個邏輯流;圖1b表示實現遵照本發明的協議的主要步驟的流程圖,該流程允許執行該協議,用於在出現多個基本邏輯流時為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送多個邏輯流;圖2a表示在基本邏輯流取作為參考邏輯流的情況,實現在基本邏輯流上交換的實現方式;圖2b表示在從屬收發器的起始將通過並發邏輯流將交換分割成連續的包的過程。
圖2c表示通過在主收發器和從屬收發器之間的兩個不同的並發邏輯流交叉兩個交換的連續包過程;圖2d表示在由並發邏輯流的另外的交換的長處理的過程中由並發邏輯流處理交換的過程;圖3a表示跟蹤和監視安裝在一個嵌入工計算機系統上的小程序的執行的計算機系統的功能示意圖,該嵌入式計算機實現為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送多個邏輯流的遵照本發明的協議,主收發器單元由引導模塊及CAD終端組成,從屬收發器單元由如晶片卡那樣的嵌入式計算機組成,單個物理交換信道包括滿足ISO 7816協議之一的鏈路組成;圖3b表示在安裝在嵌入式計算機系統中跟蹤及監視執行自動部分的執行的特定代理模塊,此嵌入式計算系統的作業系統,輸入/輸出功能(由APDU組成的邏輯I/O功能),監視和跟蹤執行自動執行的邏輯鏈路的原理圖,在非限制性實施例中,執行自動部分由與應用界面庫(API)有關的虛擬機組成;圖4a表示在用於跟蹤和監視如圖3a、3b所表示以非排錯方式遵照本發明的小程序的計算機系統的各單元之間完成的交換的時序圖,排錯功能來激活,在此情況,本系統基本上看成與以前技術的多應用晶片卡相關的CAD閱讀器;圖4b表示在用於跟蹤和監視如圖3a、3b所表示以排錯方式遵照本發明的小程序的執行的計算機系統的各單元之間完成的交換的時序圖,排錯功能被激活;圖4c表示在虛擬機達到稱為斷點訪問的停止點狀態時,在用於跟蹤和監視如圖3a、3b和4c所表示的按本發明的小程序的計算機系統的各個單元之間執行交換的時序圖。
具體實施例方式
現在與圖1a及下列的圖一起詳細描述對於按本發明的主題為在主收發器和從屬收發器之間的單個物理交換信道上命令/響應對的多重交換發送的多個邏輯流的協議。
在現在描述的框架內,請記住,邏輯流由藉助主收發器和從屬收發器之間的單個物理交換鏈路的邏輯信道上的多個命令/響應對的交換組成。
通常記得,遵照本發明的協議能在由半雙工鏈路連接的任何主收發器和從屬收發器之間實現,此鏈路允許交換命令/響應對,主收發器連接到一組應用的一個應用,而從屬收發器允許執行一組應用或服務中的至少一個應用。每個應用到主收發器的互連標記為E/RM,而到從屬收發器的互連標記為E/RE,對於與主收發器互連的應用記作AMy,而與從屬收發器的互連記作AEz,這些應用能藉助基本邏輯流完成。此基本邏輯流可能由記作SEPC的單個物理交換信道發送,上述基本邏輯流BLF包括在單個物理交換信道SEPC上命令/響應對的發送,記作(C,R)b。
在這些條件下,考慮如在圖1a表示記作S的起動狀態,其中一組上述參數被定義並以非限制的方式對應於下述情況其中主收發器E/RM包括允許執行至少一個應用的CAD閱讀器,從屬收發器E/RE包括由安裝小程序或服務的晶片卡,基本邏輯流在此情況對應於ISO標準7816-3和7816-4的規定所定義的邏輯流。
然而根據按照上述標準的規定的第一次使用,認為單個基本流在實現遵照本發明在圖1a中示出的協議的框架內是打開並激活的。
以圖1a中所示的更具體的方式,遵照本發明的協議在於將當前激活的基本邏輯流BLF當作參考邏輯流LFr。此操作在圖1a的步驟B中完成,並由下述關係表示LFr=BLF此步驟能藉助分配如十六進位位值FE等的特定值給類別碼或當前激活的基本邏輯流的參數來實現。
然後步驟B進到步驟C,它產生一組並發邏輯流{CLFx}。每個並發邏輯流由分段命令/響應對的連續基本包形成。在步驟D實施分段同時,形成並發邏輯流組{CLFx}的連續基本包,在參考邏輯流LFr上發送,該組的兩個並發邏輯流允許獨立並基本上同時地發送不同的命令/響應對。在步驟D中表示的返回箭頭示出從分段引起的連續的包的多次交換。
任何命令/響應對的起動和繼續根據在參考邏輯流上發送的特定命令在主收發器的起動完成,而分段成連續的基本包是在響應對在此參考流上這些特定命令而發送的特定響應的基礎上在從屬收發器的起動完成的,因此主收發器或者能藉助保持用於執行在應用和不同的小程序之間的交換的參考邏輯流LFr來保持不同的命令/響應對的交換,或者藉助提取值FE,通過返回到基本邏輯流而保持命令/響應對的交換。
此做法允許在主收發器與從屬收發器的至少一對應用之間獨立地並基本上同步地交換,在本說明的後面詳細描述。對於談到不同命令/響應對的基本同時發送的概念,當然理解為在連續包的發送期間定義的同時性概念。
此外,遵照本發明的協議能在出現多個激活的基本邏輯流的情況實現。在此情況,如圖1b所表示,在出現由主收發器E/RM起動的任何基本邏輯流的期間,此情況對應於類似於圖1a的起動狀態的情況S,遵照本發明的協議能包括實行在主收發器和從屬收發器之間任何打開的和正常激活的基本邏輯流的發送。此操作能由檢驗激活的基本流BLF*的存在的測試步驟A完成,該基本流在主收發器時起動,根據連接到或傾向於連接到主收發器的任何應用Amy的請求起動。
在圖1b中,對應的測試A記為BLF*={Φ}此測試在於驗證不存在任何激活的基本邏輯流。
在對上述測試A的否定響應時,在主收發器層上出現激活的基本流,遵照本發明的協議在於通過返回到步驟S,執行上述激活的基本邏輯流的發送。
相應地,在對上述測試A的肯定響應時,在主收發器層上不出現激活的基本流,遵照本發明的協議隨後能在至少一個基本流取作參考邏輯流情況產生一組並發邏輯流。
在圖1b,類似於圖1a,步驟B用關係式表示定義基本邏輯流BLFu作為參考邏輯流,標記為LFrLFr=BLFu在實現遵照本發明的協議的框架內,按照與ISO標準7816-4規定的協議兼容的協議,在步驟B參照邏輯流的定義能有益地通過分配如以前提到的十六進位值FE等特定的值到類別碼或有關基本邏輯流的參數而完成。
步驟B之後,類似於圖1a,在步驟C產生一組並發邏輯流,記作CLFx的每個並發邏輯流和記作{CLFx}的這些並發邏輯流組由連續基本數據包形成,將在後面敘述中描述。上述並發邏輯流組{CLFx}的並發邏輯流允許在標記為AMp的連接主收發器的應用和標記為AMq的連結從屬收發器的應用之間不同的命令/響應對的獨立及基本上同時的發送,這些應用有可能不同於或不是不同於應用AMy和AEz的優先級,對它們藉助於從組BLF*來的基本邏輯流事先完成數據的交換。
在圖1b中,不同的命令/響應對的獨立及基本同時的發送的步驟記為D,這些命令/響應對被記作(C,R)x,並按照對應的並發邏輯流CLFx,在單個物理交換信道SEPC上發送。
此外如圖1b所示,遵照本發明的協議在於,為了在單個物理交換信道上在不同於參考邏輯流的基本邏輯流上執行命令/響應對的交換,依據主收發器E/RM起動立刻掛起任何並發邏輯流的交換。此掛起操作能對應於如圖1b表示的測試步驟E,此測試步驟E可能對應於如步驟A中完成的驗證不存在激活的基本邏輯流BLF*的相同的測試。
在對測試步驟E否定響應時,出現由主收發器E/RM起動的激活的基本邏輯流,為執行此激活的基本邏輯流的發送,執行返回到起始步驟S的工作。
相反,對測試E肯定響應時,實現返回到步驟B,以重新定義參考邏輯流,且按上述B、C、D執行多重交換過程。
可以理解,通過實現遵照本發明的協議如圖1b所示的連續步驟的執行,所述協議就有可能在任何基本邏輯流的交換結束後立即繼續任何並發邏輯流的交流。
此做法允許在單個物理交換信道上至少一對主收發器和從屬收發器的應用之間獨立和基本上同時進行命令/響應對的交換。
如圖1b所示,遵照本發明的協議使得有可能適合沒有衝突的共存,並發的邏輯信道允許發送並發的邏輯流,而基本邏輯信道允許發送基本邏輯流。尤其是它一方面允許如上所述在主收發器和從屬收發器的至少一對應用之間獨立和同時交換命令/響應對,另一方面在單獨物理交換信道上的基本邏輯流上交換優先命令/響應對。
如下所述可以理解,當基本邏輯流是如此定義,以滿足ISO標準7816-4的規定,且當主收發器由CAD閱讀器組成,而從屬收發器由晶片卡組成時,在任何時候,CAD閱讀器能在基本邏輯信道上起動APDU命令的交換。在此交換期間,其他的並發或另外的信道隨後被掛起,雖然沒有中斷在並發信道上正在進行的交換。
在上述特定實施例中,使用基本邏輯流和信道來適合於命令/響應對的發送是有益的,它的處理只需要相對較短的時間。
現在參考圖2a、2b、2c和2d給出如以前結合圖1a、1b(尤其當上述基本邏輯流BLFu滿足ISO標準7816-4的規定時),描述的遵照本發明的協議的步驟B、C和D特定實現的更詳細的描述。
在圖2a中表示的是主收發送器和從屬發送器,它們被分別稱為單元E/RM和單元E/RE。
在基本邏輯流BLFu上標記為(C、R)的命令響應對的交換是在單個物理交換信道SEPC上實現,單元E/RM藉助引導P從連接到單元E/RM的應用AMp接收命令,此單元取得控制以便實現標記為C=[「COMMAND」]的命令C到從屬單元E/RE的發送。具有控制的單元E/RE發送命令C到連接從屬單元E/RE的應用AEq。上述應用的響應R傳送到從屬單元E/RE,它再次具有控制,以至於實現在單個物理交換信道SEPC上實現發送標記為R=[「RESPONSE」]的響應到單元E/RM,後者藉助引導P將其發送到AMp。在給定的例子中可以理解,字符串「COMMAND」和「RESPONSE」分別表示符號命令和符號響應。
當有關的邏輯流是基本邏輯流BLFu時,按ISO標準7816-4的規定,在沒有連續對應邏輯流的嵌套和交叉情況下,命令/響應處理能繼續對應命令和響應的執行。
相反,當基本邏輯流通過如前所述分配特定的類別碼構成參考的邏輯流LFr時,則產生連續的並發邏輯流的過程通過將通過組成在相關並發邏輯信道的APDU的交換的數據進行分割而在從屬單元E/RE的起動完成。此分割包括分割成更基本的數據單元或段,並包括使用普通的APDU在單個物理交換信道SEPC上發送這些數據。
尤其可以理解,上述在從屬單元E/RE的起動上的分割最好按遵照本發明的協議的特別值得注意的方面,根據通過響應在單元E/RE的起動確定的段次序來完成。例如此段次序能定義如由主單元E/RM在部分命令或數據項的包裝(guise)中的最大命令的包尺寸。從屬單元E/RE在其自己的起動或根據從應用AEq來的請求確定由前述主單元E/RM派發的在部分命令的包裝中發送包的最大尺寸。相應的,從屬單元確定在部分響應包裝中要發送的包的實際尺寸。尤其可以理解,將上述數據分割成數據段或包有可能交叉這些部分APDU,並從而交叉數據邏輯流,和在並發邏輯流和上述並發信道中進行的並發邏輯流。
將藉助非限制性例子並結合圖2b給出,通過並發邏輯流CLFx在連接到主單元E/RM的應用AMp和連接到從屬單元的應用AEq之間進行交換的由命令/響應對組成的命令和響應的分段或分割成連續的包的例子。
在上述圖中指出,在上述非限制性例子中,使用的命令/響應對當然對應於APDU命令。
於是,應用AMp發送命令C到主單元E/RM,此命令標記為C=[「COMMAND」]在上述組成C-APDU的命令中,代表符號命令的字符串「COMMAND」表示通常在APDU命令的包裝中可得到的任何命令。此命令的邏輯值是通常在APDU命令的集合中可得到的值,上述字符串簡單地用符號表示此命令的語法。
在由主單元E/RM接收上述命令C後,具有控制的主單元將特定命令發送到從屬單元,將命令通知從屬單元E/RE。
通知命令的命令標記為[COMMAND_READY x]其中x表示CLFx的下標。
接收到上述命令通知之後,結合應用AEq並具有控制的從屬單元E/RE發送包括被接收的命令的分段次序和上述命令C的響應。
分段次序是下述形式APDU類型的響應[RECEIVE_BYTES x NB=3]作為上述分段次序的響應,除了功能性頭標RECEIVE_BYTES以外,包括關於下標x的並發流和欄位,和在圖2b中隨意地定為NB=3所指定的欄位,其中NB標記由從屬單元E/RE結合連接到所述單元的應用AEq請求的最大字節或字(字符)數。
在主單元E/RM接收到分段次序後,仍具有控制的主單元E/RM在參考邏輯流LFr上發出數據發送命令,它包括由從屬單元E/RE請求的欄位或更低數目的字節數或字數。
包發送命令是下述形式的APDU命令[SEND_DATA x[「COM」]]除了對應於數據發送命令的功能性頭標SEND_DATA和關於下標x的遵照本發明的並發邏輯的欄位以外,此包發送命令包括三個字節或字,在命令C的情況對應於任意命令「COMMAND」的頭三個字母COM。
從屬單元E/RE收到上述包發送命令後,具有控制的從屬單元發送在圖2b中標記為[OK]的接收響應的APDU類型確認信息到主單元。
然後,再次具有控制的主單元E/RM向從單元E/RE發送一命令用於繼續發送下述形式的命令/響應的交換。

接收了此繼續命令後,具有控制的從屬單元E/RE在由應用AEq處理後重複向主單元發出分段次序響應,其中關於所請求的字節數的欄位取作等於NB=4。
主單元E/RM接收到上述新的分段命令後,所述單元發送新的命令用於發送一個包,該命令中所發送包的欄位包括4個字節,對應於上述命令C中的字母「MAND」。
在接收到上述4個字節的新包以後,隨後從屬單元E/RE就緒,結合應用AEq並具有控制,以發送如下形式的APDU類型的分段的響應。
]上述響應包括一系列發送的字節或字,結合連接到所述單元的應用AEq,其選擇在從屬單元E/RE的單獨起動。在圖2b的情況,分段的響應包括4個字節或字「RESP」,即對應於符號的響應「RESPONSE」的第一段。
主單元E/RM接收到上述分段響應之後,隨後具有控制的上述單元向從屬單元E/RE發送新的繼續命令,從而允許從屬單元E/RE結合應用AEq並具有控制,向主單元E/RM發出包括所發送的字節或字數NB的新的分段響應,該數這裡隨意地取作4並對應於「ONSE」。
在接收此新的分段響應後,主單元E/RM實際上發送一條繼續命令給從屬單元E/RE,使得允許響應的全部發送,直到響應消息的APDU類型的結束由從屬單元E/RE發送到主單元E/RM。
響應APDU消息的結束具有下面形式[RESPONSE_COMPLETE x]在接收響應消息的結束之後,主單元E/RM具有下面形式的完全響應RR=[「RESPONSE」]並因此對應於符號響應,命令/響應對C/R已藉助並發邏輯流CLFx,在單個物理交換信道SEPC上,在從屬單元E/RE的起動以連續包方式發送。
因此,由並發邏輯流發送的命令和響應分段成包的工作在結合(如小程序的)發送數據的接收者的(如晶片卡本身的)從屬單元的監視下完成。此做法顯得特別重要,因為有可能使用所有由ISO7816-4標準定義的所有傳輸協議,尤其是對於傳輸參數T=0的值,對此情況,APDU的精確方式,尤其是其方向是不清楚的,並組成只對單個物理交換信道通訊的雙方,即應用AMp和AEq知道的隱含信息單元。
此外,從屬單元E/RE正規地轉讓控制給主單元CAD閱讀器的上述分段過程使得有可能管理從連接到各種並發信道的應用AMp或AMq起動的交換的任何異步請求。
談到上述分段的過程,讀到如圖1所示遵照本發明的協議的實現過程,應指出應用AMp和AEq能請求用於發送並發邏輯流的並發信道的開啟,或用於藉助引導發送基本邏輯流的基本信道的開啟,引導模塊包括特定計算單元,在圖中未示出。引導模塊當然能與主單元E/RM及應用AMp通訊。而且在打開用於交換並發邏輯流的並發信道及打開用於交換基本邏輯流的基本信道之後,每個應用能請求在此信道交換APDU,並如圖1所示,在信道是並發的或交換的邏輯流是並發的邏輯流的情況中斷當前的交換。
此外,如圖1和2b所示,組成在並發信道上APDU交換的數據或命令的段使這些數據或命令段能在單個物理交換信道發送,同時授權由基本APDU組成的命令/響應對的交叉,並最終,在上述並發信道中進行的並發數據流的對應交叉將結合圖2c在特定的非限制性實例中描述。
在上述圖2c中,考慮非限制性例子,其中兩個應用AMp和AMp』經引導模塊連結到主單元E/RM,而從屬單元E/RE連結到單個應用,該應用為此原因沒有像在圖2c那樣指定。
在上述圖中,應用AEy藉助引導模塊(未示出)在請求打開並發邏輯流CLFx之後按照推測發出命令C=[「COMMAND」]到主單元E/RM。
參考圖2b,主單元E/RM在單個物理交換信道SEPC上發送以前提到過的命令通知命令。從屬單元E/RE通過發送段次序響應作出響應,對此,NB按由從屬單元E/RE執行的小程序或應用隨意地取作8。
在主單元E/RM接收段次序響應後,它向從屬單元E/RE發送一個包發送命令,該命令包含對應由從屬單元請求的字節或字的數目的8個字符的字符串,於是該符號命令全部發送。然後,從屬單元E/RE能夠向主單元發送接收命令的確認[OK]。然後主單元在並發邏輯信道上通過發送並發邏輯流CLFx,或者在下面將描述的另外並發邏輯信道上繼續任何發送過程。
由主單元E/RM執行的應用AMp藉助引導模塊對應於下面形式的符號命令的命令C』在發送之前,請求打開並發邏輯信道CLFxC』=[「C』O』M』M』A』N』D』」]在收到由主單元E/RM發出到從屬單元E/RE的繼續命令之後,從屬單元能隨後進行發出對應於命令C的分段的響應,由於從屬單元E/RE尚未知道存在此命令C』,並發邏輯信道已經為它單獨打開,對應的並發邏輯流CLFx』尚未激活。
藉助非限制性例子,並對符號的響應「RESPONSE」,分段的響應通過部分響應發送包含字符串「RESP」的包。
然後主單元E/RM能藉助引導模塊進到激活並發的邏輯流CLFx,以至通過發出與上述命令C』有關的通知命令的命令來起動嵌套的交換。
在由從屬單元E/RE接收命令通知命令後,具有控制的從屬單元發送關於命令C』的一定字節數的段次序響應,字節數被隨意地取成等於NB=4。在響應中,主單元E/RM發送一個有關命令C』並包含4個字節或字的包發送命令,這些字母組成符號命令C』的字符串「C』O』M』M』」。
從屬單元E/RE在響應中發送接收的確認。
具有控制的主單元E/RM能通過引導模塊在當前激活的並發邏輯流組不是空組時,將該組通知從屬單元E/RE。此通知能以繼續命令方式完成,這將在下面作更詳細的敘述。然後響應此繼續命令,從屬單元E/RE能發送4個丟失的字節,以便在並發邏輯流CLFx上通過包含字節或字「ONSE」的分段響應,發送符號響應「RESPONSE」。主單元E/RM隨後在同一併發邏輯信道上發送繼續命令到從屬單元E/RE,它隨後送出有關命令C的響應命令結束。在接收此消息命令結束後,主單元E/RM能藉助引導模塊向應用AMp發送對命令C的符號響應。
此外,主單元E/RM隨後能藉助引導模塊在並發邏輯流CLFx上繼續多重交換過程,用於關於命令C』的命令/響應對交換,對此命令從屬單元E/RE尚未送出響應命令結束。在應用AMp的起動打開的並發邏輯流CLFx再次由引導模塊激活,並且在由從屬單元E/RE接收繼續命令以後,從屬單元能發送最大給定字節或字數(取作等於NB=4)的段次序響應到主單元E/RM,該響應關係到由應用AMp起動的命令C』。
當接收段次序響應之後,主單元E/RM隨後能發送一個包發送命令,它涉及命令C』並包括含有3個字節的包,這3個字節是組成符號命令C』的字符串的最後三個字節或字「A』N』D』」。
在從屬單元E/RE接收上述包發送命令且由所述單元發出接收確認之後,主單元發送繼續命令以至於獲得對符號命令的響應。
響應此繼續命令,從屬單元E/RE發送整個符號響應,符號響應標記為「R』E』S』P』O』N』S』E』」且以分段響應形式對應於命令C』的響應。
在主單元E/RM接收上述分段響應以後,主單元再次向從屬單元E/RE發送繼續命令,然後從屬單元發送關於命令C』的響應命令結束給主單元E/RM。然後主單元進行向應用AEy』發送由字符串[「R』E』S』P』O』N』S』E』」]形成的符號響應。
談到通過引導模塊打開並發信道的過程,應指出,此打開通過管理信道類型的APDU命令完成,見ISO7816-4 6.16節。
通常應指出,形成並發邏輯流的每個連續基本包藉助在單個物理交換信道上的特定APDU命令/響應對發送。
為執行基本邏輯流的命令/響應對由APDU實體組成,而不同的命令/響應對最好由特定的包絡型(Envelope type)APDU命令形成,且短APDU響應屬於APDU響應的子集。
在接收包絡型的特定物理C-APDU命令後,從屬單元E/RE完成處理。例如,當從屬單元由晶片卡組成時,該從屬單元能進行某些安裝的小程序的執行。然而它必須在相對較短的時間內給出響應。組成R-APDU的響應必須採取下列形式之一1.[TIME_OUT]卡簡單地超出許可時間沒有任何特定的操作;2.[GET_HEADER x]卡要求並發信道x的C-APDU的頭標。引導模塊必須通過物理命令[SEND_HEADER x CLA INS P1 P2 P3]響應,卡通過R_APDU[OK]對它響應;3.[GET_BYTES x n]卡要求並發信道x的C-APDU的下面n個字節。引導模塊通過物理命令[SEND_DATA x a1……am]響應,其中m≤n,若這是輸入數據的最後段,m可以不同於n。卡通過R_APDU[OK]確認接收;4.[SET_OUTGOING_LENGTH x Lr]卡對引導模塊指出在並發信道x上響應R_APDU的長度。
5.[SEND_BYTES x a1……an]卡在並發信道x發出R_APDU的下面n個字節。
6.[STATUS x SW]
卡指出狀態,即在並發信道x上R_APDU的最後兩個字節,隨後在信道x上的交換終止。
在所有情況,引導模塊在此交換後重新取得控制。
在卡的請求構成協議錯誤的情況,例如在情況2到6,若在信道x上沒有進行交換,或又若在一次且同樣的交換過程卡兩次請求頭標,則引導模塊通過命令[IO_ERROR x code]將問題通知卡,其中錯誤的屬性以code號表示。
而且在由並發邏輯流長處理另外交換的較長期間由並發流對交換的請求的特定處理在圖2d中有進一步示出,圖中關係到藉助主單元E/RM執行的兩個應用AMp和AMp』。
參考圖2d,對在應用AEy的起動執行的命令C=[「COMMAND」],考慮在並發邏輯流CLFx上命令/響應對的交換的執行。
在這種情況,在打開並發邏輯流CLFx之後,此並發邏輯流由引導模塊在再現激活,在給予從屬單元E/RE時間內的執行條件下完成交換的執行。
對於交換的執行,從屬單元超出給予它的時間運行而沒有任何其他特定事件出現的任何部分執行形成由從屬單元發出下述形式的R-APDU類型響應的主題[TIME_OUT]並是由主單元E/RM發出繼續命令。此過程能對激活的並發邏輯流CLFx持續由從屬單元E/RE使用的各種連續的時間片。
在另外應用AMp『的起動由主單元E/RM接收命令C』以後,並發邏輯流CLFx』的打開(此並發邏輯流由引導再現激活)使能在支持並發邏輯流CLFx』的並發邏輯信道上發送關於命令C』的命令通知到從屬單元E/RE。然後,發送響應[TIME_OUT]的過程能對在並發邏輯流CLFx』上命令C』的執行繼續,用於執行命令C和C』的發送。
遵照本發明的協議允許處理對於在由主單元E/RM執行的應用及由從屬單元E/RE執行的那些小程序或服務之間的交換的異步請求。
參考圖1b,當這些請求涉及基本邏輯流和對應的基本邏輯信道時,在接收到有關基本邏輯流的響應以前,並發邏輯信道和並發邏輯流組被掛起。
但是,對交換的異步請求也可以涉及在空閒的並發信道上發出C-APDU命令。在此情況,引導模塊藉助主單元E/RM發出命令通知的命令,指出在邏輯信道及有關的並發邏輯流CLFx上C-APDU類型的命令已可用,用非限制性例子說明,該通知命令能隨後觸發執行在從屬單E/RE上的接收小程序。
當藉助主單元E/RM引導模塊具有控制,但無異步交換請求到達所述單元時,雖然交換仍在一個並發信道上進行,執行的繼續通過發出C-APDU類型命令完成,也就是說是通過上述提到的繼續命令。
在這些條件下,從屬單元E/RE必須在相當短的時間內讓出控制,以儘可能快地處理異步請求。
最後,參考圖1和2b,遵照本發明的協議較好地能根據兩種特定的命令C-APDU類命令和R-APDU類三種特定響應實現。
第一種特定命令包括命令通知命令,使主單元E/RM能通知從屬單元E/RE存在當前激活的並發邏輯流組。可以理解,尤其在圖2b和2c中給出的例子中,每條命令通知命令包含單個激活的並發邏輯流,CLFx及CLFx』,所以沒有不必要超負載描述,但是若干並發邏輯流可適當地同時激活,在並發邏輯流的單個物理交換信道不外乎按連續地可執行。
實際上命令通知命令包括·由命令[COMMAND_READY x]構成的命令CIa;·由命令[RESUME]構成的命令CIb;命令CIa和CIb使得有可能通知從屬單元E/RE,主單元E/RM可用於在一個並發信道上執行或繼續交換。
包括包發送命令的第二特定命令使得可能從主收發器向從屬收發器發出基本包。發送標記為CII的第二特定命令是在接收標記為RI的第一特定響應時,而組成段次序的RI由從屬收發器響應第一或第二特定命令之一發出的,在接收由從屬單元發出對第一CIa,CIb和第二特定命令CII的第一特定響應之後,發出第二特定命令CII,它使得有可能從主單元E/RM向從屬單元E/RE發送一個基本包,該基本包涉及對在第一特定響應RI中指定的並發邏輯流組的一個並發邏輯流的當前激活的命令。將當前激活的命令分割成連續的包,例如在圖2b中的命令C,在從屬收發器的起動藉助在第一特定響應RI中的規定而完成,該RI組成在第二特定命令CII中發送的包的最大尺寸的段次序。
組成分段響應的第二特定響應RII使得有可能在第二特定響應RII中指定的當前激活的並發邏輯流上由從屬單元E/RE向主單元E/RM發送一個響應的基本包。
最後,第三特定響應RII包括一個簡單響應,由從屬單元E/RE向主單元E/RM送出的特定命令/響應對的響應的結束。
因此,根據主單元發出的第一特定命令在主單元E/RM的起動,尤其是命令通知命令CIa,實現連續包的交換的繼續,但是如圖1b所示,此繼續是在不存在任何激活的基本邏輯流的前提下。
相反,如圖1b所示,存在激活的基本邏輯流要求由主單元E/RM在單個物理交換信道上優先發送此激活的基本邏輯流。
如圖2c所示,遵照本發明的協議的步驟組允許獨立的命令/響應對,響應對C、R和C』、R』的交換。
現在將結合圖3a、3b和下列圖給出用於跟蹤和監視安裝在如嵌入式計算機系統那樣的計算機系統的小程序的執行,此計算機系統至少裝備一個存儲器,裝有執行自動部分和作業系統,至少一個安裝的小程序,是用於與至少一個由裝有另外作業系統的計算機執行的應用交換特定信息。
在一般意義上指出,遵照本發明跟蹤和監視小程序執行的系統執行在主單元E/RM和從屬單元E/RE之間的單個物理交換信道上,對多個命令/響應對的交換發送多個邏輯流的協議,以迎合跟蹤和監視小程序執行的處理,就是說迎合排錯小程序的要求。
如上述圖3a所示,遵照本發明的系統,除了嵌入式計算機系統外至少包括如晶片卡1,由裝備特定作業系統的計算機執行的應用2,用於跟蹤和監視(即排錯)安裝在嵌入式計算機系統1的任何小程序的執行的引導模塊3。引導模塊3一方面通過標記為L23的鏈路連結到應用2,另一方面藉助命令/響應類型的單個物理交換鏈路,通過標記為L13的鏈路,連結到嵌入式計算機系統1。
遵照本發明的執行跟蹤和監視系統還包括藉助鏈路L34互連到引導模塊3的執行跟蹤和監視模塊4,此執行跟蹤和監視模塊試圖監視嵌入式計算機系統1的執行自動部分的執行。
更具體指出,嵌入式計算機系統1包括作業系統OS,標記為AUT的執行自動部分,它在JAVACARD的環境中的特定實施中可以包括如JCVM類型的虛擬機VM。
當然,嵌入式計算機系統1包含安裝在非易失性存儲器的不同的小程序,它們標記為APP1…APPx…APPN,是先驗獨立的。
最後,嵌入式計算機系統1包括代理模塊,用於跟蹤和監視安裝在嵌入式計算機系統1的非易失性存儲器中的執行自動部分的執行。
在一個特別有益的非限制性實施例中指出,嵌入式計算機系統1是由晶片卡或微處理器,包括帶有微處理器的CAD閱讀器引導模塊3組成,而由鏈路L13組成的命令/響應類型的單個物理交換鏈路由ISO 7816類型的鏈路組成。
更具體地指出,按照說明中已描述的遵照本發明的協議,命令/響應類型的單個物理交換鏈路使得有可能進行多重交換。
關於鏈路L23和L34指出,鏈路L23能作為ISO 7816類型的鏈路實施,或作為如軟體庫PC/SC,或OCF兼容的軟體層實施,軟體庫PS/SC構成下述參考文獻的主題「Interoperability Specification for ICCs and PersonalComputer Systems」,version 1.0,December 1997.部分1到8,由PC/SC工作組發表,並在地址[www.pcsworkguoup.com]處可訪問,而OCF(OpenCardFramwork)庫的參考文獻是OpenCard Framework 1.1.1…,Programmer’sGuide,3rdEdition,April 1999,由OpenCard Consortium發表,並在地址[www.opencard.org]處可得到。但是在實現鏈路L34的情況,此鏈路能有益地藉助於JDWP協議實現,該協議由SUN MICROSYSTEM INC.在文獻JAVATMDebugWire Protocal中規定,在地址[http//java.sun.com/products/jpda/doc/jdwpspec.html]處可得到,並由SUN發布的「Java2SDK,v 1.3.0」軟體一起提交。這種協議的實現使得可能使用適應於此協議的任何執行跟蹤和監視工具。
此外,如在圖3b中所示,執行自動部分AUT能包括標記為VM的虛擬機,藉此與應用界面庫API聯繫。
最後,安裝在嵌入式計算機系統的非易失性存儲器的代理模塊5包括軟體代理模塊,用於跟蹤和監視在應用和小程序之間交換的執行。
組合件的一般操作方式如下引導模塊3使用兩個並發邏輯信道以適應隱含打開的對應並發邏輯流的交換。例如第一個並發邏輯流用於以執行跟蹤和監視方式指定的排錯方式與小程序APPX之一的通訊。
第二並發邏輯流被用於發送由虛擬機VM發出的事件,例如此虛擬機達到停止點,或它執行任何這樣的操作時,執行跟蹤和監視模塊4請求該執行受監視和跟隨。
最後,使用允許默認的非並發邏輯流交換的非並發邏輯信道來監視虛擬機VM的執行,並訪問其內部狀態。
引導模塊3考慮連續地重新取出主單元E/RM的控制以便處理由執行跟蹤和監視模塊4發送的異步停止請求。若這樣的異步停止請求已經到達引導模塊,且若引導模塊在實現遵照本發明的協議期間,已重新取回控制,如結合圖2b或2c所述,則虛擬機的執行被掛起。然後僅在用戶,即由引導模塊3控制的執行跟蹤和監視模塊4,請求執行繼續時,主單元E/RM通過引導模塊3發送繼續命令。
遵照本發明的執行跟蹤和監視系統的具體實現使有可能優化實際使用的APDU命令及響應的格式。例如,為了進行指令的執行,原則上首要的是在基本信道上使用監視命令,使得有可能路由上述基本邏輯流,以便向嵌入式計算機系統1指出適合由繼續命令[RESUME]的下個執行。這兩個命令能由命令[STEP]那樣的單個命令替代。
引導模塊3的做法如下所示一引導模塊藉助APDU類型的特定命令/響應對適合監視和管理代理模塊5的命令,並設計成在應用中考慮排錯,為此記作DPDU,是排錯協議數據單元(Debug Protocol Data Unit)的縮寫。為此目的,代理模塊用自動部分完成的輸入/輸出I/O的每次轉換提示上述DPDU消息的改變,這轉換是由虛擬機調用輸入/輸出功能。如結合圖2b或2c上面所述的那樣,DPDU消息包括在應用和小程序之間的命令或響應包。
一此外,在輸入/輸出交換期間,且當執行自動部分在由上述用戶選擇的指定時間沒有輸入/輸出轉換執行時,引導模塊3按從執行跟蹤和監視模塊4來的請求,在用戶起動時,掛起執行自動部分AUT的執行,就是說最終是虛擬機VM的執行。
在以前提到的執行之後,引導模塊3發送特定命令/響應對,DPDU消息到代理模塊5,使得監視該執行自動部分的狀態,然後提示上述執行自動部分AUT執行的繼續。
現在將給出在沒有任何排錯方式用於跟蹤和監視小程序執行的處理的做法,即參考圖4a基本上按以前技術的虛擬機執行的正常執行做法,還給出參考圖4b和4c依靠遵照本發明的協議和系統的實現的排錯方法的做法。
參考圖4a指出,在嵌入式計算機系統1,即對應的晶片卡上,對虛擬機VM的輸入/輸出I/O的訪問包括對作業系統OS的少量函數的調用,作業系統被認為提供等價於有關JAVA CARD類型的虛擬機的界面庫API的服務。在組成嵌入式計算機系統1的微處理卡上,在作業系統OS和虛擬機VM之間建立用於監視和跟蹤執行的代理模塊5。此建立表示在圖3b中,當它被激活時,代理模塊5截取所有對這些I/O輸入/輸出函數的調用,並將每一個這樣的調用轉換成用引導模塊3的DPDU的交換。
對於正常執行,即在如圖4a所示沒有任何排錯的方式,允許應用2執行的終端發出一條命令,如包括進入數據C1,C2,C3,C4,C5的5個字節或字。所述的小程序通過對Get Bytes方法的兩次調用訪問該進入數據,允許傳輸字C1,C2,隨後C3,C4,C5然後單個操作的4個響應字,字R1,R2,R3,R4。
因為ISO 7816協議的半雙工性質,組成嵌入式計算機1的晶片卡在整個交換期間保持控制。從而不可能中斷執行,除非切斷供卡使用的電源。
另一方面當切換到排錯方式,按照如圖3a和3b中所示遵照本發明的小程序跟蹤和監視系統的實現,其做法參考圖4b如下示出。
在上述圖中,在引導模塊3和代理模塊5之間的DPDU命令交換表示在方括號之間。代理模擬5相對於作業系統表現得象正常操作,並用與小程序在非排錯方式執行時使用的相同的函數訪問這些DPDU命令。這些函數無非就是GET_BYTES和SEND_BYTES函數以及以前涉及遵照本發明的協議的實現描述的函數。將單個命令/響應的交換切割成若干與ISO 7816協議兼容的若干命令/響應的好處在於在兩個相繼的部分交換之間,輸入/輸出信道可空出用於在引導模塊3和代理5之間的其他交換。這種交換對小程序是不可見的,當然對執行應用2的終端也如此。這些交換使得有可能監視虛擬機VM的執行並可能訪問其內部狀態。
當虛擬機VM在兩次輸入/輸出函數的調用之間達到停止點時,晶片卡藉助代理模塊5轉讓控制給引導模塊3,從而允許執行跟蹤和監視模塊4,藉助適當的命令審視虛擬機VM的狀態。
在圖4C中作為非限制性例子表示的是請求變量X的值的執行跟蹤監視模塊4。這種交換完全是物理上有效的,因為此交換隻包含很好(well-formed)格式的C-APDU和R-APDU命令,這不會是在執行應用2的終端和安裝在嵌入式系統1中的小程序之間正在進行的交換必須中斷時的情況。
因此應該理解,當虛擬機VM被掛起時,執行該虛擬機的狀態的審視在模塊4起動時執行,以便在藉助計算機系統1的存儲器的讀/寫命令來跟蹤和監視執行。
通過這種跟蹤和監視執行(即排錯)的過程,可能一方面多路復用在允許執行應用2的終端和小程序APPX之間交換的數據,而另一方面多路復用在引導模塊3和跟蹤監視代理模塊5之間交換的數據。
這種做法使有可能獲得一總的不存在對作業系統OS執行的影響,代理模塊5加上虛擬機VM的組合表現得象任何其他應用。尤其是,這種做法不必要存在第二物理通訊信道;一有限的影響虛擬機的實現,因為藉助調用在代理模塊5的等價函數替代對作業系統OS的少數函數的調用就足夠了。
最後,跟蹤和監視小程序的執行的系統和遵照本發明的協議特別適合於執行虛擬機的異步停止的執行。
具體說來,希望在任何時候當例如小程序從事冗長或無止境的計算時,能停止虛擬機VM的執行。至於鏈路L13的性質,不可能將控制轉交給跟蹤和監視代理模塊5並等待它結束執行,或等待小程序APPX進行輸入/輸出執行,代理模塊5隻在自己起動能讓出控制。
然後,按照遵照本發明的系統和協議的實現,提出的解決方法在於利用起動虛擬機VM的執行的命令持續一段指定時間T,在結束之後代理模塊5將控制移交給引導模塊3,若其間沒有發生掛起請求,模塊3隨後就有機會掛起執行或重新開始執行。此指定期間的執行過程對應於在由應用2和由引導模塊3組成的主單元E/RM以及由嵌入式計算機系統1,尤其是跟蹤及監視代理5組成的從屬單元E/RE之間如圖2d所示的過程。若期間沒有發生從執行跟蹤及監視模塊發起的掛起請求,引導模塊3隨即能重新開始執行。
在由晶片卡組成的嵌入式計算機系統1的層上,對執行指定時間的執行的命令實現能通過使用系統時間倒計時器或隨每條要執行指令遞減的計時器來完成。精確的執行時間期間T若是有限的則可以是任意的,就是說代理模塊5通過移交控制而結束。執行時間期間T的值的數量級決定了系統對中斷請求的反應能力。T的值越短,系統能越快地中斷執行。期間T的值也決定該組合的整體效率,因為對每個執行期間T存在一個APDU交換。從而在用戶起動時對期間T的數量級的確定能作為需要的函數實現。
最後,用於跟蹤和監視遵照本發明的小程序的系統使得有可能使小程序的代碼的原始碼逐行執行。通常,在程序計算器和上述原始碼行的索引號之間對應關係的查找表不能存儲在由晶片卡構成的嵌入式系統1中,這對使監視交換最小是必不可少的。
由遵照本發明的系統和協議允許的解決方案在於對每行源程序聯繫一個程序計數器間隔。此表格能由編譯器計算,並存儲在嵌入式系統1之外的由引導模塊3可訪問的存儲區域。例如此可訪問的存儲區域能安置在執行跟蹤監視模塊4中。對逐行執行的請求,對應於當前行的間隔與命令一起被發送。對每條指令,虛擬機VM的執行轉向跟蹤和監視代理5的碼單元,然後代理5測試程序計數器是否確實仍在有關的間隔內。當此間隔已被代理5超過,這是因為執行已從當前行達到不同行,代理模塊5就移交控制給模塊3。
因此有可能發送對每個逐行執行的請求重要的信息,而不必在嵌入式計算機系統1存入程序行的表。
包括虛擬機的堆棧尺寸的類似停止條件使得能簡單地實現其他類型的符號執行,如執行一程序行同時跳過方法調用或例如從當前的方法退出。
權利要求
1.一個用於對在主收發器和從屬收發器之間的單個物理交換信道上的命令/響應對的多重交換發送多個邏輯流的協議,這些邏輯流包括至少一個由主收發器起動且服從與所述單個物理交換信道相同的主/從關係的基本邏輯流,該主的和從屬的收發器允許執行至少一個軟體應用,其特徵在於,此協議在於在一個取作參考邏輯流的一個基本邏輯流中產生一組並發邏輯流,每個並發邏輯流由分段命令/響應對的連續基本包構成,所述連續基本包構成在所述參考邏輯流上要發送的並發邏輯流組。這個組的兩個並發邏輯流使能獨立地並基本同時地發送分別的命令/響應對,任何命令/響應對的交換的起動及繼續根據在此參考流上發送的特定命令的基礎上,在主收發器的起動時完成,而分段成連續的基本包的工作根據在響應此參考流上的這些特定命令中發送的特定響應的基礎上,在從屬收發器的起動完成,從而允許在至少一對主收發器和從屬收發器的應用之間,獨立地和基本同時地交換命令/響應對。
2.如權利要求1的協議,其特徵在於,對包含多個基本邏輯流的邏輯流,此協議包括a)在取作參考邏輯流的至少一個基本邏輯流中產生一組並發邏輯流,每個並發邏輯流由分段命令/響應對的連續基本包構成,所述連續的基本包形成在所述參考邏輯流上要發送的並發邏輯流組,該組的兩個並發邏輯流允許獨立地和基本同時地發送不同的命令/響應對,任何命令/響應對的交換的起動和繼續根據在此參考流上發送的特定命令的基礎上在主收發器的起動完成,而分段成連續的基本包是根據為響應這些在此參考流上的特定命令發送的特定響應的基礎上,在從屬收發器的起動完成;b)在由基本邏輯流的所述主收發器激活以後,掛起任何並發邏輯流的交換,這是為了在所述單個物理交換信道上,在不同於參考邏輯流的基本邏輯流上執行命令/響應對的交換;c)在任何基本邏輯流的交換的執行結束後,立即繼續任何並發邏輯流的交換,從而在一方面允許在至少一對主收發器和從屬收發器的應用之間獨立和基本同時的命令/響應對的交換,另一方面允許在所述單個物理交換信道的所述基本邏輯流上交換優先的命令/響應對。
3.如權利要求1或2中之一的協議,其特徵在於,所述不同的命令/響應對從至少一個第一和一個第二特定命令並從第一、第二、和第三特定響應中形成。—第一特定命令允許主收發器通知從屬收發器,存在當前激活的並發邏輯流的組;—在從該從屬的收發器接收到對第一和第二特別命令之一的第一特定響應之後發出第二特定命令,使得有可能從主收發器發出基本包到從屬接收器,此基本包涉及在此第一特定響應中指定的此組並發邏輯流的一個並發邏輯流的當前激活的命令,將所述當前激活的命令分割成連續的包,根據在此第一特定響應中關於在命令中發送的包的最大尺寸的規定,在從屬收發器起動時實現;—第二特定響應使得從從屬收發器發送該第二特定響應中所分配的有關當前激活並發邏輯流的響應的基本包給主收發器成為可能;—第三特定響應包括從該從屬收發器發到主收發器的特定命令/響應對的結束的簡單響應,連續包的交換的繼續在主收發器返回所述第一特定命令後在主收發器的起動時完成。
4.如權利要求1至3之一的協議,其特徵在於,所述基本邏輯流按ISO7816-3和ISO 7816-4協議構成,命令/響應對由命令(C-APDU)和響應(R-APDU)APDU實體構成。
5.如權利要求4的協議,其特徵在於主收發器由晶片卡閱讀器和至少一個連接到此閱讀器的至少一個應用組成,而從屬收發器由多應用晶片卡組成。
6.如權利要求1到5之一的協議,其特徵在於,每個並發邏輯流在所述主收發器的起動時是關閉或打開的。
7.如權利要求4到6之一的協議,其特徵在於,構成所述並發邏輯流的每個連續基本包藉助在所述單個物理信道上特定APDU命令/響應對發送。
8.如權利要求4和7的協議,其特徵在於,用於執行基本邏輯流的命令/響應對由APDU實體組成,不同的命令/響應對由包絡類型的特定APDU命令構成,而短APDU響應屬於APDU響應的子集。
9.用於跟蹤和監視安裝在計算機系統的小程序的執行的系統,所述計算機系統裝有至少一個存儲器,一個執行自動部分和一個作業系統,這些小程序的至少一個試圖與安裝有由具有另外作業系統的計算機執行的至少一個應用交換特定信息,其特徵在於,它至少包括—用於跟蹤和監視執行的引導裝置,它一方面連結到所述的應用,另一方面連結到計算機系統,所述連結是藉助設計來完成按權利要求1到8之一的協議的多重交換的命令/響應類型的單個物理交換鏈路;—用於跟蹤和監視執行的裝置,它與所述引導裝置互連並試圖監視所述的計算機系統的所述執行自動部分的執行;—用於跟蹤和監視安裝在所述計算機系統的執行自動部分的執行的代理裝置,從而使得有可能實施跟蹤和監視所述小程序的執行。
10.如權利要求9的系統,其特徵在於,所述計算機系統是由微處理器卡組成的嵌入式系統,且所述的引導裝置包括微處理器卡閱讀器,所述命令/響應類的物理交換鏈路是ISO 7816鏈路。
11.如權利要求9或10之一的系統,其特徵在於所述監視執行的裝置包括至少一個控制所述計算機系統存儲器閱讀的裝置。
12.如權利要求9到11之一的系統,其特徵在於所述監視執行的裝置還包括監視所述計算機系統的執行自動部分的執行。
13.如權利要求9到12之一的系統,其特徵在於所述監視執行的裝置還包括控制所述計算機系統寫入存儲器的裝置。
14.如權利要求9、11和12的系統,其特徵在於所述監視執行的裝置藉助JDWP協議連結到所述引導裝置,從而使得能使用任何適應於此協議的跟蹤和監視工具。
15.如權利要求9和10的系統,其特徵在於—所述執行自動部分包括一虛擬機和一個應用界面庫(API);—所述代理裝置包括用於跟蹤和監視自動部分執行的代理模塊(5),·所述的引導裝置藉助在單個物理交換信道的特定命令/響應對,DPDU消息實施代理模塊的監視和管理的控制,藉助每次輸入/輸出轉換,所述代理模塊提示在應用和小程序之間包括命令或響應包的DPDU消息的交換;·所述引導裝置根據從跟蹤和監視執行裝置的請求,在輸入/輸出交換期間掛起執行自動部分的執行,且當此執行自動部分在一段指定時間內不執行輸入/輸出轉換時,所述引導裝置隨後重新獲得控制,並繼續此執行掛起·所述引導裝置發送特定命令/響應對,DPDU消息到代理模塊(5』),以便於訪問執行自動部分的狀態,然後藉助特定命令提示此執行自動部分的執行。
全文摘要
本發明涉及用於在主的和從屬的發送器/接收器之間的單個物理交換信道上發送多個命令/響應邏輯交換流的協議,以及用於控制和監視小程序執行的相應系統。對現有激活的基本邏輯流(S),該協議包括選擇(B)所述基本邏輯流,產生一組並發邏輯流({CLF
文檔編號G06K7/00GK1529972SQ01817565
公開日2004年9月15日 申請日期2001年10月17日 優先權日2000年10月20日
發明者A·弗雷, C·梅斯尼爾, A 弗雷, 鼓岫 申請人:可信邏輯公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀