2009年6月10日 星期三

旅遊節目之背後的故事

昨天早上,無意間看到這篇文章:脫光之後...然後呢??,這是旅遊節目主持人陳櫻文的部落格文章,我也才發現原來她還有參加幼幼台的,是布丁姐姐。


我很少出門、很少看電視、很少接觸規律生活外的事物,宅度很高,所以,週末時總會期待看些旅遊節目。我記得我第一次看見她時,覺得很像侯佩岑,好像正在介紹歐洲那邊的故事吧。儘管不是很熟練的感覺,如語言啊或什麼的,當時我覺得她的特色就是有活力,沒想到,她還是非常敬業的主持人,甚至我覺得有點過頭了!


看完這篇文章,深深覺得,世上充斥著許多看不見的故事。回憶起這幾年的感觸,有時追逐著他人的步調,總覺得對方好強好厲害,貪心的下場,卻沒想到,有得必有一失,每人一天僅有 24 小時啊!


忘記什麼時候開始,當老妹跟我說最近的旅遊節目幾乎轉型成吃吃喝喝後,恰好週末我也開始較常寫程式,便也越來越少看旅遊節目。或許,也戒掉這看似美好的刻意安排。但不可否則的,我開始比較想跟家人往外頭走走吃吃喝喝了。


免費網路廣播鬧鐘 - 以 Hinedo 實作

恰好看到有人有這個需求,所以就嘗試用輕便的 Hinedo 來實作囉。關於 Hinedo 是由 PCMan 的作者所創作的,以下是相關資訊


下載網址:http://of.openfoundry.org/projects/814/download
文章介紹:http://azo-freeware.blogspot.com/2007/06/hinedo-hinet-radio-10.html
相關位置:http://pcman.sayya.org/blog_read.php?id=pcman&article=85


關於製作成鬧鐘的方式,就純粹只是搭配作業系統的排程,以 Windows XP 為例,在 [控制台] -> [排定的工作] 即是管理與設定的地方,在 Unix 系統則有 crontab 等,在此不多作探討。


首先,要先了解 Hinedo 的架構,下載完後解開與執行後,可看到以下檔案



  • Hinedo.exe

  • License.txt

  • Menu.txt

  • Play.vbs

  • Update.vbs

  • UpdateMenu.vbs

  • Version.txt


其中比較重要的就屬 Hinedo.exe、Menu.txt 和 Play.vbs。


有興趣的可以在 cmd mode 下依序執行



  1. C:\Hinedo> Hinedo.exe

    • 開啟 Hinedo 廣播程式



  2. C:\Hinedo> Play.vbs 206

    • 播放 206 電台,即 Menu.txt 中的 "中廣音樂網i radio    206"




上述第一步,其實是開啟 Hinedo 廣播軟體,第二步是播放指定的電台。


以下是製作成定時排程播放的方式:(感謝 rain 提供使用 start 指令,可以解決必先預先開啟 hinedo 的限制 @ 2010/02/05)



  1. 製作批次執行檔,如 run_radio.cmd ,其內容如下

    • start C:\Hinedo\Hinedo.exe
      start C:\Hinedo\Play.vbs 206

    • 第二行的 206 則是查詢 Menu.txt 中所獲得的電台編號

    • 其中,假設 Hinedo 安裝解壓縮在 C:\ 位置,而 run_raido.cmd 建議擺在 C:\Hinedo\run_radio.cmd 吧



  2. 設定排程

    • 以 Windows XP 為例,可透過 [控制台] -> [排定的工作] 開啟。

    • 點選"新增的排定工作",並且透過[瀏覽]來選擇,選 C:\Hinedo\run_radio.bat ,接著設定工作的名稱和工作執行的方式,即鬧鐘的話,就設定每日,按下一步後則是設定切確的時間,接著還要輸入該台電腦的帳號密碼,即可完成設定。

      01 02
      03 04
      05

      最後可以按[執行] 看看是否能成功囉!過程會彈跳一個視窗出來,但隨即就會關閉,如果該視窗沒有關閉,算不正常的現象,請參考第三點。



  3. 使用上,目前有些限制

    • 電腦需開機

    • 需預先已執行 Hinedo.exe 程式,可以關閉播放,但至少一定要出現在右下角常駐程式那邊。




如此一來,設定的時間一到,就可以當作鬧鐘,自動執行播放廣播的動作囉!


PS. 原先規劃 bat 檔以為可以用上述兩道指令來正確開啟軟體、接著播放廣播,但測試的結果,發現會卡在第一道指令,因此,退而求其次,變成需要在開機狀態 + 程式已執行(不必播放廣播) 的情境下,才能正常播放廣播。


2009年6月9日 星期二

VMWare 相關問題


  • 安裝 VMWare tools 時,發現訊息 Bad system call (core dumped)

    • cd /usr/ports/misc/compat6x ; make install clean
      ln -s /usr/local/lib/compat/libc.so.6  /lib
      接著再重新執行步驟即可,只是最後覺得好像沒什麼必要又移除了 VMWare Tool 。



  • Your host does not have synchronized TSCs. Please read VMware Knowledge Base article 2041.

    • 可參考 教學 / 解決 AMD 64 x2 雙核心 用 VMware 遇到的問題

    • 最後,使用上還常碰到時間不正確的情況,忘了是否有安裝上述部分來調整時間,反而改採用網路更新時間的方式:

      • /etc/rc.conf

        • 增加 ntpdate_enable="YES"





      • 新增 root 的定期工作以更新時間,可自行決定更新時間囉

        • # crontab -e

        • * */6 * * * /usr/sbin/ntpdate time.stdtime.gov.tw







  • Windows - 磁碟機未備妥 - Exceoption Processing Message c00000a3 Parameters


    • 把軟碟機(Floopy)移掉看看




[Windows] Windows XP 之 Port Forwarding 設定

使用 port forwarding 的目的,研究上常以 VMware 安裝實驗環境,搭配 NAT
的服務,在自己的電腦上架一些工作站,此時工作站是使用 192.169.x.x 等 private ip ,在自己的電腦上要連倒還 ok
,但如果想透過其他電腦再連,常常變成要用遠端桌面,不是很方便,此時若能把自己電腦的 public ip 搭配 port forwarding
的設定,這樣對外就能連 public ip:port ,即能連進去 VMWare 架設的工作站了。


目前 VMWare Server 版是免費的,讓我感到不便的是沒有 port forwarding 服務以及要透過 Web 來設定,而
VMWare WorkStation 則有提供 port forwarding 的服務,可在 Virtual Network Setting
進行設定。


不過,扣除研究上來說,其實 port forwarding 常用來突破公司網路的設定用途,好比如公司擋掉 MSN 溝通的 port 服務等,當然對應的機制都是不少的。


隨意 google 到下面這套軟體,就拿它來應急了



其中 Trialware 算是第一次留意。查了一下,意思代表有期限、功能限制的軟體或者稱作是試用版更恰當,比較像是取代以前的 Shareware 共享軟體。稍微看一下版權介紹,似乎指說試用版的會有週期性彈跳視窗並中斷 port forwarding 服務。除此之外,這軟體設定上還滿簡單方便的。


另外,我記得大學還用過”穿越封鎖線”的軟體,查了一下,"穿越封鎖線"還不少新聞,指出作者企圖隱藏程式資訊,有變成木馬的特性,我只用過幾次而已,剛剛使用 AntiVir 掃也沒有說什麼。



看了一下,雖然我不曉得作者是否有用在非法事件上,但我覺得這在研究上,稱得上不錯的軟體。


最後,我在 Windows XP with SP3 的內建軟體發現 port forwarding 的設定方式!



  • [控制台]->[網路連線]->選擇對外網路,如[區域連線]->右鍵[內容]->分頁[進階]->[設定值]->分頁[進階]

    • 網路連線設定值,有列出幾張網卡,選擇對外網卡,如[區域連線],再選[設定值]

    • 接著選[新增],便出現"服務描述”、”您的網路上這個服務所在的名稱或 IP 位址(例如 192.168.0.12) (N):" 、"這個服務的外部連線阜號碼(E):"、"這個服務的內部連接阜號碼(I):" 和 TCP or UDP 的選項




假設 IP 是 140.x.y.z 並且在 80 port 架設 Web Server ,我嘗試設定



  • 您的網路上這個服務所在的名稱或 IP 位址(例如 192.168.0.12) (N):

    • 140.x.y.z



  • 這個服務的外部連線阜號碼(E):

    • 8080



  • 這個服務的內部連接阜號碼(I):

    • 80



  • 選 TCP


以上的設定,只是讓 140.x.y.z 的 8080 port 可以對應到 140.x.y.z 80 port ,經測試的結果,從另一台機器,的確可以透過 telnet 140.x.y.z 8080 連到 140.x.y.z  80 port 的 Web Service 囉!唯一的缺點是本機端卻無法使用 telnet 140.x.y.z 8080 連線到,要留意測試以及防火牆的部分囉!


2009年6月7日 星期日

Hadoop & MapReduce & HBase

Cloud Computing 是這兩、三年來的寵兒,概念如故,但呈現卻是嶄新的。今天到師大聽趨勢科技的介紹,深深覺得,很慶幸自己進的實驗室是處理大型資料,雖然只是短短的兩年不到,多多少少有稍微接觸到相關應用議題。


關於標題三者的認識,可以看看趨勢用心製作的投影片:



今天有幸參加趨勢的課程,儘管已有些認識,也有學到不少東西,但最大的感觸是回憶自己待了兩間實驗室的心得,第一間是大學專題,第二間則是研究所待的。


在大學時期,時常站在巨人的肩膀,專題就找找有沒 open source,然後架構環境並運行,最後則是修改成自己想要的,以達成目的,好處是可以凝聚精神在創意的實現上,壞處事,可能只是成了一位會耍耍小技巧的技師;碩士班是務實型,由於老板的生活及研發經驗,讓我有不少磨練的機會,因此許多東西都是重金從頭打造的!好處是學得多,壞處則是往往花費的時間更多。


我開始回顧,是不是該讓自己重回 open source 的模式呢?後來仔細想想,真的是要看應用,基於現在的務實環境,許多實作都是重效率的,透過 open source 可以增加開發速度,但也可能基於它的彈性而損失效率。目前實驗室的專長是資料處理,往往很多殺手級的應用幾乎都在一台電腦上,或是在受限的環境下被設計出來的,很特別的,也挺有成就感!


最後,我打算年輕時不要太早定型:「無論以後的環境如何,待在哪種研究環境,就試著去享受不一樣的研究方式吧!」