星期三, 8月 20, 2008

不值錢的硬碟、不值錢的記憶體、難喬的滑鼠

我媽是幫人家作美容的,所以時常需要儲存大量的膚質檢測的照片、化妝過程的影片、資料、與一些課程的錄音。可想而之,這些都是動輒數百 MB、甚至數 GB 大傢伙。而她那台 120GB 硬碟的 ASUS A8Je(這台機器又大又重又沒有比較快,在我看來一無可取,還有一些哩哩叩叩的問題,不過那些又是另一個故事了!)根本放不下這麼多東西。

再來就是我妹的 Acer TravelMate3000,有點古早的機器,只有 512MB 的 RAM。配上一顆 4200rpm 的 60G 硬碟,跑起來跟烏龜有的拼。玩 ANNO 1503 都氣喘吁吁,所以決定幫她升級個 RAM。

總之呢,就殺去光華買了以下東西...

  • Maxtor Basic 1TB:本來打算隨便挑個最便宜的 500GB 的,但是找來找去都要三千台票上下。後來看到這個只要 $4990,繞來繞去還是決定買這個。個人覺得相當划算!一開始老闆報 $4990 給我們的時候還猶豫要不要買,後來回去的時候老闆剛好離開,店員因為單子上印的是 $5390 不敢賣。老闆回來以後才知道說本來今天要調整售價,但是代理商說明天才調整,但是單子已經印了,所以今天還是 $4990。我就開玩笑的說「哇!明天就漲價了,那趕快多買一顆!」結果老闆跟店員都急忙說「要用再買啦!不要急著買。」阻止我買。哈!
  • Transcend So-DIMM DDR2-667 2GB x 2:JetRam 的,一條 999。這兩條換給我媽,把我媽的一條舊 1G 加上新買 1G 給我妹。
  • Transcend So-DIMM DDR2-667 1GB:也是 JetRam 的,一條 550。配上我媽換下來的 1G,湊成 2G 給我妹。
  • Logitech V470:順便買給自己的藍牙鼠~ $1180 新台票。

硬碟拿回家當然是先 benchmark 一下。用 h2benchw 跑了 read test,速度很神奇的從頭到尾都在 34.5 ~ 35.5 MB/s 之間晃盪,看來這顆硬碟的速度超過 USB 的極限,沒辦法更快了... 跑完以後我就懶得跑 write test 了,因為 1TB/35MBps = 460min,我懶得再等他跑一遍 = =

RAM 的部份,A8Je 這個爛東西,BIOS 不支援 memory remapping(已經更新到最新版了),所以只能讀到 2944MB。是的,意思是說有 500 元的 RAM 沒有用到。但是至少雙通道沒問題,就將就用吧!該死的 A8Je。

剩下 1GB x 2 就塞給我妹電腦(什麼?你問我幹嘛不按槓下來?其實我也很想啊~可是我的是 DDR 不能插 QQ)。可是根據我妹的證詞指出,升級 RAM 以後機器變熱了!?奇怪,難道 1GB 模組比 256MB 模組熱嗎?

藍牙滑鼠很不錯,羅技新的雷射光學鼠,在什麼鬼地方用都感應的到。只是 BlueZ 3.36 的 Service Framework 怪怪的,bluez-gnome 也怪怪的,所以加起來就有時候連的上有時候連不上。如果您使用 bluez-gnome 或 kdebluetooth 卻沒有辦法連上藍牙鼠,又試過一般步驟(`hcitool cc <bdaddr>' 一類的)也不會動,可以試試以下的步驟...

先用以下的 python script 試試看...

import dbus
bus = dbus.SystemBus()

# service activation
bmgr = dbus.Interface(bus.get_object('org.bluez', '/org/bluez'), 'org.bluez.Manager')
bus_id = bmgr.ActivateService('input')
imgr = dbus.Interface(bus.get_object(bus_id, '/org/bluez/input'), 'org.bluez.input.Manager')

# devices
devices = imgr.ListDevices()
for path in devices:
    idev = dbus.Interface(bus.get_object(bus_id, path), 'org.bluez.input.Device')
    if idev.IsConnected():
        print 'Path: ' + path + ' [connected]'
    else:
        print 'Path: ' + path + ' [not connected]'
    print ' bdaddr: ' + idev.GetAddress()
    print ' Name: ' + idev.GetName() + ' [' + str(idev.GetVendorId()) + ':' + str(idev.GetProductId()) + ']'
    # try connect unconnected devices
    if not idev.IsConnected():
        print 'trying to connect...'
        idev.Connect()

如果還是不行,再跑這個 python script,別忘了把 "XX:XX:XX:XX:XX:XX" 換成您的 bdaddr:

import dbus
bus = dbus.SystemBus()

# service activation
bmgr = dbus.Interface(bus.get_object('org.bluez', '/org/bluez'), 'org.bluez.Manager')
bus_id = bmgr.ActivateService('input')
imgr = dbus.Interface(bus.get_object(bus_id, '/org/bluez/input'), 'org.bluez.input.Manager')

# create and connect to device
path = imgr.CreateDevice('XX:XX:XX:XX:XX:XX')
idev = dbus.Interface(bus.get_object(bus_id, path), 'org.bluez.input.Device')
idev.Connect()

如果還是不行...... 就沒轍啦!把 /etc/init.d/dbus 跟 /etc/init.d/bluetooth 都 restart 一次再試試看!