閱讀829 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Google手機Android操作係統麵試題

    Google 手機 Android操作係統麵試題 
 

  1﹑Android 手機操作係統的四層架構? 
 
    架構框架以此從上到下: 
 
   1.Applications   (應用程序(應用層)); 
 
   Android 會同一係列核心應用程序包一起發布,該應用程序包包括 email 客戶端,SMS
短消息程序,日曆,地圖,瀏覽器,聯係人管理程序等。所有的應用程序都是使用 JAVA 語
言編寫的。 
 
   2.Application FrameWork    (應用程序擴展層(框架)); 
 
  由於 Android 的手機操作係統是,基於 Liunx 2.6 係統之上封裝而成。所以開發人員可也
以直接訪問核心程序所使用的API框架,該核心應用程序的API框架設計簡化了組件的重用,
任何一個核心應用程序(模塊)都暴露出它的功能作用,並且其他應用程序也都可以使用該核
心應用程序(模塊)的功能(不過的遵守該核心應用程序框架的安全性限製)。同樣,該應用
程序的重用機製也使用戶方便使用應程序的相關組件。 
 
   API 框架隱藏的核心應用程序是一係列的應用程序的服務和係統應用,其中包括如下:  
 
  (Android 手機中的 View 是最基本的一個 UI 類) 
 
    豐富而又可擴展的視圖(手機界麵所顯示的組件(Activity上所顯示的))組件,可以用
來構建應用程序  如:(視圖)Views,  網格(grids),  文本框(text boxes),  按鈕(button),  放
置圖片區(imageview),文本編輯區  (edittext),  文本顯示區(textview), 
 
   3.Android RunTime Libraries   (Android 係統運行庫); 
 
   4.Liunx Kernel   (Android  係統最底層核心係統 Liunx) 
 
Android  的核心係統服務依賴於 Liunx 2.6 內核,如係統安全,內存管理,進程管理,網
絡協議棧和驅動模型。Liunx 內核也同時作為硬件和軟件棧之間的抽象層。 
  
  
 
   2、 Android dvm的進程和 Linux 的進程,  應用程序的進程是否為同一個概念 
 
   DVM 指 dalivk 的虛擬機。每一個 Android 應用程序都在它自己的進程中運行,都擁有
一個獨立的 Dalvik 虛擬機實例。而每一個 DVM 都是在 Linux  中的一個進程,所以說可以
認為是同一個概念。 
 
   3、sim卡的 EF  文件有何作用 
 
   sim 卡的文件係統有自己規範,主要是為了和手機通訊,sim 本  身可以有自己的操作
係統,EF就是作存儲並和手機通訊用的 
 
   4、嵌入式操作係統內存管理有哪幾種,  各有何特性 
 
    頁式,段式,段頁,用到了 MMU,虛擬空間等技術 
 
   5、  什麼是嵌入式實時操作係統, Android 操作係統屬於實時操作係統嗎? 
 
    嵌入式實時操作係統是指當外界事件或數據產生時,能夠接受並以足夠快的速度予以
處理,其處理的結果又能在規定的時間之內來控製生產過程或對處理係統作出快速響應,並
控製所有實時任務協調一致運行的嵌入式操作係統。主要用於工業控製、  軍事設備、  航空
航天等領域對係統的響應時間有苛刻的要求,這就需要使用實時係統。又可分為軟實時和硬
實時兩種,而 android 是基於 linux 內核的,因此屬於軟實時。 
 
   6、一條最長的短信息約占多少 byte? 
 
  中文 70(包括標點),英文 160,160 個字節 
 
   7、 android 中的動畫有哪幾類,它們的特點和區別是什麼? 
 
    兩種,一種是 Tween 動畫、還有一種是 Frame 動畫。Tween 動畫,這種實現方式可以
使視圖組件移動、放大、縮小以及產生透明度的變化;另一種 Frame 動畫,傳統的動畫方
法,通過順序的播放排列好的圖片來實現,類似電影。 
 
   8、handler機製的原理 
    andriod 提供了 Handler  和 Looper  來滿足線程間的通信。Handler  先進先出原則。
Looper類用來管理特定線程內對象之間的消息交換(Message Exchange)。 
 
   1)Looper:  一個線程可以產生一個 Looper 對象,由它來管理此線程裏的 Message 
Queue(消息隊列)。 
 
   2)Handler:  你可以構造 Handler 對象來與 Looper 溝通,以便 push 新消息到 Message 
Queue 裏;或者接收 Looper從 Message Queue 取出)所送來的消息。 
 
   3) Message Queue(消息隊列):用來存放線程放入的消息。 
 
   4)線程:UI thread  通常就是 main thread,而 Android 啟動程序時會替它建立一個
Message Queue。 
 
   9、說說mvc 模式的原理,它在 android 中的運用 
 
   MVC(Model_view_contraller)”模型_視圖_控製器”。 MVC 應用程序總是由這三個部
分組成。 Event(事件)導致 Controller改變 Model 或View,或者同時改變兩者。隻要 Controller
改變了 Models 的數據或者屬性,所有依賴的 View 都會自動更新。類似的,隻要 Controller
改變了 View,View會  從潛在的 Model 中獲取數據來刷新自己。 

最後更新:2017-04-04 07:03:18

  上一篇:go 蘋果戰世界:蘋果史上27大口水戰
  下一篇:go 近 30 年圖形用戶界麵的發展編年史