《深入學習java虛擬機》--筆記3

 (1)JAVA 體系結構包括四個獨立相關的技術:
  * Java程序設計語言
  * Java class文件格式
  * Java 應用編程接口(API)
  * Java 虛擬機
   當編寫並運行一個Java程序時,就同行體驗了這四種技術。用Java編程語言編寫源代碼,把它編譯成java class文件,然後再在Java虛擬機中運行class文件。當編寫程序時,通過條用類中的方法來訪問系統資源。當程序運行時,它通過調用class文件中實現了JAVA API 的方法來滿足Java API的調用。
    Java虛擬機和JAVA API一起組成了一個“平臺”,所有Java程序都在這上面編譯。具體瞭解如圖: 
  
《深入學習java虛擬機》--筆記3
(2)Java class文件
    其主要任務:爲JAVA程序提供獨立於底層主機平臺的二進制形式的服務,它可以運行任何支持Java
虛擬機硬件平臺和操作系統上的二進制文件

(3)Java API
   Java API通過支持平臺無關性和安全性,使得Java適用於網絡應用。Java API是運行庫的集合,它提供一套訪問主機系統資源的標準方法。運行java程序時,虛擬機裝載程序的class文件裏將包含所使用的Java API class文件。
   所被裝載的class文件(包括從應用程序中和從JAVA API中提取的)和所有已經裝載的動態庫(包括本地方法)共同組成了在JAVA虛擬機上運行的整個程序。

(4)JAVA的安全策略
   這裏有一個非常重要的概念-沙箱,它可以使你接受來自任何來源的代碼,但不會要求你避免將來自不信任站點的代碼下載到機器上。但是當來自不可靠來源的代碼運行時,沙箱縣組織它進行破壞系統的任何動作。不必指出哪些代碼可以信任,哪些代碼不可以信任,也不必掃面查找病毒,沙箱本身限制了下載任何病毒或惡意代碼、有漏洞的代碼,使它們不得能對計算機進行破壞。

  Java沙箱,其基本組件如下:
   * 類裝載器結構
   * class文件檢驗器
   * 內置java虛擬機(及語言)的安全性
   * 安全管理器及JAVA API  -->沙箱的外部邊界,是可定製的,允許爲程序建立自定義的安全策略(如有個check方法)。
  在JAVA沙箱中,類裝載器體系結構時第一道防線,在沙箱裏所起的作用:
     * 防止惡意代碼區干涉善意代碼
     * 守護了被信任的類庫的邊界
     * 將代碼歸入某類(稱爲保護域),該類確定了代碼可以執行那些部分
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章