2008/05/30

好康推薦: Wired-Marker

因工作和興趣,時常需要研讀網路上的資料,如:RFC、HOWTO 等。這些資料的份量常常和一本書一樣,不是一兩天就看得完。如果你和我一樣,不想浪費紙張而直接在電腦上閱讀,一定和我有一樣的困擾:
  • 長長的頁面看到一半,下次要接著看的時候,都要先想想上次看到哪裡...
  • 看到重點不能畫線,剪貼?抄筆記?既麻煩又沒有效果。
  • 因為不能畫線,以至於看到後面時,常常找不到看過的重點...
今天要推薦的就是能夠解決上述問題的工具:Wired Marker


Wired Marker 是 Firefox 的外掛程式,有點類似 bookmark 的功能,但使用起來更接近傳統的書籤,你可以在一個頁面的任意位置放置書籤。它更像是一隻螢光筆,你可以在頁面的文字、圖形、表格上畫上醒目的記號。這些記號也同時是書籤的位置,你可以在 Firefox 的左側框點選既有的書籤;也可以在右側捲軸的旁邊看到文件當中各個書籤位置的示意圖,方便快速移動。

安裝和使用都太簡單了,不需說明。以下再介紹這個程式可能用處:
  • 剪貼筆記本,畫過線的重點可以綜合成一頁,方便瀏覽檢視。
  • 螢光筆可以自訂多種顏色,方便組織分類。
  • 畫線的資料是存在 PC 上,但可以 export 成 XML,很容易就可以複製、傳遞。
心動了嗎?自己試試看吧。

2008/05/20

Ubuntu 的 Terminal Emulator

RS232 是發展 embedded 系統時,相當重要的一個介面。當然,也需要合適的 terminal emulator 來搭配。在 Windows 上,有不少好用的 terminal emulator 可選擇,例如:TeraTerm Pro、PuTTY 或 Windows 預付的超級終端機等等。但在 GNU/Linux 上的選擇就好像少了一點,以下簡單介紹兩個用在 Ubuntu 底下的 terminal emulator。

CuteCom


CuteCom 是 line-based 的 graphical serial terminal。所謂 line-based 是以「行」為單位來輸入,不像一般的 terminal emulator 是以 character 為單位。優點是可以不管 device 的 console 有沒有編輯命令列的能力,我們都可以先在 cutecom 上編輯好再一次送出指令。送出的指令也都存在 GUI 上,只要點一點就可以叫出來重送。另一個好處是可以在字元與字元之間加上延遲,這可解決某些 device 的 console 會掉字元的問題。

Line-based 也是 cutecom 的缺點。許多 embedded Linux 的 console 都有 auto-complete 的功能,但在 cutecom 上卻無法使用。另一個較嚴重的缺點則是不能處理 escape sequences,諸如彩色、粗體、游標移動等,都不能正確顯示。甚至連 tab (0x9) 也都沒有處理。因此 cutecom 比較適合用在簡單型的 console 上。

CuteCom 的安裝方法非常簡單:
apt-get install cutecom
執行的方法更簡單:cutecom,沒有任何命令列參數。

MiniCom

MiniCom 是很傳統的 text-based terminal emulator。雖然沒有 CuteCom 在前面提到的優點,但同樣也沒有那些缺點。既可使用 auto-complete,也可正確處理 escape sequences。因此,非常適合用來當作 embedded Linux 的 console。

MiniCom 安裝方法也一樣簡單:
apt-get install minicom
使用方法也不難,以下幾個心得提供大家參考。首先是設定:
minicom -s
如果你的中文顯示沒有對齊,畫面不清楚。可以用以下方法強迫用英文顯示選單:
LANG= minicom -s
進入設定畫面,有幾個重要的設定項目:
  • Serial port setup,設定 serial device (/dev/ttyS0)、baud rate 等。
  • Modem and dialing,將 Init string、Reset string 設成空字串。
  • Screen and keyboard,將 Status line disabled 以免 status line 破壞畫面。此外,Edit Macros 可提供使用者定義 F1~F10 的 macro,你可以將常用的輸入定義為功能鍵。
  • Save setup as dfl,會將設定存成 ~/.minirc.dfl,設定完畢就 Exit from Minicom
如果設定都正確,在 shell 輸入 minicom 就可以連到 device 的 console 了。離開時,記得按 Ctrl-A 然後 x。

2008/05/19

VMware Virtual Machine 的效能

很好奇 VMware virtual machine 的效能 (performance) 到底如何?於是找了個機會做了一個實驗。實驗用機器的規格為:
  • CPU = Intel Celeron 430 @ 1.80GHz
  • DRAM = 1GiB - 64MiB
此 PC 安裝了兩套作業系統。

第一套是 Windows XP Service Pack 2,並在上面安裝 VMware Player 2.0.2 來跑 Ubuntu 7.10 JeOS i386。分配給 Guest OS 的 memory 是 512MiB,virtual HDD 是 10GiB。我在上面編譯一套 embedded Linux 的系統,總共花了 23 分鐘才完成。

第二套是 Ubuntu 8.04 LTS Desktop x86_64,安裝在 40GiB 的硬碟空間上 (當然 1GiB 的 memory 全歸它使用)。在此環境下編譯同一套系統,總共花了 16 分鐘,大約快了三分之一。

看起來效能的差距不算小。不過一般來說,我們較常進行的是約需兩三分鐘的局部編譯,這時兩者的差異就不是那麼明顯了。況且,編輯的時間比編譯還多更多。因此結論是:還不錯用。

PS:雖然 Ubuntu 的版本不同,但兩次編譯用的 toolchain 是同一套。