2010年1月31日 星期日

關於 "Windows 附身,OSX 改裝版" 一文 3

除了上述列舉出的七點原因,該文中還有另外提到幾點相關的事項,我也發表一點意見好了。

OSX 也有 "Cool Switch"
這一點說的是 Windows 在 Vista 之後強化了 Alt + Tab 的程式選單,可以直接有縮圖預覽想選的程式視窗,即使一個程式有多個視窗也很方便 [1]。該文中說,這種功能在 Mac OSX 中 "付之闕如",並建議安裝 Witch 這個外掛來解決 :



但....我很想說,他真的有搞清楚狀況嗎?  =  =  Windows 的 Alt + Tab 之所以好用,是因為加上了預覽圖 (如下圖),之前 XP 的就像 Witch 這樣,只列個名字,頂多是沒有依程式去分類視窗而已,裝了這個外掛並沒有改變多少。


可是比起來,Mac OSX 上對應的 Cmmand + Tab 在選單中只有列出程式的圖示,根本不能選擇視窗,的確看起來很弱,也難怪會被誤解。其實這只是使用哲學的不同而已,因為有 Expose 這個功能的幫助,何必要讓選單落落長呢 ? 以下用兩張圖做示範 [2] :

1. 為了選 Safari 的某視窗,按組合鍵 Command + Tab 選 Safari 圖示。

2. 按 Expose 第二個功能鍵 F10 -- 展開所選程式的所有視窗,這樣就能選你要的視窗 [3]。

看懂的話就可以知道從 OSX 10.3 Expose 推出之後,這功能一直都在那裡 (先不提 10.6 還加入了 Dock Expose,連用滑鼠都可以輕易操作),只是看你會不會用,另外這種方式可以避免視窗太多的困擾,Windows 裡 Alt + Tab 選單會列出所有的視窗,一多起來可是很惱人的。

OSX 也可以 "休眠"
該文 "自從 Vista 開始,Windows 的電源管理開始有非常了不起的長進....blablabla" 其實我不認為如此,因為 XP 下就已經可以休眠,只是寫的方式很怪 (什麼 "待命" 之類的....),Vista 在這方面並沒有新東西,只是寫得比較好懂而已;而 OSX 也不是像標題講得那樣,好像被別人遺忘很久或是很多人不知道,事實上絕大多數的 Mac user 都使用過休眠功能,甚至有人根本沒有在關機的。

休眠其實分為兩種,一種是睡眠 (sleep),將暫存檔存在 Ram 裡,喚醒時回複很快,但是時間一長就容易放到沒電 (如果你使用筆電,又帶來帶去使用電池的電);另一種是冬眠 (hibernate),將暫存檔存在硬碟,不會有放到沒電的狀況,但是進入冬眠跟喚醒時耗時較久。Mac 則及其大成,預設採用 Ram 跟硬碟都放的策略,喚醒快又不怕放到沒電,稱為 safe sleep,只是具有進入冬眠時要等比較久的缺點 (這是沒辦法的),但是連桌上型 Mac 都受惠,停電也沒在怕的。該文居然說 "只要到終端機模式下做些設定,一樣能達成與 Windows 同樣的休眠效果",有沒有搞錯,作者根本沒弄清楚休眠是怎麼回事,文章中的附圖也證明他狀況外,卻沒有解釋。

如果只是短程外出,不怕放到沒電,的確只要睡眠即可,不然進入冬眠前頗耗時間,要改的東西應該是這個,不過我不喜歡該文中推薦的 Deep Sleep widget,因為若你有用過 Dashboard,就會知道它不好關閉,開了之後就會全部 widget 一直佔用記憶體,雖然方便性不錯,但如果有別的解決方案,我多半都會選別的,像這裡我會選用 Smart Sleep 這個小程式  :



可以輕鬆調整要哪種休眠模式,甚至可以讓判斷現在的電池電量百分比,去依照你設定的門檻決定休眠方式,稱為 "smart sleep",是非常推薦的小軟體。

強制關機及快速登入
說真的我不知道為什麼要做這兩件事,快速登入我不清楚有什麼意義,他也沒解釋,我就懶得回答了,倒是強制關機可以討論一下。

Mac OSX 在進行關機程序前,會將未關閉的程式視窗跳回至桌面 (除了開機就啟動的一些重要程式,如 Finder),未存檔的文件會出現提醒視窗,這是一種安全措施,但是被這些東西煩的時候還真的希望能直接關機,OSX 的確預設沒有這種能力,可能真的要出動 shell script 吧,但以我的使用經驗,按下 Command + Option + Esc 強制關閉應用程式似乎也不會太慢......


後記..
其實我個人是很喜歡電腦王這個雜誌的,它是我少數定期收看的電腦雜誌,只是遇到 Mac 的專欄,常常很多觀念我無法苟同,即使該文作者的 scripting 功力比我強,但我不禁想問,你到底有沒有買 Mac 回來用 ? 寫 Mac 的專欄文章居然使用的全是 Windows 的使用哲學,完全沒有體會過 Mac OSX 的整體感,這根本是很荒謬的事,再加上整本雜誌充斥著山寨、osx86 這種名詞,讓我不得不懷疑該雜誌的專欄作者是否只是玩玩 osx86 就來寫這類文章,平常還是在 Windows 下工作 ? [4] 如果真是這樣,誤導讀者比內容空洞還要糟糕,難怪很多國內的 Mac user 不看國內雜誌的 Mac 專文。

國內的 Mac 環境還未成氣候,雜誌社對 Mac 不重視並不令人意外,但我並不覺得國內的電腦雜誌辦不好,即使有很多錯誤,但還是有可以學習的地方,畢竟電腦的領域這麼廣,資訊又日新月異,雜誌是將最新資訊彙集的良好媒體,希望這些雜誌業者能再加油。


附註
1. 沒想到這種沉淪了這麼久的功能,到了 Vista 一改良就可以被拿來說嘴....那 Vista 剛上市就一直用來打廣告的 Flip 3D 跑哪去啦 ? Vista 之所以失敗,除了太吃資源,還有一點就是太多無用的功能,以致於那些東西不久後幾乎乏人問津,Windows 7 並沒有不支援任何 Vista 的新功能,只是無用的東西自然沒什麼人想用,直接轉向 Windows 7 的新功能。 
2. 這兩張圖是來自不同的電腦截圖,只是都是為了選 Safari 而已,希望不會因為一點小缺陷而使讀者看不懂。
3. Expose 有三個功能鍵 F9、F10 及 F11,最被人忽略的就是 F10,Linux 一開始抄還沒抄到,因為若沒有實際體驗過這個功能的妙用,是根本不會知道有這個功能才讓 Expose 的功能趨於完整。另外較新款的 Mac 對 Expose 功能鍵有些調整,雖然 F9 ~ 11 依然能用,但配合 Fn 鍵,也能以別的鍵啟動 Expose。 
4. 其實 Mac user 當久了,是不是玩 osx86,光看該人發的文就很清楚了,假的真不了,只是不想說而已,就跟當兵時菜兵都有特徵一樣。

2010年1月28日 星期四

關於 "Windows 附身,OSX 改裝版" 一文 2

4. 沒有 "重新整理" 及 "上一頁" 按鈕
在第 1 點中,我曾經提到 Finder 中 Column View 這種瀏覽模式,這就已經讓你不需要 "上一頁" 的按鈕了,但是一般人在平時還是習慣用 Icon View,畢竟圖示大,看了比較舒服,資料夾內部也不會看起來亂亂的,所以有第二種方法。

對著 Finder 視窗,資料夾 Icon 的地方,按著 Command 加上滑鼠左鍵

如此一來,從上而下,想要去多上層都可以,Mac 並不是沒有 "上一頁" 這個功能鍵,而是不怎麼需要就是了。

20100614 更新:我後來還是寫了一個按鈕來用 XD 請看這篇文章

再來就是 "重新整理",我承認這的確是 Mac OSX 的弱項,Finder 常常會出現一些沒有同步更新的問題 [1],大部分的網路文獻都說這個問題已經被 Refresh Finder 這個小程式解決:


主要是解決在 Finder 裡看網路芳鄰的資料更新,但是我附註 1 提到的問題還是沒解決 (攤手),每次還是得重開 Finder 解決,幸好重開 Finder 不像 Windows 裡重開 Explorer 那麼恐怖 (哈)。

5. 很難完全只用鍵盤操作
這是很有趣的一點,只用鍵盤操作是指熱鍵吧,我也不必給網址,因為討論 Mac OSX 熱鍵的網站絕對比 Windows 熱鍵的多,而且 Mac OSX 的系統偏好設定內還有一區是專門給使用者設定熱鍵的,可見熱鍵在 OSX 中的重要性非同小可,如果要再強化熱鍵功能,可以安裝有名的 QuickSilver:


但是 Windows 內卻經常出現一些不利於使用熱鍵的詭異事情,比如說熱鍵的用法從何而來?常常是先看到圖形界面顯示的熱鍵標示,才知道某些功能選項可以用某組熱鍵,但是一定有人看過這類的畫面:


那個字母用一個括號括起來是怎樣?我看第一眼真的不懂那要怎麼用,也許對某些人來說那已經變成常識,但不要預設所有的人都有這方面的經驗,到底是哪個 OS 比較不適合只用鍵盤操作,這應該不用提了。

還有,幹嘛要用鍵盤操作?這根本與圖形界面的使用哲學抵觸,電腦要走向一般大眾就要讓鍵盤的重要性越來越不如以往,不然走回頭路用 DOS 不就好了?[2] 或者更猛的 BSD 也不錯,有沒有發現 Linux distro 卯足了勁在發展更人性化的 GUI?

6. 無法完全刪除檔案

這是 OSX 及 HFS+ 的特性,會預先將新存的檔案存到未存入檔案的磁區中,聽起來很饒舌,簡單的說就是存檔案時會盡量不要覆蓋掉已刪除的舊檔,以致於比較容易用檔案救援軟體救回來 [3]。不過這跟能不能完全刪除檔案根本是兩回事,因為刪除檔案的時候,本來就沒有刪除掉真正的檔案,只是告訴系統 "嘿~這個空間可以用了唷~" Windows 裡還不是一樣,只是 Windows 沒多那一層保護,新檔案存入比較容易覆蓋掉而已,該文中提供的 rm 移除法也改變不了什麼,要馬也是用 srm (secure rm) 指令才對 [4]。

但是並不是沒有辦法喔,這其實再簡單不過,在垃圾桶有垃圾時:


看到 "完全清空垃圾桶" 沒?刪除檔案後再隨機填入 0 以安全刪除,這功能好像 Windows 還沒有呢....

7. 無法從右鍵選單新增檔案

老實說我除了新增文字檔案之外,其他都沒用過,一直很疑惑為什麼 Windows 的右鍵選單要有那些又臭又長的新增檔案選單,幹嘛不直接開程式來用就好?後來一想,因為 Windows 的程式躲在程式集裡不好找嘛,就算是 Vista 跟 Windows 7,按下微軟標誌後出現的選單,要找程式還是不太方便 [5],嗯,不要跟 M$ 的某笨廣告一樣告訴我可以用搜尋的,除非那不是你自己的電腦。

在 Mac 裡,有 Dock 的助陣,開啟軟體很方便,其實不太需要用右鍵選單去新增檔案,若擔心 Dock 擺不下,10.5 加上了 Stack,10.6 給 Stack 加上捲軸及開啟資料夾的功能,這些都讓程式的啟動更方便,還嫌不好?想要分類?可以安裝 Overflow、RapidoStart 或 Dock Spaces 等整理 Dock 的軟體 [6]。如果還是要開啟新檔的右鍵選單也不是沒有,可以裝 NuFile:



軟體擷圖如上。如果只是有時想記記東西,單單只要新增文字檔案直接用 Automator 即可:


建立文件時會問你要存到哪,蠻方便的,設定好之後存成右鍵選單即可。

(待續)

附註
1. 例如把資料夾中的檔案砍掉很多時,可能使其原有的捲軸消失,但是 Finder 沒有及時更新,以致於原本擺在資料夾前端 (捲軸向上捲才看得到) 的檔案都看不到,跳出資料夾也沒有用,我不清楚 10.6 改進了沒,但沒聽到風聲....
2. 我一直在想沒事幹嘛一定要用熱鍵,除非是超級熟練,不然看著鍵盤在那裡找鍵,根本快不了多少。什麼?你說終端機指令?如果你是 Unix-like 使用者,我姑且可以相信你。
3. 冠 C 以後應該不敢買 Mac 了吧....XDXD
4. 這個 command 沒有內建,必須自己去下載,這裡有 wiki 的說明:
http://en.wikipedia.org/wiki/Srm_%28Unix%29
5. 因為 Windows 本身架構的關係,軟體執行檔去 Program Files 裡找非常麻煩,所以必須依賴桌面或程式集裡的捷徑,XP 會讓程式集變成好幾行排滿螢幕,Vista 號稱要改善這個現象,可是我怎麼看都只覺得他們只是把 XP 裡的程式集選單縮起來變成一行,再加上捲軸而已....
6. Overflow (收費軟體) http://stuntsoftware.com/overflow/
RapidoStart  http://www.versiontracker.com/dyn/moreinfo/macosx/32214
(這個新版改名為 Jump,變成收費軟體,10.4 舊版的連結若失效可以跟我拿)
Dock Spaces (免費,10.5 以上)  http://www.nscoding.co.uk/

2010年1月24日 星期日

關於 "Windows 附身,OSX 改裝版" 一文 1

"Windows 附身,OSX 改裝版"

前些日子 (喔..其實很久以前了,一直沒時間寫而已,除了工作之外有很多文章想寫) 在 PC ADV 電腦王第 65 期上看到那篇文章,覺得很有興趣,因為很少有專欄文章寫 AppleScript 的應用 [1],加上我自己也在學,所以就花了點時間把那篇文章看完。但.....我對於該文很多部分頗有微詞,這一系列的文章就是在說一些他誤解 Mac OSX 的地方。

首先一開始說 "如果你長期熟稔於 Windows 的操作,見識過 Windows 7 的便利,再回頭來看看只能算是小改款的 OS X 10.6,哪個才是比較先進的作業系統 ? 似乎已經 (或從來) 沒有標準答案。" Win 7 的確是微軟近年來的得意之作,但這不一定代表 Vista -> 7 之間算是大改款,而是因為 Vista 實在太糟糕了,Win 7 只能說是 Vista 正式版,拿來做這樣的比較實在有失公允,何況除了新增幾個好用的內建軟體 [2],跟 Vista 相近的地方也是很多,就如同 OSX 10.6 Snow Leopard 及 10.5 Leopard 的介面類似一般,但如果你是 Mac 界的開發者,或只是看了些技術文件,就會知道 OSX 10.5 -> 10.6 絕對不是小改款,只是現在 10.6 正在過度期,求的是作業系統內核的改朝換代 [3],而不是以增加新功能為重點,更何況 Vista 可能連 OSX 前一世代的 10.4 Tiger 都打不贏。

接下來是該文的重點,提到 OSX 的七大不適應 :

1. 沒有剪下檔案功能
2. 大多數視窗無法放大至全螢幕
3. 調整視窗大小不方便
4. 沒有 "重新整理" 及 "上一頁" 按鈕
5. 很難完全只用鍵盤操作
6. 無法完全刪除檔案
7. 無法從右鍵選單新增檔案

並附帶一句 "其餘項目繁多不及備載"....好像 OSX 真的很不堪,所謂 "Windows 常會用到,OSX 卻沒有" 的功能真的那麼重要 ? 其實並不是,而是很多人的觀念還停留在 Windows 的使用哲學,A 到達 B 為何一定要 A -> C -> B ? 我用 A -> D -> B 為何不行 ? 還有,A -> B 真的是必要的嗎 ? 搞不好這是根深蒂固的舊觀念而造成的錯誤。該文作者以 AppleScript 的撰寫來努力達成上面的 "不適應",但以下我提供新的思維給各位看。

1. 沒有剪下檔案功能
這是 Windows 使用者常常在使用的功能,用來搬運檔案很好用,但是 OSX 上不允許這種事情,一開始我也不習慣,就只使用 OSX 建議的拖拉放來移動檔案,其實用久了也覺得沒差,甚至覺得 OSX 有為這個動作量身打造,比如說移動一個檔案到一個資料夾圖示上後,可以將該檔案放入,滑鼠不放停留一陣子還會自動打開該資料夾,再往下一層目錄移動,而且這個停留時間還可以自己設定,這種事情就是 "OSX 常會用到,Windows 卻沒有" 的。此外,你也可以先將此檔案移至桌面,等到開啟你要移動的資料夾,再將其移入,桌面的重要性在 OSX 中是不同於 Windows 的,這個等第 2 點再說。不過這裡出現一個盲點,就是想把資料往上一層資料夾傳時,的確比較麻煩,這一點 OSX 怎麼會沒想到 ? 只是 Windows 沒有這個功能,很多人就以為做不到而已,甚至有兩個方法,而且你想上幾層都可以,第一個就是 Finder 裡檔案的一種檢視方式 Column View :


至於第二個方法就等第 4 點再說。說到此其實很多人不清楚 "剪下 + 貼上" 背後隱藏的危險,在 Windwos 及 Mac OSX 中,移動檔案時,如果目的地跟來源地是同一顆硬碟,作業系統僅僅是更改它的檔案位置路徑而已 [4]。但若不是,也就是別顆硬碟,就是真的要將檔案的資訊複製另一個地方,以 Windows 的作法是為了提高效率,會使用磁碟快取來幫忙加速,但是如果在移動檔案到快取、或是快取將檔案移至真正的目的地之間出了點問題,比如說突然硬碟有損毀或系統忙碌 (如果你開著網路,這很常見,只是大多不會造成什麼危害),就可能讓剪下貼上的步驟爛掉,傳到目的地的檔案可能會毀損,特別是轉移大檔案或多個零碎小檔案時,掛的機率就高很多,像我之前發生的慘劇 :


一堆 REN 檔根本看不出檔名,即使還能讀....來源地的檔案也已經在過程中被刪掉,也沒有再傳一次的機會,這還算是小事,哪天檔案在移動中整個不見你就知道了.....所以為什麼 OSX 在開機系統磁區的檔案移動預設是 mv (移動),但在不同磁碟間的移動預設是 cp (複製),這是為了保護檔案傳送的安全 [5],很多人不了解 OSX 下的苦心,反而花很多心力去追求虛幻的東西。

2. 大多數視窗無法放大至全螢幕
視窗全螢幕也是很多使用者的迷思,為什麼視窗必須要全螢幕 ? 現在的螢幕大多是寬螢幕,除了看電影或打電動,不然很少有全螢幕的需要吧,OSX 內部預設的是綠點會讓視窗的上下長度符合螢幕大小,左右則留出桌面的空間,因為全螢幕大多是個浪費,如同我第 1 點裡說的,桌面可以當作檔案傳遞的中繼站,或是上網看到有趣的圖片就直接拖移抓到桌面,之後再放到你要放的資料夾 :


我根本不用去煩惱視窗可不可以全螢幕,因為幹嘛為沒有意義的事情煩惱 ? 這就是 Mac OSX 的使用哲學 [6]。

3. 調整視窗大小不方便
這個他也沒解釋,我真的不懂他在寫什麼,該不會是不能在視窗上緣點兩下切換原本大小跟全螢幕吧 ? 反正都要用滑鼠點,點別的地方還不是都差不多 ? 那跟他說的第 5 點不是自相矛盾 ? 如果要用熱鍵也是有,這點也很有趣,第 5 點再說。

(待續)

附註
1. 台灣的電腦雜誌及中文電腦書只要是關於 Mac 的,幾乎沒有比較技術層面的文獻,大多都是介紹 Mac 的硬體,拍拍精美的照片,或是介紹一些很常見的軟體,那些並不是沒有用....而是對我來說沒有必要把已經知道的事情再看一次....何況常常還寫得不甚正確,這可能也跟台灣是微軟王國有關吧,大多數人對 Mac 也只是停留在 "美觀" (硬體美學設計好)、 "人性化" (根本不知道為何人性化,反正很多人都那樣說,但是自己還是不會去用)、"特效很多" (這一點也就被 Linux user 調侃.....因為很多 Linux distro 的桌面環境可以有更多更炫的特效) 或是 "美工人在用的" (這是 Mac 在過去年代的優異表現所造成的刻版印象,現在 Mac 早已沒有這方面的優勢),所以對於台灣這裡的 Mac 文章會是這樣的內容,我也不感到意外。不過說到中文書,最近總算是有 iWork 的中文教學書了,推薦一下 : (我不是作者群,純粹是介紹好書 =  =)


2. Win 7 內建的數學輸入面板及 PSR 螢幕錄製程式都是很難得的內建小軟體,再加上小畫家及 WorkPad 在界面上的統一,整體感覺好很多。
3. 以現在電腦科技的發展,是軟體跟不上硬體,這應該是眾多電腦業者都很清楚的事....
4. 修復磁碟就是在修這個東西,請看我之前的文章
5. 其實要做到同一磁碟內的移動是複製還是可以,只要用滑鼠拖移時按著 option 鍵即可;反過來說,不同磁碟間的檔案移動也可以是直接移動不複製,只要滑鼠拖移時按著 command 鍵即可,不過不建議。
6. 當然,這跟當初 Vista 的 SideBoard 讓你把寬螢幕當窄螢幕用的觀念完全不同 = =,這功能後來就漸漸被淡忘了,我現在真的很少看到有人在 Windows 上用那些小工具,iGoogle 上用的還比較多。

2010年1月20日 星期三

防火牆的兩三事

很多人說,防火牆很重要,寧可防毒軟體不灌也要灌防火牆,我心裡想,聽你在胡扯....................

就我的觀察,在電腦的使用者中,根本只有不到一成的人知道防火牆在幹麼,而這一成的人裡面又有一半以上是不會去管防火牆擋下什麼東西的。再來,大多數的防火牆根本是腦殘狀態 [1],不知道用什麼規則在擋,動不動就跳出視窗要你選擇 "允許" 與否。除非那玩意真的有毒,不然誰會選 "拒絕" ? 但是你會去啟動一個已知的毒物嗎 ? 我說過防火牆跳出來的訊息沒人會看,有一個原因是,那些訊息根本也很難看懂,一堆不知名訊息或來源 IP 天曉得有沒有問題,反正它什麼都可能擋,所以最後大多還是選 "允許",出事了防火牆也不會保護你,因為是你自己放行的。

最後給你保護的還是防毒軟體。

我個人是認為,防毒軟體還是得要安裝,不見得需要定時掃毒,但是必須要有開啟網頁及檔案的及時監視功能。如果防毒軟體和防火牆合一也就算了,單純的防火牆就不必讓它浪費硬碟空間,畢竟多一個軟體常駐在系統中消耗資源,而它的用途只是讓你多動動滑鼠去點 "允許" 而已,找自己這種碴實在很愚蠢。

我現在在用我表妹的電腦,她灌了老牌的免費防火牆 ZoneAlarm,坦白說我不覺得它有帶來任何保護。 = =


防火牆其實就是封包的控管跟監視,是有分流進跟流出的,目前很多作業系統都有內建防火牆軟體,只是大多非常陽春。以 Mac OSX 為例,內建防火牆只有控管流進的封包,對於流出的部分則付之闕如,不放心的人還是可以安裝免費的第三方自由軟體 WaterRoof [2] :


我個人覺得老是看著這些封包擔心有沒有問題真是挺累人的,又不是惡意軟體,至少有個執行檔的名字可以去查查 google.... 除非使用上的效能變弱很多,不然還是建議別傷這種腦筋 [3]。

附註
1. 我之所以說防火牆腦殘,是因為它常常擋在一些不太可能有問題的網頁,比如說著名入口網站,但是有問題的還不見得擋喔 !! 可是大多數防火牆有白名單的設定,所以你是可以讓它變得聰明點的,不然我就要說它無腦了。
2. 如果覺得 WaterRoof 太陽春,也可以試試同一個團隊做的另一個進階版防火牆 NoobProof  http://www.hanynet.com/noobproof/%20
3. Mac OSX 上的防毒軟體很少,就我知道的也只有 Symantec 跟 ClamXav,雖然不是說真的那麼安全,至少沒那麼危險 orz 以防火牆來說,老實說系統內建的就已經夠了,我是不喜歡為一些瑣事費心啦,有這麼多事該做....

2010年1月17日 星期日

UV-Visible 吸收光譜的 peak profile

再備份一篇以前 PO 在化學版上的教學圖片~



這是 UV-Visible 吸收光譜的教學圖,用到簡單的 Franck-Condon principle 近似法去解釋一般分子的 UV-Visible 吸收光譜的圖形強弱變化。回頭一看真的是很簡單的示意圖.... =  =+

Mac OSX 網路印表機設定

很久以前做的教學圖片,當初上傳到學校的空間,現在是做個備份。


看得出來是 10.4 之下的設定方法,但我相信這種東西就算到 10.6 也不會改變太多,選項跟原理應該還是差不多,如上,做個備份。

我不得不說印表機的設定真的是 Mac 新手很煩惱的一件事,不僅跟 Windows 的設定方法有一段差距,而且還可能面臨驅動程式不完整或根本不支援的窘境。目前已知多功能事務機大概是全掛....掃描跟影印可能都爛掉了,這真的完全要看該公司對 Mac OSX 友不友善,買印表機前要先做做功課阿 !

2010年1月10日 星期日

LabVIEW 的 rem 及 [ ] 函數

上個月中退伍了之後在台大當助理,為了實驗室的需要,這一陣子都在學習 LabVIEW 這個程式開發工具 :



這是 NI (National Instruments) 公司所開發出來的一種程式開發工具,使用的程式語言是一種超高階的圖形化語言,又稱 G 語言。寫程式時分成兩個部分,一個是給使用者的操作面板,又稱人機介面 (下圖上);另一個是內部的程式碼,又稱程式方塊圖 (下圖下) : [1]




看起來好像很簡單,因為不用寫 (背) 程式碼,而是用圖形化的元件用線連在一起。LabVIEW 的程式是以 "資料流" 的方式在執行,也就是同一平面上所有元件的資料一起流動,而不像傳統程式是一行一行地執行程式碼,不過思維邏輯還是很類似的。

這篇要談 LabVIEW 裡兩個超爛的數學函數 rem 及 [ ]。每個程式語言都會內建一些數學函數供程式運算,如果是 MatLab 或 SciLab 這類數學軟體會內建更多。(我自己想寫的另外一個程式還必須要有積分跟微分,那真的不知道怎麼辦了) 畢竟程式很需要這些東西,很多程式根本就跟數學無關,程式碼裡還是一堆這種東西。

LabVIEW 雖然是工程用的程式開發工具,但是數學方面的函數還是不夠多,圖形化的運算元件就那麼幾個,還好有提供 "Formula Node",所以可以自己去寫,但是好像也沒比圖形元件多多少....(Formula Node 是一個方框,決定好輸入輸出後可以直接寫方程式運算,還能設條件,如下圖)



這樣就算了 !!!! 重點是還有寫得很爛的 !!!! 這就是這篇文章的主題 -- rem 及 [ ] 函數。

先說 [ ] 函數,有上過高中數學的人都應該知道這是高斯函數,意指它會取數值的整數部分,比如說 :

1.1 -> 1
2.9 -> 2

可是在 LabVIEW 裡的解釋是 "最接近的整數"。這沒什麼,它要這樣設定就這樣設,了不起變成四捨五入,這也都好解決。問題是它的進位原則很差勁,甚至我一開始以為根本沒有規律 !! "四捨五入" 跟 "最接近的整數" 的盲點在哪呢 ? 沒錯,就是 x.5 這種值 (x 屬於整數)。前者要進位,後者咧 ? 在中間怎麼辦 ? 我就想它至少會統一一下嘛 ! 結果很靠杯,它是在 x 為奇數時進位,偶數時不進位,例如 :

0.5 -> 0
1.5 -> 2
2.5 -> 2
3.5 -> 4

非常荒謬而且可笑,哪有這種數學函數 ?

另外一個就是 rem 函數,這是一個求餘數的函數。比如說 rem(51,3)=0,因為整除;rem(61,5)=1 因為餘數為 1,可是 rem 函數本身存在缺陷。就我的測試,rem 計算的方法跟半殘 [ ] 函數有關。比如說 :

rem(48,3)=0
rem(49,3)=1
rem(50,3)= -1

居然餘數會出現負值 !!!! 被除數或除數有一個是負值也就算了,偏偏都不是。原因在哪呢? 我懷疑 rem 計算的方式是 :

rem(a,b) = a - b*[a/b]

[a/b] 就是將 a/b 的浮點數值取詭異的 [ ] 函數運算。懂了嗎 ? 只要 a/b 的第一位小數點大於等於 5,就會讓 rem 函數給出負值 !!!! (噢不,如果是只有一位小數,而且是 5,還要看整數部分是奇數還偶數咧) 夠腦殘了吧 !!

我想了很久,終於想到讓 rem 及 [ ] 函數正常工作的方法 :

rem : 以 X1 與 X2 相除的餘數為例,輸出為 Y
if X1 * X2 >=0
   Y = X1 - X2*[X1/X2]          if rem(X1,X2)=0
         X1 - X2*[X1/X2-0.5]    else
else
   Y = X1 - X2*[X1/X2]          if rem(X1,X2)=0
         X1 - X2*[X1/X2+0.5]   else

動手腳就在那個加減 0.5,讓 X1/X2 一定會取到整數,整除的情況則不去動它。如此一來 rem 函數就修正好了,把它做成單一包裝的 *.vi 檔來用,以後就會比較方便。

唔,這種事情還是少發生的好,不然程式寫到一半發現 LabVIEW 自己出包真的會很想砸電腦....這個故事也告訴我們,做事要謹慎.....

附註
1. 這兩張例圖是用搜尋隨便找的,並不是同一個程式。

Mac OSX 的系統維護與疑難排解 3

最後一篇來談談 Mac OSX 的一般疑難排解的方法。每次只要有人的 Mac OSX 或 Mac 週邊硬體有功能異常,常常會聽到的回覆不是修復權限就是清除 PRam,然後大多沒有用....原因在於這些步驟又不是萬靈丹,其實官網都有對這些步驟的內容作相當清楚的解釋,以下將官網的部分內容節錄出來 :

1. PRam (Parameter Ram) 裡儲存一些特定的系統及硬體裝置的參數,使 Mac OSX 可以快速存取,內容會因不同種類的 Mac 而有不同,內容包括 :

AppleTalk 的狀態
序列埠規格和傳輸埠定義
鬧鈴設定
應用程式字體
序列印表機位置
Autokey 速率
Autokey 延遲
揚聲器音量
注意 (嗶聲) 聲音
連按兩下時間
插入號閃爍時間 (插入點速率)
滑鼠縮放 (滑鼠速度)
啟動磁碟
選單閃爍計數
監視器深度
32 位元定址
虛擬記憶體
RAM 磁碟
磁碟快取
DVD 區域設定
 
清除 (重置) PRam 的指令 : 開機時按著 cmd + opt + p + r,然後給 Mac 叫個幾聲,Mac 會自動重開機,就重置好了。
 
2. SMC (System Management Controller) 是 Intel-based Mac 除了 EFI Boot ROM 韌體外,特有的一種韌體,用來執行一些低階的電源管理,內容包括 :
 
回應按下電源按鈕的動作
回應可攜式 Mac 開啟和閉合顯示器上蓋的動作
電池管理
散熱管理 (風扇)
SMS(瞬間防震感測裝置)
環境光度感測
鍵盤背光
狀態指示燈 (SIL) 管理
電池狀態指示燈
為某些 iMac 顯示器選取外部(非內部)視訊來源

SMC 的重置會跟是否取出電池有關,而且建議在其他疑難排解方法都無效才使用,步驟跟檢測方式比較複雜,真的要做請看官網連結 :
http://support.apple.com/kb/HT3964?viewlocale=zh_TW
 
 
應該很多人有遇過不能開機的慘狀吧,這可不是 Windows 的專利,Mac 照樣有,那種時候上述的方法全部都沒用,因為根本進不去系統,搞不好原因是硬碟壞了都有可能。Mac OSX 的處理的方法完全不同,官網有詳細的解決方法 :
http://www.apple.com/tw/support/mac101/help/2/
 
如果懶得看,這裡有一篇網友的文章寫得不錯 : [1]
http://ca96.blogspot.com/2008/04/mac.html
 
上面兩個連結有很多方法,但不見得常用,我講幾個最常遇到的情形吧!
 
1. 開機時在 "噹" 那聲及 Apple Logo 出現前是在檢查硬體,大多不會有問題 [2],除了最容易壞的硬碟。如果卡在這一步就要有心理準備了,出現的如果是問號資料夾代表找不到開機磁區,這又分兩種情形 :
 

    a. 有先看到一個地球,不久後才看到問號資料夾 : 這代表網路磁碟開機,只是開機啟動磁碟設定跑掉了,關機後重開時按著 option 鍵選本機磁碟的 Mac OSX 磁區來開機即可,然後去 "系統偏好設定" 的 "啟動磁碟" 把設定調回來。
 
 
    b. 直接看到問號資料夾 : 這就遺憾了,代表抓不到本機磁碟的開機磁區,應該就是硬碟壞了....不過不代表資料全毀,還是可以當成外接硬碟拿去給正常的 Mac 讀讀看,有可能可以救回資料。
 
2. 安全模式很好用 (開機長按 shift),因為不用光碟也不用記指令,安全模式下只會執行系統運作時基本的程序、驅動程式及 kernel extension,在系統異常時就可以拿來找問題 [3],不能開機時也可以當作最方便的應急方法,一定要記得這個好東西。
 
最後,推薦一個很好用的圖形化工具 -- Rember,用來檢測記憶體正不正常 :

 
Mac OSX 是一個對 Ram 非常挑的系統,顆粒不合或記憶體的量太少,就有可能整個系統當掉,也就是 kernel panic,俗稱的四國語言 (如下圖),這個軟體可以讓你檢測記憶體的有沒有出問題。
 

附註
1. 其實隨便搜尋一下都可以看到跟這網友幾乎一模一樣的文章出現在不同人的網誌或討論區內,我還真好奇原著是誰....XD 所以我就不再重複貼一次了。下面的連結就是一例,我記得不只這篇....只是一時找不到....orz
http://emilylatte.pixnet.net/blog/post/27283152
2. 如果連 "噹" 一聲都沒有.....請節哀,八成是主機板掛了....
3. 比如說,驗證磁碟出現問題時不能修復,必須要用光碟開機才行,安全開機時會掃描磁區並作一定程度的修復工作,常常可以修好 "驗證磁碟" 所找出的錯誤。

2010年1月3日 星期日

Mac OSX 的系統維護與疑難排解 2

接下來聊聊 Mac OSX 的自我維護功能,這個功能是來自 Unix 的特性,也就是 Daemon 的存在。Daemon 的中文意思是小惡魔 (?!),在 Unix-like 系統裡就是一些系統使用者,如果系統是一個工廠,一般使用者不見得每天都會來上班 (登入),但是 Daemon 就像是住在工廠的工友,每天也不做什麼特別的工作,就只在固定的時間,完成他所被指派的單一工作。在 Mac OSX 裡,關於系統維護的 Daemon 有三個 : daily、weekly 及 monthly,以下簡單地講一下他們的工作  (真的是講得很簡略,有興趣去網路上查查看就知道細節了) :

1. daily : 清除快取及系統垃圾,每天 03:15 發動
2. weekly : 重建 locate 及 whatis 資料庫,增加搜尋效率,每週六 03:15 發動 (10.3 之前是 04:30 發動)
3. monthly : 記錄使用者帳號的使用情形 (其實這我不是很懂 orz),每月一號的 05:30 發動

如此可以知道,為何 Mac 使用者不太需要使用第三方軟體去跑維護工作,原因就是這些動作都會自己來 [1]。可是有這麼順利嗎? 電腦是會休眠或關機的,如果每天凌晨時都是處關機狀態,那這些工作就完全不會進行了;另一方面如果是休眠狀態,Daemon 會延遲他們的工作時間,睡醒之後才跑這些維護的程序,這也是很多人鼓勵都用休眠不要關機的原因之一,不僅僅是回復到工作狀態的時間變短而已 [2]。

如果執行時間都必須關機怎麼辦? 其實手動去啟動即可,在終端機輸入 :

sudo periodic daily weekly monthly

輸入管理者密碼即可,後面可以自己決定要跑哪幾個 Daemon 的 maintenance scripts,如此簡單,根本不用安裝多餘的軟體。

除了自我維護的工作,很多人對於 Mac 的磁碟重組也是有許多疑惑,Mac OSX 到底需不需要磁碟重組? 其實是要的,只是不做也沒有很大的關係就是了。我稍微解釋一下,以 A、B、C 三個不同時間儲存的檔案片段來說,若是一般的檔案系統,資料存進去一定是隨便存,於是變成下面這樣 :

A  BA      CCABB   BBBBAAA   CBAA  .....

總之很亂就是了,Fat32 的磁區就是長得這副德性,但是 HFS+ 相當先進,在存檔時就會考慮 "單檔" 的連續性再存 :

AAAAAAAA       BBBBBBB  CCC

看出來了嗎? 單檔雖然是連續的,可是由於儲存時間不連續,故各檔案間是不連續的,所以使用久了也是一樣亂,只是存取單一檔案時不用到處找該檔案的片段而已,那為何說沒組也沒差呢? 原因大致有下面兩點 :

1. 沒有亂到不能接受的地步,在慢到受不了之前,硬碟可能已經壞了。
2. 重組磁碟是一個連續刪除讀寫磁區檔案的過程,其實對硬碟是一個耗損及傷害,如果重組完了之後對效能沒有一定程度的提升,根本不用做這種事情。

如果真的神經質非組不可,倒是可以提供一個軟體 iDefrag :
http://www.coriolis-systems.com/iDefrag.php


雖是商業軟體,但是風評還算不錯,只是我依然不推薦就是了,原因就像磁碟工具程式的 "修復磁碟" 一樣,一個系統在運作的磁碟時時刻刻都在讀寫,你居然對它做磁碟重組,這其實是很危險又荒謬的事情,所以我參考 MacUser 雜誌某一期的文章部分,提供兩個做磁碟重組的方法 :

1. 用另一顆有安裝 Mac OSX 及任何磁碟重組軟體的磁碟外接開機,以重組本機的磁碟。
2. 將本機磁碟的全部資料完全複製到外接的磁碟,之後把本機的磁碟完整格式化,最後再把所有的資料都從外接磁碟複製回來,藉由儲存時間的連續來間接重組。

很麻煩對吧,居然都要動用到外接磁碟,嫌麻煩就不要做了,Mac 本來的使用哲學就是不要讓你為這些電腦上的瑣事煩惱 [3]。

(待續)

附註
1. 相較之下,Windows 不自己去抓軟體來跑這種維護工作可不行,很有名的 CCleaner 就是在作這種事情。這類軟體很多,但其實大多都不可靠,因為亂刪登錄檔會導致系統出問題,所以老牌的 CCleaner 才會這麼受推崇,因為誤判率低。
2. 但是....不好意思,我不是每天都能用到我的 Mac,超過一天不用還是關機吧....orz
3. 我一直覺得 Windows 使用者對於本機 C 槽的磁碟重組是理所當然感到不可思議,還被教育成定期要做....我只能說 M$ 在台灣的滲透真是非常成功.....而且由於 Windows 不支援外接開機,所以我自己的 Windows 桌機也是那樣重組,不過我已經有心理準備了 XD,但是有趣的是我只有 MacBook 的硬碟有壞過........= =......嗯,桌機跟筆電這樣比不太公平....