Symbian OS 9.1的Native API調用全部受Application Framework管理,而以前的版本可以直接調用到HAL層,所以S60v3的API有了權限管理,Raw/Native API的直接調用被取消.沒有權限管理模型的調用(S60v1,v2)同樣被拒絕.
區別二:
OS9.1的應用程序引入了Capabilities 權限, Data Caging 安全存儲,Secure Interprocess Communication 安全的跨進程通信, 使得每個應用程序相互獨立,即使有相同的權限(TCB以下)都不能互相訪問私有數據.所以保護了sys,private文件夾,沒有TCB或AllFiles權限是不能讀寫的。
區別三:
OS9.1采用了新的實時內核EKA2,重新定義了EUSER(用戶對象)和DllEntrypoint(DLL入口),好象是刪除了,用Security Model(安全模型)取代。
區別四:
代碼編譯使用了新的GCC EABI,說是減少了內存使用,增加ROM代碼,提高效率,但最後用了托管架構,性能未必提高.這造成了文件格式不兼容.以前的應用程序為.app,現在是.exe(這不是主要,關鍵是格式).
區別五:
sis的全稱是SymbianOS Install System,安裝系統,它的作用是判斷系統版本,解壓壓縮的exe,rsc,mif...等等文件,並進行crc效驗.這是S60v1,v2的SIS功能,在S60v3中,SIS變成了壹個Security Checker安全檢查器,除了完成以上的功能外,還要檢查電子簽名,包括簽名裏容許的權限,還要詳細檢查每個API調用,是否符合簽名裏的權限,任何壹相不符合,都不能安裝.Symbian把新的SIS稱為SISX,X=Extended擴展,如果在OS9.1上打開沒有Security Model的SIS,就會提示"不支持安裝".
ps.這裏特別提壹下,不要以為把程序裝在TF卡裏,再用讀卡器修改好,再到手機裏用,因為如果妳選擇安裝到可移動存儲(不在Security Model管轄範圍內),它會在安裝的時候自動生成壹個Hash放在系統目錄下,每次啟動的時候都要效驗...那裏的Hash是最原始的文件,想仿冒? 小於2^64大小的數據Hash不會有任何壹個重復.....