日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

5 蘋果開發(fā)人員技術(shù)文檔連載之-系統(tǒng)架構(gòu)( 五 )



進(jìn)程管理器

Mac OS X中,由進(jìn)程管理器來管理所有的進(jìn)程 。它對共享資源的訪問進(jìn)行控制,管理應(yīng)用程序的調(diào)度和執(zhí)行,并允許多個應(yīng)用程序共享CPU時間和其它資源 。當(dāng)用戶雙擊一個應(yīng)用程序或一個文檔圖標(biāo)時,F(xiàn)inder使用進(jìn)程管理器來啟動應(yīng)用程序 。進(jìn)程管理器也提供了許多機(jī)制,允許您控制進(jìn)程的執(zhí)行,啟動進(jìn)程并獲得有關(guān)進(jìn)程的信息 。

對于進(jìn)程管理器的相關(guān)內(nèi)容參見“多樣性環(huán)境下的問題和可選項”一章中的“任務(wù)和進(jìn)程” 。

Carbon事件管理器

Carbon事件管理器把事件分配給合適的事件處理器,這種分配是基于事件類型和目標(biāo)應(yīng)用程序環(huán)境的 。視窗服務(wù)器把它接收到的事件放到目標(biāo)應(yīng)用程序進(jìn)程的運(yùn)行循環(huán)端口中 。Carbon事件管理器從端口獲得事件,把它打包成合適的形式,并把它傳遞給應(yīng)用程序(可以是 Carbon、Cocoa和Java)事件處理結(jié)構(gòu)的最低層“容器” 。要實現(xiàn)這一點,Carbon事件管理器需要經(jīng)常確定哪個窗口是當(dāng)前的活動窗口,在窗口上是否有鍵盤輸入的焦點,等等 。

更多關(guān)于Mac OS X事件處理的介紹,參見“追蹤用戶事件” 。

Apple事件

Apple事件是一種高級事件,應(yīng)用程序可以把它發(fā)送到本地或者遠(yuǎn)程計算機(jī)上的其它應(yīng)用程序中,甚至可以發(fā)送給它們自己 。Apple事件是Mac OS X中應(yīng)用程序間通訊的主要機(jī)制 。應(yīng)用程序主要用它們來對其它應(yīng)用程序的服務(wù)和信息發(fā)出請求,或者對這些請求提供響應(yīng) 。

系統(tǒng)級的腳本語言AppleScript,作為一項相關(guān)的技術(shù)同樣也是Mac OS X的一部分 。用戶可以使用AppleScript發(fā)送Apple事件給應(yīng)用程序 。

剪貼板

Mac OS X中的剪貼板(也被稱為“粘貼板”)是一種后臺服務(wù)程序,它允許在應(yīng)用程序間轉(zhuǎn)移數(shù)據(jù) 。在某些方面它與Mac OS 9中的剪貼板相似,但也有一些不同的地方 。Mac OS X中的剪貼板可以對同一數(shù)據(jù)保留多種表現(xiàn)形式 。它被所有正在執(zhí)行的應(yīng)用程序所共享使用,剪貼板中包含了用戶進(jìn)行剪切或復(fù)制的數(shù)據(jù) 。當(dāng)一個應(yīng)用程序要把數(shù)據(jù)傳送給另一個應(yīng)用程序時,剪貼板同樣也能幫助實現(xiàn)這一功能 。剪貼板用于復(fù)制-剪切-粘貼操作,并在拖拽操作中作為一種數(shù)據(jù)傳送機(jī)制 。同時它也被服務(wù)用于在應(yīng)用程序間的數(shù)據(jù)傳送 。

核心服務(wù)層Core Services

核心服務(wù)層包含了那些與圖形用戶界面無關(guān)的系統(tǒng)服務(wù) 。該層包括Core Foundation、Carbon Core、CFNetwork 、Web服務(wù)和Open Transport 。核心服務(wù)層主要由兩個框架構(gòu)成--核心服務(wù)包羅框架(CoreServices.framework)和核心基礎(chǔ)框架(CoreFoundation.framework) 。這一節(jié)講的是在這些框架中比較突出的技術(shù);對于其它技術(shù)(如:核心安全服務(wù))不進(jìn)行探討 。

核心基礎(chǔ)Core Foundation

Core Foundation是一種提供底層軟件服務(wù)的框架(CoreFoundation.framework),所提供的這些底層軟件服務(wù)不論對應(yīng)用服務(wù)、應(yīng)用程序環(huán)境還是對應(yīng)用程序本身都是十分有用的 。使用Core Foundation所帶來的一個好處就是:提高了在不同環(huán)境和層中的框架、庫和應(yīng)用程序之間共享代碼和數(shù)據(jù)的性能 。Core Foundation也能夠通過Unicode字符串來容易地實現(xiàn)國際化,并提供了用于實現(xiàn)操作系統(tǒng)獨立性的抽象概念 。

在Core Foundation中需要使用隱含類型,您可以用這些類型來創(chuàng)建“對象”,每一個對象都有它自己的獨立標(biāo)識和值(或一系列值) 。在創(chuàng)建這些對象時,Core Foundation為內(nèi)存分配提供了特定工具 。并且,它還具備了一些通用基本類型和多態(tài)函數(shù),用以實現(xiàn)類型間操作 。

Core Foundation包括了與一些編程實體相符合的隱含類型,這些編程實體如字符串、數(shù)組、代碼字典、日期、整數(shù)和樹 。它還具備了一種用于插件的標(biāo)準(zhǔn)體系結(jié)構(gòu),以及一種用于動態(tài)查找、裝載代碼和位置相關(guān)資源的機(jī)制(和一套與其相對應(yīng)的API) 。另外,它所擁有的服務(wù)能夠通過URL訪問本地和遠(yuǎn)程資源,設(shè)立分布式通知中心,讀寫XML屬性列表,解析XML以及讀寫每個用戶和每臺機(jī)器的預(yù)置參數(shù) 。

推薦閱讀