2009年4月18日 星期六

Google Summer of Code for LXNM

Standard
Google Summer of Code (簡稱 GSOC)是一個 Google 提供給全世界學生的暑期打工計畫,像是學校專題一般,是以 Mentor 指導學生的形式進行。一但學生通過指導教授的評分標準,就可以收到 Google 所準備的優渥賞金。而經過短短不到一個月緊湊的籌備和申請過程,最近這幾天終於將開始啟動今年的打工計畫,已被專案接受申請的學生們(包括我),則將要開始進行無止盡的 Coding :-)

比較可惜的是,今年 LXDE 無緣進入 Google Summer of Code (簡稱 GSOC)的 Project List,眼看著 GNOME 、 KDE 等著名 Desktop Environment 的蹤影都在清單上,真不是滋味!值得慶幸,因為眾 Distributions 如 Debian 等的幫助,LXDE 還是可以透過這些 Project 的管道,收到來自世界各地的 GSOC 學生開發者以及他們充滿創意的提案。

其中,這次 LXNM 將會是 GSOC 的重點計劃之一,我是從 Freifunk 所提出的 Proposal,主要是重新改寫 LXDE 的 Network Manager - LXNM,以補強 LXDE 的網路元件功能和支援更多網路應用。有鑑於之前設計的缺陷,因此大致畫了一個新的 LXNM 大架構圖:

整體上無太大變化,主要是增加 LXNM 與 Kernel 和硬體溝通的管道,分為純粹以 Syscall 控制硬體以及使用 script 控制網路裝置,前者好處是直接且有效率,但因為 Kernel-dependent 的因素,則需要對不同的作業系統做開發,移植困難。後者則是可由各套件維護者,輕易的自行設計各系統特有控制網路裝置的 Script,而不需要撰寫艱澀的程式碼,使移植更為容易,缺點則是效能較差。

此外,由於之前頭痛醫頭腳痛醫腳,在 LXNM Client/Daemon 的 Protocol 上之定義也是亂無章法,會趁此機會重新整理並訂出規範。

後記

因為,被 GSOC 接受了申請和提案,現在可以不用擔心短期的金錢壓力,有時間盡情完成這走到一半死掉的 LXNM Project呀。