2/2 .. 4/5 wow ~ 兩個月沒碰網誌囉。
這段時間大概真的時間都被佔滿了。
趁現在有空 , 寫寫這個週末做的事情。 因為工作的關係, 可能要開始研究ANDROID了。自己開始尋找一些切入點 . . .
* 看完Linus 對 GIT的簡介:
http://www.youtube.com/watch?v=4XpnKHJAok8
最近無論看哪個專案都是提供 GIT而非 SVN。週末原本想多研究一點關於整個編譯環境的東西(除了 GIT, REPO,還有Makefile )。不過一直到傍晚才開始研究。不過 well ... 那也是2007年的影片了。 我落後的程度大概3~5年吧,哈哈。
* 看完網路上跟D-BUS相關的文章
先前聽到同事對 pipe的評論: 不適合用來傳大量資料.. blah blah blah..應該用d-bus blah blah blah ... 那時候在想說核心什麼時候多了這個功能我都不知道。聽過同事Android簡介,特別提到Android採用的 IPC 是 open binder 而非 d-bus。到底D-BUS是什麼? open binder是什麼?
閱讀的起點從這裡開始:
http://www.freedesktop.org/wiki/Software/dbus
建議從 Linux Journal 開始, 接著 Red Hat Magazine .. 然後 IBM devloperWorks
"Connect desktop apps using D-BUS" (IBM developerWorks) by Ross Burton (July 2004)
"Get on D-BUS" (Red Hat Magazine) by John Palmieri (January 2005)
"Get on the D-BUS" (Linux Journal) by Robert Love (January 2005)
"The DBus missing tutorial - DBus Activation" by Raphaël Slinckx (2005)
D-Bus Low-Level API Tutorial by Matthew Johnson (Nov 2005)
Introduction To D-BUS by Aaron Seigo & KDE community (2007)
結論:
* D-BUS 是 IPC ,用來取代在兩大桌面陣營KDE , GNOME 先前所採用的CORBA, DCOP等大架構。
* D-BUS 最主要功能就是允許定義method ( call and reply ) 或者 signal ( broadcast without reply ),以及定址。
* D-BUS 需要一隻user space 的daemon負責傳送resquest , signal , reply, 所以上面所說的 "更快" 是錯誤的。資料多經過一個process不會變得更快。但是一定會更robust。
* D-BUS 主要應用
VOLUME Manager - D-BUS - GUI ( 例如我們看到硬碟插入..會彈出畫面 )
NETWORK MONITOR - D-BUS - GUI ( 例如插拔線, 網路訊號 ), Linux Journal 提到一個可能的情境: 當鬧鐘鈴響的時候, 自動把背景音樂關小聲, 撥放鬧鐘鈴聲。
* D-BUS 型別的定義跟 xml-rpc 很相似。
* D-BUS 目前的language binding 沒有很多。 QT , glib 有各自的 binding。 python 也有。 C++ 的binding 生死狀況不明。意味著要運用這樣的架構免不了要先想辦法搞定library這層。
* IMSEP, HAL
* TheUsualSuspects:TheKernel,udev,D-Bus, HAL,NetworkManagerandFriends
* Connection Manager for embedded linux systems
時間不夠看open binder。 不過至少有足夠的資訊讓我瞭解這是什麼了。
Tap-Defense 玩到 41 關功敗垂成 .
Subscribe to:
Post Comments (Atom)

0 comments:
Post a Comment