<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 動(dòng)態(tài)多應(yīng)用智能卡文件系統(tǒng)的研究與設(shè)計(jì)

          動(dòng)態(tài)多應(yīng)用智能卡文件系統(tǒng)的研究與設(shè)計(jì)

          作者: 時(shí)間:2011-04-20 來源:網(wǎng)絡(luò) 收藏

            1.2 訪問以及管理

            所有EF 頭中都含有屬性字段,指明此文件的特殊信息。屬性字段占兩字節(jié),字段中的每一 比特位代表一種屬性。它們?cè)趧?chuàng)建時(shí)確定,不允許更改。目前只使用了前三個(gè)比特位,分別是:

            1)可刪除屬性。此屬性位為1 表示可以被刪除,0 表示不可被刪除。

            2)可寫屬性。此屬性位為1 表示可以被修改,0 則表明此文件為只讀文件。

            3)可讀屬性。此屬性位為1 表明此文件可以被瀏覽,0 表示不可以被瀏覽。

            要對(duì)文件訪問需要達(dá)到一定的安全狀態(tài)。當(dāng)該的進(jìn)程現(xiàn)有狀態(tài)滿足所需要狀態(tài),并且符 合和該文件的屬性要求時(shí),該進(jìn)程才能訪問文件。當(dāng)前進(jìn)程的安全狀態(tài)是由其是否滿足當(dāng)前目錄文件 下的KEF 中的相應(yīng)密鑰決定的。在MF 下僅有DF(目錄),沒有EF 文件,其KEF 則只含有創(chuàng) 建密鑰,讀密鑰,刪除密鑰。而一般的KEF 文件中含有四個(gè)密鑰,分別是讀密鑰,寫密鑰, 創(chuàng)建密 鑰,刪除密鑰。

            為了方便文件管理,有一些典型變量要保存在 RAM 中,把這些變量封裝成一個(gè)結(jié)構(gòu)體CMB, 放在進(jìn)程的PCB 中。一個(gè)CMB 塊包含如下變量:1)mfhead。此變量總指向最高層MF 文件頭地址。 2)mfsecurity。此變量表明MF 達(dá)到的安全狀態(tài)。其初始值在進(jìn)程建立時(shí)賦值。3)dfsecurity。此變量 表明現(xiàn)行選擇的DF 達(dá)到的安全狀態(tài)。其初值在進(jìn)程建立時(shí)賦值。4)currentdf、currentwef。這兩個(gè) 變量分別為當(dāng)前DF、當(dāng)前WEF 文件頭地址。在進(jìn)程時(shí)它們的值為NULL,在進(jìn)程運(yùn)行過程中由 SELECT 命令顯式賦值。5)currentrecord_adr。此變量在當(dāng)前WEF 為記錄結(jié)構(gòu)時(shí)使用,它指向當(dāng)前使 用記錄號(hào), 如為透明文件,無效地址。在進(jìn)程建立或者重新選擇WEF 時(shí),其值被賦為0。由記錄結(jié)構(gòu) WEF 讀、寫命令更改。6)currentef_kef。此變量為當(dāng)前DF 下KEF 文件頭地址。當(dāng)創(chuàng)建進(jìn)程時(shí),就 會(huì)創(chuàng)建一個(gè)CMB 塊,其 currentdf 被賦為當(dāng)時(shí)正在訪問的DF,安全狀態(tài)被賦為0。如果currentdf 為 0 時(shí),表示當(dāng)前的工作目錄為MF。

            1.3 EEPROM 的劃分

            該的EEPROM 大小為256K,其中分為應(yīng)用數(shù)據(jù)區(qū)(32K),應(yīng)用代碼去(160K),區(qū) (16K)以及交換區(qū)(48K)。

            應(yīng)用數(shù)據(jù)區(qū)存放著應(yīng)用的配置數(shù)據(jù),并且都是以文件的形式存儲(chǔ)的。應(yīng)用數(shù)據(jù)區(qū)的 EEPROM 是 以頁(yè)的形式分配給各個(gè)應(yīng)用,每頁(yè)大小為32 字節(jié)。每個(gè)文件的頁(yè)地址信息由文件分配表詳細(xì)記 錄。應(yīng)用代碼區(qū)存放著應(yīng)用的運(yùn)行代碼。應(yīng)用代碼區(qū)分為40 塊,每塊大小為4K。塊和應(yīng)用是一一對(duì) 應(yīng)的關(guān)系,即每塊對(duì)映一個(gè)應(yīng)用。區(qū):存放操作的信息以及用于管理應(yīng)用及文件的一些系統(tǒng) 表:應(yīng)用使用表,文件分配表,文件打開表,數(shù)據(jù)區(qū)使用表。文件打開表是用來防止讀寫沖突的,當(dāng) 某文件正在被改寫時(shí),需要給該文件上鎖,等對(duì)該文件操作完成后再對(duì)該文件解鎖。

            數(shù)據(jù)區(qū)使用表記錄了應(yīng)用數(shù)據(jù)文件在數(shù)據(jù)區(qū)的存儲(chǔ)情況,當(dāng)一個(gè)應(yīng)用要訪問某一個(gè)數(shù)據(jù)文件時(shí),需要查看該表,檢查 該文件是否屬于該應(yīng)用,防止應(yīng)用篡改其他應(yīng)用的數(shù)據(jù)文件。操作系統(tǒng)的信息用超級(jí)塊記錄。交換區(qū) 就是當(dāng)內(nèi)存不足時(shí),使用交換區(qū)來擴(kuò)充內(nèi)存。

            2 文件系統(tǒng)

            2.1 文件分配表

            該操作系統(tǒng)中,文件系統(tǒng)僅到應(yīng)用數(shù)據(jù)區(qū),和應(yīng)用系統(tǒng)區(qū)以及應(yīng)用代碼去無關(guān),所以文件系 統(tǒng)占32K 的EEPROM 空間。數(shù)據(jù)區(qū)是以頁(yè)的形式分配給文件的,每頁(yè)大小是32 字節(jié),共設(shè)有1024 頁(yè)。存儲(chǔ)在系統(tǒng)區(qū)的文件分配表占用1K 空間。分配表如圖2 所示:該表一共有1024 頁(yè)(用十六進(jìn)制 表示),第1 頁(yè)代表數(shù)據(jù)區(qū)的前32 個(gè)字節(jié),以后依次類推。當(dāng)表項(xiàng)為FFFF,表示文件結(jié)束。當(dāng)記錄 為FFFE 時(shí),該頁(yè)可用。每頁(yè)的表項(xiàng)記錄該文件下一頁(yè)的頁(yè)碼。如圖所示。該文件占用的頁(yè)碼分別是 1,0xC,0xD,0x10,0x14。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();