Android 與 Linux 的關係

我們的競爭對手紛紛把 Android 列在他們的 feature set 上, 對於跑 Linux Kernel 的本公司, 感覺好像有點落後~~~

但是 Android 是另外一個 OS (Operating System) 嗎? 不是的! 雖然 Google 強力把它包裝成Google 的 OS, 不過它其實是某種的 Linux. 這也就可以解釋 Google 為何又想要搞另外一套 Chrome OS 出來, 因為 Android 畢竟不是 Google 自己養大的孩子, 只是把別家的孩子抱來養, 穿上 Google 家的衣服而已! 既然 Linux 是受 GPL 授權保護的 open source, Google 當然會覺得養自己的孩子比較保險.

那麼 Android 是怎麼做到的呢? 首先, Google 在 Linux 開了一個後門, 把某些核心程式搬到 LInux 的上頭來, 不再受 Linux 的管轄. 在下圖中黃色的這塊就是 Android 的核心, 各位可以看到它建設在 Linux 的基礎上. 這樣大家應該可以瞭解 Android 是如何寄生於 Linux 的架構.

[圖片遺失]

Mr./Ms. Days (MMDays) – 網路, 資訊, 觀察, 生活 這個網站上, 對於 Android 有很多篇相關的好文章, 大家可以參考這裡的介紹.

Simplay HD 小檔案

Simplay HD 是晶像公司 (Silicon Image) 所提出的影音認證方式, 透過 Simplay Labs 的測試, 來決定是否發給「Simplay HD」的認證標籤. 拿到這個標籤的意義在於 HDMI 裝置間互連的相容性可以有所 "保證". 

因此, 廠商要進行 Simplay HD 認證測試之前,需要通過:

1.  HDMI 授權測試中心(ATC)

2.  數碼內容保護公司(DCP LLC)- 重點是 High-Bandwidth Digital Content Protection – HDCP.

這兩個單位的測試.

參與Simplay HD測試的廠商可選擇以下三種測試服務:
Simplay標準測試(Simplay Standard)—不須年費、須繳標準測試費用、採用標準測試時程,並僅享有選擇性的認證商標使用權。
Simplay優先測試(Simplay Preferred)—不須年費、測試費享七五折優惠、享優先測試行程、可使用認證商標,並可名列於網站上。
Simplay精英測試(Simplay Elite)—須繳一萬美元年費、前四次免費測試,並於第五次之後享七五折優惠、享優先測試行程、可使用認證商標,並特別名列於網站上,每項產品可享有五小時的測試支援服務。

這是通過認證的廠商列表, 家數急速成長中. 

http://www.simplaylabs.com/consumers/verified_products.aspx

其中, 根據產品的屬性分類為:

A/V Receivers
Cables
DVD Players/Digital Media Adapters
Home Theater Systems
Projectors
Set-top Boxes
Switch Boxes
Televisions
Video Cameras

 

QCELP 與 EVRC 小檔案

不小心瞄到競爭對手 Telechips 的 audio 格式中竟然有兩個我不認識的 format, 只好研究一下那是什麼?

QCELP 全名 Qualcomm Code Excited Linear Prediction, 又叫做 Qualcomm PureVoice. 既然是 Qualcomm 做的, 想來是給手機使用, 沒錯! 它用在 CDMA 手機的語音壓縮上. 後來 QCELP 被 EVRC 所取代.

QCELP 有兩個版本, QCELP8 和 QCELP13 分別對應 8 kbps 和 13kbps 的版本. 由於原始的 speech 訊號是 8 KHz x 8 bits per samples, 所以為壓縮之前是 64 kbps, 壓縮率的大小, 大家應該一目瞭然. 至於 CELP 的原理, 也正如其名:  Code Excited Linear Prediction.

EVRC (Enhanced Variable Rate CODEC) 以 160 個 samples 為一個 frame, 輸出有三種格式: Full rate: 8.55kbps, Half rate: 4 kbps, eighth rate: 0.8 kbps. 大家可能會好奇, 為何少了一個 1/4 rate? 因為那個獨立成 EVRC-B 的壓縮法. 1/8 倍不是比 1/4 倍更猛嗎? 為何主流不是 1/8 rate 呢? 因為壓縮總是有物理極限的, 所以 1/8 專門用來對付 noise 而不是 speech.

後來 EVRC 又給 SMV (Selectable Mode Vocoder) 所取代了. SMV 繼承 EVRC 的特徵, 又加上錄音狀況的判斷 voice activity detection (VAD) . 根據下列的場合不同, 它可以動態採用 full rate / half rate 壓 speech ,1/4 or 1/8 rate 壓 noise, 每個 frame 可以有 2~4 個 sub-frame, 因此效能比 EVRC 高.

  • Silence/Background noise
  • Non-stationary unvoiced
  • Stationary unvoiced
  • Onset
  • Non-stationary voiced
  • Stationary voiced

CDMA 2000 的 G4V 取代了 SMV, 但是在 3GPP2 系列 (3GPP 是 GSM, 3GPP2 是 CDMA), 還是看得到 SMV 的身影, 它的副檔名叫做 3G2. 因此本文標題上寫的兩個格式可以說都不重要了, 不如去關注 3GPP 來得有意義.

 

Windows Rally 技術小檔案

Windows Rally 不是視窗版拉力賽車遊戲, 而是 Microsoft 重新包裝出來的網路技術, 希望能夠無痛地建立 PC 與周邊的網路連結. 乍聽之下, 有點像是 Apple 的 AirPort 那樣 – 只要擺著網路就自動通了. 不過, 容易使用的程度應該還差 Apple 很多吧!

Rally 的架構包括 IP 到 AP 中間的部分:

技術規格包括 3 個部分:

1.  PnP-X: Plug and Play Extensions for Windows: 在 Windows 自動安裝 device, 也就是把 uPnP 的觀念擴充到網路上.

2.  Link Layer Topology Discovery (LLTD) Protocol: 發現 device 與網路拓樸, 以及保證 QoS (Qulaity of Service).

3.  Windows Connect Now: 連結無線網路, 以及連外的有線網路.

實務上它有什麼用呢? 以印表機為例, 它還可以支援先用 USB 連起來偷看 device, 再改用無線連結的招數.

一個 client 找到了印表機 (device), 而印表機上又有一個 web service (ws), 則它們可以產生如下的 MSC. 最後 client 都是在跟標準的 WS 對話, 由此來建立共通性與相容性.

以上參考 Microsoft 2006/5/23 版的"Windows Rally Technologies: An Overview", 圖都是從 MS 來的.

PTP 小檔案

PTP 是 Picture Transfer Protocol 的縮寫, 它是一種把數位相機或手機裡面的相片, 傳送到電腦或其他周邊的規範, 正式名稱為 ISO 15740.

它有個親戚是 USB PTP, 專門定義在 USB 上面做 PTP. 家族裡面還有 PTP/IP, 可以透過 WIFI 來傳照片.

Windows 和 Mac 都支援 PTP 格式. 早期有 1.0 版, 2008 年進化到 1.1 版. 其主要特徵包括:

  • 支援串流
  • 支援 vendor 的擴充集
  • 支援 4 giga bytes 的檔案.
  • 支援多個 chunk 集合成的檔案, 以加速系統的反應, 不會被單一檔案拖住.
  • 支援任意倍數縮放, 以節省傳輸時間; 可以只傳縮圖.
  • 支援 arrays of datasets + fast file characterization operation, 好處是比較容易選擇要處理的檔案.
  • 支援 Digital Negative (DNG) file format
  • 不支援 (遠端) 改檔名
  • 不支援 (遠端) 改檔案內容

詳情可看 wiki.