複製鏈接
請複製以下鏈接發送給好友

對象管理器

鎖定
操作系統資源用名叫對象的抽象型數據來代表。對象可以代表文件目錄和線程進程等任何東西。每個對象含有標識對象描述、訪問對象方法等信息。 [1] 
中文名
對象管理器
外文名
Object manager
定    義
完成對象的創建、管理、刪除
作    用
對資源統一管理並操縱它們
系    統
計算機
應用學科
計算機原理

對象管理器工作原理

操作系統的資源都用對象來表示。完成對象的創建、管理、刪除等功能的就是對象管理器。操作系統通過對象管理器對資源進行統一的管理,並使用共同的代碼操縱它們。
進程、線程和Windows Server 2003執行體的其他部件在需要時可創建對象。而WindowsServer 2003的對象管理器在接到創建對象的系統服務要求後,則要做以下處理:
1、為對象分配內存;
2、給對象分配一個安全描述體,以控制哪些用户可以對該對象訪問以及可以進行的操作;
3、創建和維護對象目錄表目;
4、創建一個對象句柄並返回調用者。
Windows Server 2003對於對象的管理、組織和操作的模型是基於文件系統的模型。對於對象管理的一個主要方面是對對象名空間的管理。為了管理對象名空間,對象管理器維護一個對象目錄系統,每個對象在對象目錄中均有相應的表目,整個對象目錄是個樹形結構。樹的根用反斜槓“\”表示。葉節點是對象,每個對象有對象名,對象名是供共享進程查詢對象句柄使用的,中間節點是對象目錄名。對象目錄也是個對象。所有進程都可以訪問對象名空間。一個進程在創建對象或打開對象句柄時指定對象名,此後進程通過對象句柄訪問對象。對象句柄是一個指向進程指定的對象表的索引,該對象表是進程資源集的描述,對象表表目序號為句柄,另外,對象表的表目中還包含有認可的存取權限以及由該進程創建的進程能否繼承對象的句柄的信息以及指向對象的指針。由於可以跳過查找對象名的工作,因此使用對象句柄要比使用對象名快。當一個進程打開一個共享對象的句柄時,還需説明操作類型,對象管理器會根據對象的安全描述體審查是否允許該進程使用以及是否允許它進行此類操作。
對象名空間類似文件系統的符號名空間。訪問一個對象也使用路徑名,路徑名的表示方法也與文件系統相同。而且也允許一個對象目錄(中間節點)與其他分支上的某個對象(葉節點)進行符號連接,以便於訪問。 [2] 

對象管理器基本功能

對象管理器主要具有以下功能:
1、對象管理器提供使用系統資源的公共、一致的機制。
2、把對象保護孤立到操作系統的一個位置,實現安全保護,以達到美國政府的C2安全級。
3、它提供了一種機制來控制進程使用對象,實現了資源的訪問控制
4、對象管理器有一套對象命名方案,能夠容易地合併現有對象(比如設備、文件以及文件系統目錄等)。
5、對象管理器能支持各種操作系統環境的需要。
6、建立統一的保留規則(也就是説,在所有進程都結束使用某一個對象後,才釋放該對象)。 [3] 
參考資料
  • 1.    (美)Lee Hakfield Dave Hatter Dave Bixler,Windows NT Servr 4安全手冊,機械工業出版社,1998年06月第1版,第34頁
  • 2.    沈祥玖,李作緯主編,操作系統原理與應用 第3版,高等教育出版社,2009.11,第123頁
  • 3.    伍紅兵編著,VisualC+編程深入引導,中國水利水電出版社,2002年03月第1版,第327頁