本發明專利技術的主題是用于智能卡(8)特別是Java卡中數據目標(10、12)的動態內存管理方法和裝置。建議在智能卡上實現各個內存目標(10,12)的目標和方法,其能在卡程序特別是Java小應用程序運行期間全部管理內存。內存管理包括諸如寫、讀、編輯、內存分配、去分配的傳統功能和作為另一個可選擇的特點-去內存分段。在本發明專利技術的優選實施例中,上述動態內存管理生成的內存或數據目標(10,12)不再使用數據詳細的邏輯結構,只使用一個小應用程序或若干個小應用程序的所有數據目標的粗略邏輯結構。在數據目標內,用邏輯目錄系統管理數據目標(14、16、18、21、22)。(*該技術在2020年保護過期,可自由使用*)
【技術實現步驟摘要】
【國外來華專利技術】
本專利技術涉及用于電子計算機裝置的應用程序功能的編程和模式,該裝置具有有限的計算能力,只能以次要的程度支持高級的現代程序設計概念。本專利技術特別涉及智能卡特別是Java卡中數據目標的動態內存管理的方法和裝置。與臺式計算機相比較,在開始提到的裝置主要是用于只具有低級計算能力和不能編程為支持高級程序設計概念的一般用途的裝置。為了披露本專利技術,所引用的例子是智能卡,即安裝其自己微處理器的小內存芯片的卡。數據能夠存儲在芯片上,這能進行多種多樣的商務處理連同例如現金機中現金自動付款器程序的主應用程序。這些芯片卡的容納程度非常高,它們可能的應用程序和它們可應用的領域正在迅速發展。有兩種智能卡第一種是文件面向系統的智能卡,其將ISO 7816-4接口用作與主應用程序通信的協議,當初始化該卡時,在卡上創建目錄系統,該目錄系統精確構造和指定訪問智能卡的主應用程序數據的內存。這種目錄系統管理智能卡上可用的所有內存。然而,這些所謂的ISO智能卡的缺點在于需要使用匯編碼來編程訪問存儲器的應用程序。這對于程序員來說非常不方便,高級編程技術不能用于這種卡的應用程序中。第二種,是面向目標的智能卡,其符合智能卡上存儲甚至小應用程序的需要,在該卡插入智能卡讀卡器時運行該小應用程序。獨立于主應用程序工作的這些程序能夠自動根據應用程序的字段進行個別較少的商務處理。以Java編程語言寫這些應用程序,這就是該卡叫做Java卡的原因。Java卡支持面向目標的編程,這打開了通向現代編程技術的接口。最終,借助于這些現代技術以高效方式可寫應用程序,應用程序代碼可以再利用、并且可以利用標準化接口。但是,智能卡的存儲容量和計算能力通常特別有限。為了符合對Java卡應用程序日益增長的需求,在一張卡上容納不止一個應用程序的要求也在增加。結果,傾向于所謂的“多應用程序”智能卡。響應于該趨勢,多個業務供應商正加緊合作以便減輕顧客的某些任務、創建對顧客的特殊刺激、或啟動特殊業務。實例包括航空公司與租車公司和/或連鎖酒店合作以便基于特殊的折扣系統和預訂設施為顧客提供專門的服務。然而,這要求所涉及的所有公司的應用程序之間的邏輯鏈應該盡可能地存儲在一張智能卡上,而且這些公司間的合作不需要三張單獨的智能卡。在這種系統中從一張卡到另一張的數據交換非常不方便,也不會被顧客接受。在團體業務逐漸集中的過程中,如果依據上述的業務發行新版本的現有智能卡,以支持和相互作用于兩家新公司提供的業務,則該卡的升級是必須的。在現有技術的Java智能卡上,很不便于執行只在Java小應用程序運行期間出現的這種升級或擴展內存要求,因為Java卡只存儲程序,小應用程序一裝到Java卡上,就靜態分配由Java卡應用程序-所謂的Java小應用程序-訪問的各個數據區的大小。如果出現變化或存儲器升級時,這種靜態分配內存非常不靈活。而且,數據目標占用的內存是統計固定的,與數據目標中存儲的數據大小無關。這首先意味著在小應用程序運行期間,當在預置位置的大數據目標中存儲小量的數據時,大量的內存剩下沒用。另一方面,只按照分配的數據目標邏輯構造存儲的數據,特征在于不利于小應用程序的編程,因為每個數據區必須具有小應用程序可以訪問的唯一單獨的名稱。附圖說明圖1基于個人數據記錄表示這種情況。每個圓圈內圖表示Java卡小應用程序的數據目標,在Java卡小應用程序上存儲兩個人的地址數據-即,每個人姓名的內存位置Name1、Name2;電話號碼的內存位置Tel.1、Tel.2;或地址數據的內存位置Str.1、Str.2、Adr.1、Adr.2。必須在創建小應用程序時設置這些數據目標的大小。無論在運行期間所有的目標是否需要分配內存。如智能卡示意圖中各個分離的圓圈所示,彼此無關地單獨定義這些數據目標。另一個缺點在于Java小應用程序不能訪問另一個Java小應用程序的數據,因為每個小應用程序保護其自己的數據。結果,如果兩個小應用程序需要兩個相同的數據記錄,則它們必須重復存儲在卡上。這意味著不能有效利用內存。因此當前的任務在于以動態和高效地管理可以得到的用于數據的Java卡上的內存和由若干不同的小應用程序可以尋址數據記錄的方式編程Java卡。由獨立權利要求所述的特征實現所提到的目的。其從屬權利要求有利地增強了本專利技術。本專利技術的基本概念是基于結合目錄面向系統的智能卡和Java卡的優點的想法以便實現上述的目的。根據本專利技術實現Java卡的特殊優點-即它們易于在智能卡上實現目標和有關的方法-利用該優點以提供目錄面向系統的智能卡的優點。結果,下面是本專利技術面向目標的智能卡的一個方面,建議在智能卡上實現各個內存目標的目標和方法,該智能卡能夠在卡程序特別是Java小應用程序的運行期間完全管理內存。內存管理包括諸如寫、讀、編輯、內存分配、去分配的傳統功能和作為另一個附加的可選擇的特點-去內存分段(de-frag-menting)。本專利技術另一個特點在于易于使相同的內存管理目標對Java卡上所有的小應用程序可尋址。在本專利技術的優選實施例中,上述動態內存管理創建的內存或數據目標不再使用數據的詳細邏輯結構,只使用一個小應用程序的所有數據目標的粗略邏輯結構或由若干小應用程序可以訪問的結構。根據本專利技術適于面向目標智能卡概念的優選實施例,在數據目標中,用邏輯目錄系統管理數據,該系統以所謂的具有相關方法的內存管理目標形式的代碼駐留在Java卡上。根據應用程序的需要,用于管理目錄系統的代碼編碼成小應用程序自身,也可能存儲在卡的操作系統中或在另一個位置,并且可由一個或多個小應用程序調用。通過將本專利技術概念轉移到ISO文件系統卡上,因此在數據目標中使用作為結果的靈活文件系統也解決了動態生成布局的問題,即,由主應用程序或“離卡”應用程序來格式化卡上的整個內存系統。這特別在動態的面向目標的應用程序中尤其必要,其中只在所謂的高級目標運行期間生成卡布局。這些高級目標形成主應用程序和卡應用程序之間接口的通用成分,表示用于數據和命令交換運算的占位符(placeholder),直到運行期間不用相應的數據或命令的具體實現來填滿這些占位符,然后生成內存需求,在小應用程序的運行期間或多或少地自發出現該內存需求。因此可以總結本專利技術概念的優點如下借助于目錄系統在小應用程序的數據目標內啟用“自動內存管理”功能。結果,內存在小應用程序運行期間需要的位置動態可用。因此比傳統的靜態內存管理方法占用更少的內存。而且,在小應用程序編程階段,所有的數據結構不必陸續編入目標結構。某些可以只以粗略內存格式化允許的程度在以后的階段加入,實際上能在數據輸入之后“自身安裝”。也只需要較少的數據目標,導致需要較少的目標管理。最后,應用程序和工具有可能只在應用程序運行期間Java卡初始化之后定義它的數據結構,例如數據目標的卡布局。附圖中表示本專利技術的實施例,下面更詳細地描述該實施例。附圖中圖1表示根據現有技術存儲Java小應用程序數據目標的示意圖,用于存儲地址數據和卡/小應用程序數據。圖2表示根據本專利技術存儲Java小應用程序的數據目標內目錄系統數據的示意圖。圖3表示根據本專利技術在Java小應用程序運行期間內存管理方法主要步驟的示意方框圖。參照圖2,在有必要使智能卡升級的范例情況下,描述由本專利技術增強的動態內存管理。在該情況下,由本文檔來自技高網...
【技術保護點】
用于管理計算機裝置(8)內存的方法,包括有限地支持數據目標(10,12)的高級編程概念在內,其特征在于步驟:使用(150,160)具有相關內存管理方法的內存管理目標用于在小應用程序運行期間動態管理內存,其中用于存儲數據記錄(14、16、18、21、22)的數據目標(10、12)具有比存儲一個數據記錄所需內存更多的內存。
【技術特征摘要】
【國外來華專利技術】...
【專利技術屬性】
技術研發人員:U翰斯曼恩,D赫倫多爾弗,L梅爾克,T斯托伯,
申請(專利權)人:國際商業機器公司,
類型:發明
國別省市:US[美國]
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。