星期三, 8月 31, 2005

果然....

PCHome
http://news.pchome.com.tw/entertainment/udn/20050831/index-20050831031309032145.html
陶子越說越委屈,忍不住抱怨「放話」的范立達說:「他只跟我搭檔過一次,怎麼可以這樣說呢?」陶子一邊擦眼淚一邊說:「我在東風這麼久,要談政論,我就跟政論人搭檔;談新聞我就跟新聞人搭檔,為了節目我全部都上,不管什麼線的人,都會被說,為什麼沒有人問我怎麼想?」


所以是所有跟他搭當過的都會抱怨?
那就應該自己反省一下了。

從 世界盃 那時候就知道 他不知道反省和尊重。 而且連道歉也不會。
或許這就是原因吧:從來都只責怪別人,不反省自己。

颱風又來了----泰利

s3o-08-31-08-2005
雖然是強烈,但是大概不會放假吧。----- timing的問題。
結果: 今天提早下班,因為縣政府宣佈下午4:00起 停止上班上課..@_@...
這麼奇怪`....要是加上捷運/火車 停駛。。那不就叫大家待在街上?
台北更有趣:下午停止上課,但照常上班。。所以是叫所有中小學生到網咖集合?

星期二, 8月 30, 2005

Davicom : MAC /PHY Chip

DAVICOM 聯傑國際
徐志帆 副理
03-5798797 ext 8587
0931294403
cliff_hsu@davicom.com.tw

Ethernet Local-Bus Chip
DM9000A.
  • 10/100Mbs auto-MDIX
  • 100MHz clock rate
  • Local-Bus /uP interface (byte/word)
  • Build in 3.3V to 2.5V regulator
  • Etnernet PCI Bus Single Chip
DM9102D
  • 支援driver porting. performance tunning
另外,Davicom也做FAX/Modem chip,配合的FAX/Modem Module廠商是 正華(C-COM)
Robert 楊, Senior Sales, 0
2-82215836-103
0922-579-750

星期一, 8月 29, 2005

ICD2 與PIC 使用

繼上次沒設Device Type後...
  1. 使用ICD2的話,Compiler要勾選”Compile for MPLAB ICD”,這樣download到target後,program才會正確。
  2. piccompileforicd
  3. Compile完後,選”Debugger---Program”,ICD2會將code 燒到PIC裡。
  4. MPLAB不會自動在”main”設breakpoint,所以break point要自己先設好。
  5. 選”Debugger---Run",程式執行,停在breakpoint。
  6. 選”View---Watch",出現Watch視窗,上面右方”Add Symbole”處選變數。因為是以address為update方式,所以修改過code後,要將所有variable 刪除掉,重新加入。
Programming
  1. MPLAB中選的Device Type會轉為Define pass給compiler。所以任何Type的cpu都只要include pic.h就可以。
  2. Configutation bit也可以由program中指定(Alice早就這樣使用)。語法是__CONFIG(x)。其中的x參考相關cpu的header檔,如 pic1687x.h最後一個section就有定義osc, watchdog, powerup time..
  3. __CONFIG( )語法可以同時決定很多Option(ref .h file),但是各option間要用AND。如 __CONFIG( WDTDIS & HS & UNPORTECT)。
  4. Special Register的名稱定義在pic.h中,所以可以直接拿來用,不用另外宣告。例如:TRISB = 0x00; PORTB = 0xFF;
  5. 內含assembly code的語法是#asm, #endasm

    #asm
    rlf _var,f
    nop
    #endasm

PIC Chip
  1. Oscillator Types: range 200k~20M。一般來說,4M以下用XT,以上(含)用HS。picosctype
  2. I/O Port: 要在port direction reg (TRISX)設定pin是ouput/input(1是input)。在PORTX寫入資料則update到設為output的pin腳。
  3. I/O Port通常和其他周邊共用。所以除了program為I/O外,enable其他周邊時,I/O port會做特殊用途。 如PortA的0-3當AI用。但是同時也受到TRISA設定的影響,所以當作AI用時,除了要將AD enable外,對應的TRISA bit也要設為1 (input, Hi-Z)。
  4. PORTA 作IO Port用時,Pin的設置除了TRISA外,還要設定ADCON1。將ADCON1的PCFG0-PCFG3 設成正確的值。否則PortA的IO動作會不正確。
AD Convertion
  1. 設定ADCON1,將AD pin腳設定為Analog input。
  2. 設定ADCON0,選擇現在要sample的Analog input腳。 clock rate。 開啟AD module。
  3. 等一段時間,讓pin腳電位達到sample 的電壓。reference manual 寫20uS。
  4. 設定ADCON0的GO/DONE bit。開始作convertion。
  5. 等GO/DONE clear,代表convertion完成。
  6. 讀取ADRESH: ADRESL。
SPI
使用SPI Mode時,各Pin腳的I/O狀態要設定正確。I/O的狀態依照SPI 是Master或是Slave Mode而不同。
Master Mode:
TRISC
SCK(RC3):output
SDI(RC4) : input
SDO(RC5):output
SSPCON
Master Mode
Clock Polarity (CLK)
Data input Sample Phase
Data output Clock Edge
Clock Edge
Enable Serial Port
SSPEN = 1.
所以設定SSPCON時,要先將SSPEN=0,設完後再設1

SIM Modem : SIM100T Evkit 測試

操作說明有誤,應該是baudrate 9600,不是19200。
沒有插入SIM card,AT Command也會回覆

上電,回應:RDY。
輸入PIN No : AT+CPIN=XXXX
回應 +STC: 0

檢查是否已經註冊基地站:
AT+CREG?
回應: +CREG: 0,1

撥號:
ATDXXXXXXXXXX;

星期日, 8月 28, 2005

gtalk的應用:撥放音樂

http://www.twittv.com/googletalk.html
用gtalk波放音樂給contact聽

真是悶哪!

今天應離職公司的要求,回去將以前的程式再作一次交接,其實我經交接過N次了,離職到現在也經過半年了。不過自己寫的code自己要負責,所以不管幾次我還都還是回去作。

但是悶的是公司主管因為怕我知道什麼機密,已經不准我到工程部去了,只讓我待在會議室作交接。

所以覺得有點悶,有點被當成小偷的感覺。可能公司有公司的規定吧。
(畢竟要當上主管,光憑技術能力還是不夠的呀。以後還是別去了。如果需要面對面的溝通,還是約在麥當勞吧)

其實我當場就可以掉頭就走,但是 想想還是算了,不做自己討厭的人做的事,是我做事的準則,否則自己不就要討厭自己了?


從這裡想到一些別的:
我一直認為幾句話就可以讓人了解的東西,就算是認真的藏起來也沒辦法讓自己保持領先,
也就是說,靠著遮掩的技巧維持的優勢並不是真正的優勢。
倒不如開放自己的心胸,讓別人追著自己的腳步,同時能督促自己保持努力維持領先的位置。
也就是說,真正的know how應該是,即使有人解釋,都不一定有辦法了解的東西。

.....當然,這只是我個人非常偏頗的想法而已。而且我知道,真理並不是這樣。

星期五, 8月 26, 2005

AT Command

Modem的回答都有0x0A, 0x0D 結尾。
AT回答OK幾乎是立即的。
ATDT7226 開始撥號,回應:
NO DIALTONE - 沒接RJ11,10sec後回應。
NO CARRIER - 沒接通,20sec後回應。

星期四, 8月 25, 2005

PMP : Personal Movie Player 的疑問看 看吧

PMP這個產品的使用模式上有問題。
他應該永遠不可拿達成像MP3那樣的銷售成績。

PMP需要全神灌注的使用,也就是說當使用PMP時,不可同時作其他的事。而且看完一部完整的影片需要一段很長,不被中斷的時間。

這兩點和MP3完全不同,幾乎任何時間,任何地點都可以使用mp3 player。當然,可以一邊作其他的事一邊使用mp3 player,完全沒有影響。

人一天之中有多少如此空閒的連續時間,可以耗在pmp上呢?而如果真有這段時間,又為何要屈就這小小的螢幕?

許多marketing的人員只從技術上想:聲音的下一步就是影像,所以PMP理當取代mp3 player的地位。終不知兩者根本是不同的市場定位。


看吧!又有一篇
http://www.thg.com.tw/STINforNews/STContent.asp?ns=3EB0165B2

中毒了 svc0host

最近覺得電腦有點奇怪,用task manager看,有兩個奇怪的process: svc0host,win0host。
可是我又google不到這兩個process的資訊,所以不敢確定是不是公司內的program,只有擺著。
昨天公司網路中斷,因為病毒的關係。新天MIS就announce一個清除病毒的程式,說明是要清除svc0host.exe。下面是清除的log:

svc0host.exe[virus found]
-->delete process("C:\WINNT\system32\svc0host.exe","","") success
-->delete file("C:\WINNT\system32\svc0host.exe","","") success
-->delete registry data("HKEY_LOCAL_MACHINE","Software\Microsoft\Windows\CurrentVersion\Run","svc0host.exe") success
-->delete registry data("n/a","Software\Microsoft\Windows\CurrentVersion\Run","svc0host.exe") success

還是很慢.....
後來發現還有一個:win0host.exe
刪掉也沒事。倒是速度快了一點。

星期三, 8月 24, 2005

最近的Google新服務:google talk

很久不見,回家當老公研究助理的Alice來信了,問Gmail有沒有Calendar功能。

我在3個月前也是拼命找這個功能,看看有沒有什麼extension或是方法可以讓Gmail有這個功能,答案是......
沒有
只好使用Yahoo的mail,Yahoo的Email和Calendar的整合算是很好的。
但是意外的找到RSSCalendar,不錯的web base calendar,還提供RSS Feed。
所以Google有了Calendar嗎?
當然不是,有很多很多的預測說Google下一個新功能就是支援iCal的Calendar,也就是說Google會提供一個iCal Server,並提供Web base的iCal Client。但也不是現在。

那Google最近的新功能是?
Google Talk
就是和MSN(或者說是Skype比較接近)的IM。一樣使用Gmail account login。和以前的Gmail Notifier整合在一起。
其實這個功能感覺起來比較像是學MS的,讓加入聯絡人時會送出invite通知。如果他沒有gmail account,會連gmail inviate一起送。
試試看吧? 因為剛推出,完全沒有可以測試的人。
我的gmail account是.....


剛剛跟謙哥試連,聲音是蠻清楚的。連他身旁的meme們的聲音都很清楚。可是我第二次要Signin時已經連不上Server了....

原來,retry多次一點就可以了,跟以前的Gmail Notifier的症頭一樣。

我已經將一干人等都加入gtalk list了,如有遺漏,或需要account的,可以email到我的gmail.

星期二, 8月 23, 2005

可以用Word作post了

可以用Wordpost了。
blogger download toolsinstall後就OK了。

來試試有什麼功能。
字型,顏色?







  • 自動tag

  • 這是第二

  • 二層?

  • 如何

  • 恢復

圖形是沒有的,可惜。

星期一, 8月 22, 2005

最近買的書

這一本是新訂的Linux Jounal,很高興這裡的郵局看得懂英文的地址(我還是到郵局網站去翻譯的)。以前是向台灣得書局帶定的,但是到今年7月起他們不辦這項業務了,舍下的旗數換了錢過來。 所以只好到LinuxJournal網站上去刷卡。









這個是新生訓練送的。(至於原因就不便說明了...)














最後這幾本是上禮拜買的,麥金塔那本翻譯的不太好,VOIP這本比較進實作,HTML/Javascript 比較基本。

Mac那一本有一篇蠻有趣(其實很多很有趣)。

Mac Team的管理階層要Software Eng每天填寫寫的Code行數,結果有個工程師因為發現用新的Algorithm可以省掉約2000行的Code。所以當天的報表資料就寫 -2000

還有一個笑料就是他們面試一個Soft Eng時問他會不會寫程式,他說他過去大蓋寫了大約350,000行的Code。面試官後來把這件事告訴其他的Soft Eng,有一位回答說:”是呀,只不過後來他終於發現了LOOP的用法。”

捏他 : 鋼之鍊金術師 --- 完結


ED被殺,AL被吃到一半覺醒,使用鍊金術,回到門中將ED鍊成(完整的身體)。

ED醒後 犧牲自己,鍊成AL。又回到倫敦,跟他老爸一起。

瑪斯坦古快被殺死時,總統養子將他的遺骨那給他。 所以大逆轉。

鍊成的AL從當初鍊成母親失敗後的記憶全部喪失,又向 師父學習,立誓要見到ED。

ED在1921年的慕尼黑,研究科學,希望能藉科學力量回到門後。

完結。


==>可能AL最後終於了解,其實兩人要見面很簡單,就是AL自己跑到門後就可以到倫敦跟ED見面。

使用Linux&tm; 要收錢了

http://www.linuxmark.org/
是一個有Linus Torvalds授權,為保護Linux商標而成立的組織。
為保護Linux商標不被誤用,該協會向使用Linux為產品名的廠商收取費用。
最近最有名的是]http://news.softpedia.com/news/Just-Rumors-Or-Linux-Has-Indeed-Changed-The-Rules-Of-The-Game-6629.shtml
澳洲有90家廠商收到律師要求繳交5000美元的Linux商標使用費。

聽起來好像有點....
其實 只要不用Linux為名稱,是不用付錢的,還有像馬克杯,T-shirt,網站,文章 使用Linux為名稱也不用付錢。
所以應該只有Linux的distribution要付錢吧?
像Red Hat Linux,SUSE Linux,....

問題是 像Debian這樣的社群,也要付錢嗎?
或是Debian就是Debian,並不是Debian Linux,所以不用付錢?

8051 UART Baudrate Setting

一般使用 8 data, 1 stop, No Parity bit.
所以UART工作模式是1

使用Timer 1,工作模式2(Auto Reload).

Baudrate的計算方式是
Baud = 2exp(SMOD)/32 x Fosc/(12(256-TH1))
  1. 一般SMOD都會設0
  2. Fosc是Crystal Freq
  3. TH1是Timer1的TH 暫存器
使用12MHz的Crystal,SMOD=0,Baudrate是1200
256-TH1 = 26.04,所以TH1 選 256-26 = 230.

所以使用12MHz的Crystal,最高Baudrate是31250.


為配合目前Modem最低baudrate 9600,使用12MHz時無法整除,而且誤差太高,所以Crystal要用11.0592 MHz.
TMOD=0x20; // T1 Mode2
TH1=256-3; // baudrate 9600 (Fosc=11.0592MHz)
TL1=256-3;
TR1=1; // Enable T1
SCON=0x50; // Serial port, Mode1, REN=1
RS232 DSUB-9 pin def和Max232線路
hyperterminal 出現亂碼?
先查查crystal和baudrate吧,baudrate誤差是不是太大?
或許這顆的頻率在高的baudrate可以整除喔。

再來,試試在資料間暫停一下,讓接收端有足夠的空際synch到RS232的start bit (L)。
還有,電源剛啟動,不要急著送,先等一段時間讓電源穩定了再送。
接著......

星期日, 8月 21, 2005

TSPY_LINEAGE Virus

http://spaces.msn.com/members/chunping623/Blog/cns!1pdCkLQRIuiyFR2syP5VCFtw!552.entry#comment
解讀的方法

星期五, 8月 19, 2005

IP Phone Design 諮詢:幸賀

幸賀股份有限公司:有關VOIP產品設計生產的諮詢服務
鄭宏銘 副理
(02) 26984660 ext: 307
0918959358
sainzjeng@seraphim.com.tw

SWAT : 管理Samba的web base tool

SWAT是web base的samba管理工具,他不需要apache就可以執行。
#apt-get install swat
就可以安裝。

Debian 系統還要comment掉/etc/inetd.conf的最後,讓inetd能啟動swat.

另外檢查一下/etc/services理有沒有swat 901/tcp 這一行,這個決定inetd要listen哪一個port。

修改過inetd.conf後要重啟動inetd.

Debian的所有service都在/etc/init.d中,所以重啟動的方法:
#/etc/init.d/inetd restart
之後,在browser輸入http://localhost:901 就會帶出SWAT畫面了。

Apache in Debian - 或許應該用Apache2

用Apt-get install apache 安裝
但是程式不叫httpd,而是叫apache。
configuration folder在/etc/apache
#/etc/init.d/apache start
#/etc/init.d/apache stop
config檔還是叫httpd.conf,在/etc/apache。

httpd.conf 內容:

Site root :
DocumentRoot /var/www
網站的根目錄在 /var/www

CGI 目錄:
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
網站以/cgi-bin為path,會進入/usr/lib/cgi-bin/中,apache會認為這個folder理的page都是program.


上面install的是apache 1.0,目前應該要用apache 2.0 (Debian的default 安裝是2.0),手動安裝要用
#apt-get install apache2
設定檔在/etc/apache2 目錄中,設定檔和1.0已經有不同。folder中的README有說明

原來的http.conf已經不用了(其實是included by apache2.conf),apache2.conf已經變成主要的configuration檔。

原來httpd.conf的內容依照功能分成許多部分,由apache2.conf include進來。
ports.conf :
Listen 10.3.5.253:80
決定listen的address和port

sites-enabled/[^.#]*
應該是 支援virtual host衍生的目錄,決定site Document Root


奇怪,ssi還是起不來,已經在apache2.conf中加了
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
還有在 site-enabled/000-default中加了
Options +includes
可是還是不會動


找到原因了,是include module沒有load的關係。
在/etc/apache2/的mods-enables有一些link,都是link到mods-available。
在apache2.conf中有
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf

其中並沒有include.load的link,所以要建一個link
#ln /etc/apache2/mods-available/include.load /etc/apache2/mods-enabled/include.load
之後再reload apache2
#/etc/init.d/apache2 reload
其實apache2.conf已經將shtml的option加入了,所以不用修改。(不用加AddType ***** )


測試的網頁內容是:

<html>
<head> My first SSI page </head>
<body>
Welcome! Today is <!--#echo var="date_local"-->
</body>
</html>

Tone Test 金頓科技句

http://www.king-design.com.tw
Telephone Tone Test
2-2662-5100 ext 112
0935242433 王國超 經理
kcwang@king-design.com.tw
據說目前台灣只有這一家有電話(局端,末端)的測試儀器。

儀器說明

8303 (1045A)
測試每一個按鍵發出的Tone頻率或pulse準不準確,送出的信號強度夠不夠。
送出響鈴信號(交流)出來,測試看看話機會不會正確響鈴。
送出電源(e.g 48V),看看話機能不能動作。
8705A
接兩隻電話,模擬交換機,一隻打給另一隻,響鈴,接聽。可以模擬線損。
1085A
綜合8303和8705的功能,數位顯示。
通常是給RD和QC用的。因為操作比較複雜。

所以整個測試流程是:

用1045A
  1. 依序按下所有按鍵,看1045A是否每一個按鍵的燈是否正確亮起。
  2. 按下1045A的Bell建,看看鈴聲有沒有響。
  3. 調整模擬線長和Bell頻率,Level,DC 電壓。再側一次。
Bell要測最高和最低屏率。

用8705A
  1. A拿起聽筒,有無撥號音。撥B的號碼。B有無響鈴?A有無響鈴back ?
  2. B拿起接聽,雙方測試通話。

電聲測試 陽光測試

陽 光 電 子 儀 器 廠
02 22223759
禮拜二來介紹

好像是測phone的頻譜

Chroma : LCD Color Test

測試產品LCD Panel的色彩輸是否符合標準
joni.wu@chroma.com.tw
吳啟康 Joni.Wu
tel : 03-327-9999#3213
fax: 03-327-2886
http://www.chroma.com.tw/chinese/product/detail.asp?gid=31&id=114

星期四, 8月 18, 2005

EasyARM, LPC2210的chip select和Remap

LPC2210有4個external memory chip select (CS0~CS3),但是這四個CS pin的address range是固定的:
CS0 : 0x80000000-0x80FFFFFF
CS1 : 0x81000000-0x81FFFFFF
CS2 : 0x82000000-0x82FFFFFF
CS3 : 0x83000000-0x83FFFFFF
LPC2210的remap只有remap boot region的0x00000000~ 0x0000003C這部分的區域。
可以將這0x40長度的boot 區塊,和下面4個區域的前0x40的區域mapping在一起。
內部的Flash
內部的RAM
外部CS0
由啟動時P0.14決定

在EasyARM上使用uCos

附 的project code都是要重新燒錄flash,或是要利用附屬的arm jtag program內建的initital command 來program periperial register才能用(這一段沒有release code),所以不能直接用在wiggler上。
附的startup code只有remap到internal flash和CS0兩種設定,所以在run修改過的memory relocate code,中斷部分無法動作(無法取得正確的中斷向量表)。
所以應該要修改,mapping到internal ram。並且修改relocate code,將中斷向量表也放在內部RAM。
http://turdinc.kicks-ass.net/Msntv/ps2/Xguide2.html
http://xboxmodders.50webs.com/installhdd.htm

星期三, 8月 17, 2005

uClinux uc-libc build error : crypt

其實這個以前Chris就解決過了,但是...還是google了一次:
根據這一篇 http://mailman.uclinux.org/pipermail/uclinux-dev/2005-February/030843.html
說明,是因為uc-libc用crypt_old而不是crypt的關係,所以要修改發生error的makefile,把link object的crypt改為crypt_old
1. Edit lib/Makefile and force it to traverse libcrypt_old, at or about
line 31, add to dir_y so that it becomes:

ifeq ($(LIBCDIR),libc)
dir_y += libm libcrypt_old
endif

2. Enable crypt_old in the user config (should be near "login" in
core apps). You may need to have "login" enable to be able to
enable this, I don't recall right now.

3. Check in vendors/config/common/config.arch that libcrypt_old is
included in linker flags when CONFIG_LIB_LIBCRYPT_OLD is enabled.

禾伸堂:GSM, GPRS Module

消費元件部,提供sim.com的GSM/GPRS/Edge Module. GPS Module.
Evaluation Board : AVL(汽車監控系統)。Navigator (CE base)

另有RF (2.4G consumer), Zigbee(chipcom)產品

Sales
李耿漢 Hank Lee
hanklee@holystone.com.tw
0915865957
02-26596722 ext:216
FAE
連俊凱 Jun Lee
jun@holystone.com.tw
0913008583
02-26596722 ext:308


Nemerix ZX4120 GPS Module 25
SIMCOM sim100s TripleBand GPRS Module 40
SIMCOM sim200 QuardBand GPRS Module 45
SIMCOM sim modem (Ev Kit) 135 含GPRS 3頻
Navigator G-box 220 含GPS
AVL 03 GPS+GPRS+PIC (車機) 約200 含GPS和GPRS Module

星期二, 8月 16, 2005

Freescale PM

鄭孟武 leo.cheng@freescale.com
0935770591
02-23266022
02-27092000 總機


聯絡結果,他不作GSM/GPRS的部分,他說找OEM Sales:
Tony.Chang(江?) ext:6063.
..........打了三天的電話都沒人接。

只好從motorola tw網站找TW的distributor
Distributor Telephone Email
Arrow Electronics Taiwan Ltd. +886.2.2698.2888 joe.chen@arrowasia.com
Avnet Asia Pte Ltd., Taiwan Branch (Singapore) +886.2.2655.8688 Josephine.Huang@Avnet.com
Future Electronics +886.2.8861.5288 amold.chen@future.ca
Richardson Electronics +886.2.2698.3288 crony@rell.com
Rochester Electronics
sales@rocelec.com
Solomon Technology Corp +886.2.8791.8989 stanley@solomon.com.tw
World Peace Industrial Co., Ltd. +886.2.2788.5200 bill.lin@wpi.com.tw


第一個是Arrow 02-26982888,要我找
Sunny Ext: 30317
據說負責這個公司的sales.
... 他說會回電。

星期一, 8月 15, 2005

Soft Raid in Debian 3.1

Linux的software Raid是將多個partition合併為一個partition的動作。

三個4G SCSI HD.
install base system in /dev/sda1
用/dev/sdb1, /dev/sdc1作raid1(mirror) hd.

用fdisk在sdb, sdc create primary partition, type : fd (linux raid auto detect).

#apt-get install raidtools2. 安裝OK,但是沒有mkraid,raidstart,raidstop command!!
到aptitude去看,說明raidtools已經不maintain了,由mdadm代替。
#apt-get install mdadm發現已經安裝了。

create 一個raid1 hd : /dev/md0
#mdadm -C /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
也可以用
#mdadm -C /dev/md0 -l2 -n2 /dev/sd{b,c}1

看看
#cat /proc/mdstat
Personalities : [raid1]
read_ahead 1024 sectors
md0 : active raid1 scsi/host0/bus0/target2/lun0/part1[1] scsi/host0/bus0/target1/lun0/part1[0]

sdb1, sdc1已經正確的label和synch成raid1 hd.
用mdadm scan一下所有hd
#mdadm --details -s
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=<<略>>
devices=/dev/sdb1,/dev/sdc1

為了讓以後能夠start/stop這個raid partition,將剛剛scan的內容copy一些到mdadm的設定檔:
/etc/mdadm/mdadm.conf
DEVICE /dev/sd[bc]1
ARRAY /dev/md0 devices=/dev/sdb1,/dev/sdc1
啟動md0 (剛剛create好的hd)
#mdadm -A /dev/md0
可以看到md module已經有driver 使用了:
#lsmod ((看md))

/dev/md0只能當一個partition用,不是當一個硬碟用,所以不能用fdisk在/dev/md0 create partition。直接用mke2fs 來format md0
#mke2fs /dev/md0
OK,接著就可以mount了。
#mkdir /rdata
#mount /dev/md0 /rdata

測試

設定sdb1 fault
#mdadm --manage --set-faulty /dev/md0 /dev/sdb1
可以用mdadm --detail /dev/md0看看

將sdb1移出
#mdadm /dev/md0 -r /dev/sdb1

將/dev/sdb1亂搞一通
例如:
fdisk /dev/sdb1 重新partition。再用mke2fs create ext2 file system,mount進來後再放一些檔案。
將sdb加回 (維持sdb1亂搞後的狀態)
#mdadm /dev/md0 -a /dev/sd1
這時候,如果用mdadm --detail /dev/md0 看,可能可以看到rebuild processing....
一下子後就OK。看到/dev/md0回到一般狀態。

cold replacement


看看關機換硬碟的動作..
關機,將sdc拔出來,換一個hd,開機。
#mdadm -A /dev/md0
-A option是要assembly raid hd.並且active他。
因為mdo的sdc1是新的,所以出現/dev/sdc1 superblock error.
要用
#mdadm -A /dev/md0 /dev/sdb1 --run
--run是強制執行的意思,如果不加上--run 這個option,會有error說hd數量不足。
這樣active mn0後,再用hotadd功能加入全新的sdc1,讓他作re-build
#mdadm /dev/md0 -a /dev/sdc1
就會看到rebuild message....
ok
這是在http://www.linuxdevcenter.com/pub/a/linux/2002/12/05/RAID.html?page=2
看到的

IPMI : Intelligent Platform Management Interface

大部分是從eetaiwan co的..
IPMI提供一個跨平台的標準界面來監控系統內的一些狀況,如溫度、電壓、風扇等,並且可以藉由事件發送的形式來讓系統管理人員得知目前系統的狀況。

IPMI 讓管理者能透過網路或Serial的形式來監控系統上各種元件,如CPU的運作、風扇轉速、系統溫度及電壓等。管理者可以 將要監控的部分,設定其感應的臨界值,在IPMI控制器感應到不正常狀況時,透過email、SNMP trap通知MIS人員。另外,IPMI增加了遠端管理及系統回復的功能,讓管理者可以在遠端得知系統處於 何種狀態,如關機、開機中、OS當機等,並且下達開機、關機和重新開機等命令。

在IPMI的子系統中,基板管理控制器 (Baseboard Management Controller,BMC)是關鍵的核心。大多數商業BMC採用在X86晶片組上通用的LPC(Low Pin Count)匯流排作為資料傳輸介面。對於沒有提供LPC的系統,亦可用平行地址/數據匯流排和系統管理匯流排(SMBus)來代替。

BMC內建獨立的 Watchdog Timer,可用來檢測BIOS、OS、AP 或因軟體引起的系統故障。當 Watchdog Timer 發生超時,BMC可以自動重啟系統,執行供電或將發生的情況透過網路傳達給遠端。

BMC 通常整合了許多A/D轉換器、監測風扇速度的計數器、驅動風扇的PWM或D/A輸出、以及用於與外部感應器和擴展元件介面的通用 I/O、串列埠和I2C匯流排。BMC及其外部介面元件僅須待機 (Standby) 電壓便能運作,因此不論主系統的電源狀態如何,BMC皆能持續提供管理功能。這是IPMI相對於其他O/S-resident系統的一個獨特優勢。

星期五, 8月 12, 2005

又一個open source的programming IDE : CodeBlocks

http://www.codeblocks.org/
支援的compiler有:
... 由此知道VC有free的version..大概是因為要用.NET的人實在太少了吧...

Modem : AT Command

電腦與MODEM之間的溝通:通訊設備生產商Hayes制定了一套指令,專門用于電腦控制MODEM 的各項操作,也就是我們常說的"AT指令"。除去"A/"外的每個指令都是以"AT"("ATtention"的縮寫)開頭來表示,提醒MODEM 注意。
藉由Modem的RS232介面和Modem溝通。所有給予Modem的命令都用AT開頭。
Modem都具有Baudrate auto detect,所以與之溝通的RS232端可以設定任何baudrate,而不需要調整Modem的設定。
藉由AT開頭的命令字串,可利用Modem作一些動作:
撥號:ATDT number
接聽: ATA
掛斷: ATH

兩台Modem撥通後會自動進行協定協商(baudrate, compress format...etc),協商完成後,會由RS232送出”CONNECT”字串(給電腦),之後進入DATA模式。
DATA模式的Modem會將RS232端收到的資料一自不漏的送到電話另一端。

實作方式:
PC x 2, Modem x 2, 分機 x 2
  1. PC接到Modem接上電話。
  2. PC開啟hyperterminal,設定baudrate 19200, 8 N 1, no flow control.(兩端PC設定要相同)
  3. hyperterminal輸入AT(ENTER),Modem回應"OK".
  4. 撥號:輸入ATDT後面接對方分機號碼後ENTER
  5. 另一台PC的hypertermianl上應該會顯示RING,代表鈴響
  6. 另一台PC的hyperterminal上輸入ATA(enter)接聽電話,雙方Modem傳出嘯叫聲,進入協議協商。
  7. 協商完成後聲音消失,雙方PC hyperterminal出現"CONNECT"字串,代表雙方已連通。
  8. 任一PC的hyperterminal輸入資料,可以在另一端PC的hyperterminal上顯示,代表雙方已經進入DATA連線(就好像用RS232直接連線依樣)
  9. 輸入+++後等待一下(不用家enter),Modem回覆CONNECT OK,離開DATA Modem,好讓Modem接受AT Command
  10. 輸入ATH(enter)掛斷電話。
hyperterminal baudrate設定時要注意,目前的Modem多不支援9600以下的baudrate了。

星期四, 8月 11, 2005

往日的技術優勢反而..

這是從2300新聞報摘錄:
雖然SONY早在70年代就投入LCD的研發,但80、90年代卻將集團重點放在電影和投資新廠房上,同時也錯估平面電視市場的趨勢,致使SONY在全球電視市佔從90年代初期的10%衰退到6.5%。

SONY採用獨特的映像管技術,無法將多餘的映像管售予其他廠商,原本的技術優勢卻成為今日的包袱。
所以說,可憐呀。
除了保持技術的領先外,替代技術的崛起也要注意呀。

星期一, 8月 08, 2005

最近熱門的:熱聲學

起因是今年的intel ISEF台灣的學生獲得大獎,題目是
Enhanced Cooling of Microelectronic Devices by Using the Thermoacoustic Effect

據說可以將CPU溫度由70'C降到27'C.
實際上有關這一篇論文的內容是”找不到”。

熱聲學
有趣的flash網站http://www.benjerry.com/our_company/sounds_cool/
利用聲波造成駐波,在駐波的大壓力點溫度會增加,利用管壁散熱,駐波壓力低處溫度低。

不過這個效率好像很低,所以猜測學生們是利用聲波改善熱對流,增加散熱能力。
應該和以前的熱聲學原理不同。

----- 純屬猜測而已。
其實google "Thermoacoustics" 就會有很多....

RS232 pin 腳定義

所以第九pin可以用來偵測是不是有電話進來,第一pin可以用來偵測是否有接電話線。第4 pin,第7 pin接High,告訴Modem可以收/送 資料。
用在和Modem相連時,因為Modem端已經將TX/RX pin交換,所以不需要交換TX/RX。
如果要和電腦相連,而不用交換線(Null Modem Cable),TX/RX pin就要交換。


這個是Intersil的232 level轉換IC:


如果不想用使用Handshaking,因為Modem會檢查handshaking Signal,所以要像下面這樣接
(圖片是 http://www.lammertbies.nl/comm/info/RS-232_null_modem.html#loop)
也就是說pin 7, 8要短路,4,6要接到High (是RS232 12V的high,不是5V的high),或是接到pin 1。如果只有接2,3,5這幾pin,其他都沒接,AT Command可以動作,但是撥通後的CONNECT 字串和資料完全沒辦法傳送。

有人說:下半年經濟開始轉好...從三點..

這是這一期的天下雜誌電子報說的:
首先,根據《華爾街日報》對經濟學家的調查指出,油價並非目前影響美國經濟的最大因素,包括下半年在內,未來十二個月美國經濟仍以溫和的速度增長。

第二,與全球一致,下半年的台灣景氣會緩慢地愈來愈好。

第三,物價雖仍持續上漲,但是溫和且不損及經濟成長。
雖然是單純的看圖說故事。
.....非最大,但是也有影響吧?何以見得會與全球一致?溫和就沒關係?
拭目以待囉?

星期四, 8月 04, 2005

又有颱風囉


anther typhone....不用上班啦。
奇怪的是新竹縣不用上班,可是新竹市要。
新竹市長大概認為大概風雨進入新竹市區後會自動減小吧。

Gentoo Installation Memo

準備boot meterial


到 ftp://ftp2.tnc.edu.tw/ download
/pub2/Gentoo/releases/x86/2005.0/installcd/install-x86-minimal-2005.0.iso
用這個iso開機。

規劃HD,就是要安裝gentoo的HD.


/dev/hda1 ext2 -- boot用
/dev.hda2 swap
/dev/hda3 ext3 -- /

mount


swapon /dev/hda2
工作目錄/mnt/gentoo就是將來HD的環境
#mount -t ext3 /dev/hda3 /mnt/gentoo
#mkdir /mnt/gentoo/boot
#mount /dev/hda3 /mnt/gentoo/boot

安裝base system


下載stage1,解開到/mnt/gentoo中
這 階段要產生/mnt/gentoo/dev下的許多device node,還需要將基本的binary(/bin),environment tools (/usr)都copy進來。所已用一個stage package包起來。解開時加一個-p option維持package中的file attrib。
gentoo#tar -xvjpf stage1-x86-2005.0.tar.bz2
完成後,ls /mnt/gentoo已經可以看到一個基本的root file system的結構了。
  • 要注意,stageN和boot的iso有關。如果選擇minimal boot,就代表什麼都沒有,所以要download stage1,從stage1開始。如果是其他的boot iso。那模可能從stage2或3開始就可以。
  • 第一次安裝的錯誤就是因為download stage2,unpack,導致/mnt/gentoo/下的目錄不完全(只有bin, dev)。所以接下來的portage有錯(找不到usr)

安裝package list


下載portage,解壓縮到/mnt/gentoo/usr
portage包含目前所有gentoo的package list。解壓後才可已利用她來download package的soruce code。
  • 今天05/08/08 到tnc download 20050722的portage unpack卻有error,到tnc看20050722的size比20050721的size小,所以改download 20050721. 解壓縮ok

設定compile option


Gentoo的特點就是所有package都是由source code開始build,不使用已經build好的binary。所以每個系統可以自行決定build的option.
make 的option在m/mnt/gentoo/etc/make.conf
說明說只有stage1安裝的人可以動CHOST變數,所以手賤將i386改為i686

設定download package的mirror site


Gentoo會由make.conf中的變數決定download source的mirror site,gentoo提供mirrorselect命令來選擇,我選
ftp://ftp2.tnc.edu.tw/pub1/Gentoo
http://ftp.isu.edu.tw/pub/Linux/Gentoo



一開始就做最難的有點辛苦,所以從stage3來作比較好,又說2005.1 的installation handbook有說明install without network。
所以就follow 這一個document : http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml

說明寫,CDROM利就包含這個說明,而且可以用links2來讀。
用Alt-F1, F2來切換install , read doc環境。
#links2 /mnt/cdrom/docs/handbook/html/index.html
開機後,passwd設定新password後就可以到4.Preparing the Disks. (Skip Network 設定)。
用fdisk :
boot partition : 32M - active
swap parition : 256M - depends on your RAM size
root : 剩下的

Create Filesystem: boot 和 root用 mke2fs,swap用mkswap,再swapon。

mount 到工作目錄
boot --> /mnt/gentoo/boot
root --> /mnt/gentoo

開始安裝檔案....
把/mnt/cdrom/stages 下的tar file 解壓縮到/mnt/gentoo
可以看到這個tar file就是base system root file的image。所以untar時要加上 p option。
... 這個過程有點久...約10 min

安裝Portage
(http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?part=1&chap=5#installing_portage)
portage在/mnt/cdrom/snapshot目錄中
一樣,解開到/mnt/gentoo/usr 中
#tar xvjf /mnt/cdrom/snapshot/portage-20050709.tar.bz2 -C /mnt/gentoo/usr
..這個更久...

Copy SourceCode Archive
把/mnt/cdrom/distfiles 整個copy 到 /mnt/gentoo/usr/portage/distfiles

接下來準備Compile,先修改好compile option :
option 檔是 /mnt/gentoo/etc/make.conf
一般把Optimize選項: -Os (size) 改為 class 2 : -O2

再要Chroot到剛剛做好的root 環境中:
mount /proc, /dev
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
OK,chroot ..
先chroot 到新目錄
# chroot /mnt/gentoo   /bin/bash
再來update 環境變數
# env-update
執行script,將variable load到memory:
# source /etc/profile
換一下prompt:
# export PS1 = "(chroot) $PS1 "
OK!

接著,create Portage cache,這樣以後作emerge時比較省時間
 #emerge --metadata 
這個很花時間,...會有百分比顯示...

USE ..部份先不用看,因為是要裝完後再改的(如果需要的話)
USE是gentoo用來build各種package時用的,利用名稱和'-'號來決定要不要enable某種功能(或支援)。

設定Timezone:
/usr/share/zoneinfo下有所有支援的timezone 檔名(這裡應該是ROC吧?)
# cp /usr/share/zoneinfo/ROC /etc/localtime
將要用的時區copy為/etc/localtime。

Install SourceCode (Kernel)
gentoo的x86的patch好的kernel source code叫 gentoo-sources,沒patch的叫 vanilla-sources。
都是2.6的kernel。
用 emerge 來安裝,並且用 -doc 不安裝xorg-x11 相關package,和用symlink來產生 /usr/src/linux 這一個symbolic link:
# USE="-doc symlink" emerge gentoo-sources
完成後,/usr/src 下會有一個symbolic link : linx --> linux-2.6.12-gentoo-r10。


接著要configure kernel,用Manual Configur
先安裝pci utility,用裡面的lspci command看看pci 的裝置有哪些
# emerge pciutils
到/usr/src/linux下
# make menuconfig
幾乎都沒改,除非用了奇怪的device開機,要記得開機的driver要compile in ,不可以compile成module。

save後就要make了
# make && make modules_install
...可以去作別的事了...
很久..如果cpu和ram少的話,更久。
http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?part=1&chap=7)
...大概花了20 min (3.1GP4, 2GRAM)

完成,將build好的kernel image copy到boot partition,並且給他一個新名字(因為linux kernel build好後一律叫bzImage)。
# cp   arch/i386/boot/bzImage  /boot/my1st
我把他叫做.. my1st

Config Kernel Module
(http://www.gentoo.org/doc/en/handbook/2005.1/handbook-x86.xml?part=1&chap=7)
因為沒有要在開機後自動load的,所以不用作


編輯 /etc/fstab
格式是
partition    mountpoint    filesystem   mountoptions   dumpoption   fsckoption
mount option : default 是boot後自動mount, noauto 手動
dumpoption 的值是0或1,代表需不需要dump
fsckoption : 0(不需要), 1(root), 2(other)
我的是
/dev/sda1    /boot   ext2   default ,noatime    1  2
/dev/sda2 none swap sw 0 0
/dev/sda3 / ext2 noatime 0 1
mount option noatime是不需要作time register,可以加快反應。
(奇怪,make完後 vi竟然不見了..還是chroot 後就不見?)

俊億電子:民生MCU

類似sunplus,meson的自有RISC指令集的MCU開發商。
8,16 bit mcu with DSP instruction set.
up to 20MHz. data process rate up to 30kbps.
MP3的即時 壓縮/解壓縮 已經足夠。
Image支援JPEG, M-JPEG.
內建許多周邊:USB,Color/BW LCD driver,Keypad scanner,AD/DA,2.4G Wireless,flash,RAM。16 Ch MIDI.
Software developement tools在網站上可以download。
已經porting uC/OS OK (已在產品上使用)
單價約$2.1

以往reference developement plateform是真人發音電子辭典。
聯絡人:
吳家銘 副理
ivan_wu@kingb.com.tw
02-23460539 ext 309
信義區忠孝路五段550號9F
http://www.kingb.com.tw/

星期三, 8月 03, 2005

gumstix : smal linux computer

EE Time介紹:
英國Essex大學電腦科學教授兼系主任Owen Holland創造了一種新型的空間機器人應用。他整合了一台99美元的Linux單板電腦(名為Gumstix,因為它的尺寸大概等同於一塊口香糖), 以及一台電機推動器,把他們送到高處,並透過無線區域網路(WLAN)連接進行控制。
所以Google了一下:

Xscal 200 ~ 400. 64M Ram. SD/CF/PCMCIA slot for flash. Bt. Wifi.

u-boot. linux 2.6

$100 ~ $200.

還有很多周邊擴充可以買。

店面Wiki

蔡明介愛將重整揚智內幕

這是本期金周刊的摘要

進行裁員及辦公大樓面積 縮減,揚智員工人數已從四八八人,減少為二二一人,其中有五十餘位轉任至聯發科,辦公大樓也從六層變 成兩層,其餘全部租出去,管理銷售費用從一.一億元減少到六千多萬元。

聯發科產品策略向來聚焦,不過度轉投資。

原揚智的子公司:

無線區域網路(WLAN):智通電子 -> 裁撤
PC(個人電腦)晶片組產品線:宇力電子 -> 不屬揚智多媒體事業的發展範圍,積極釋股
PC相關光儲存晶片 :智洋電子 ->由聯發科合併吸收

基於穩健原則,喻銘鐸反應當時的市場實際情況,於去年第四季大力將過時無法售出的產品,提列了六.一六億元的備抵存貨跌價損失,「去年第四季光碟播放機(DVD-Player)晶片因存貨過多,市況很不理想,選擇在當時以保守方式進行提列存貨損失。」

聯發科IC設計相關轉投資:

影像感測元件(CIS)為主的原相科技
照相式手機後段DSP(數位訊號處理器)晶片的曜鵬科技

所以當初揚智多角化的策略算是失敗了?
像這樣全部雞蛋放在一個籃子裡,風險不是比較大?
員工裁掉一半,不知道研發人員裁掉的比例是多少?
這樣看來揚智不賺錢的原因是當初賺太多導致人力與管銷組織變大,轉投資過多?可以當賺太多錢後,不增加人手,不作新的研發,不是很容易隨著市場飽和而消失嗎?
ALi不賺錢的原因應該還是打不過聯發科吧?

星期二, 8月 02, 2005

使用NetMeeting 測試GnuGK .. 設定NetMeeting使用GateKeeper

開啟NetMeeting的選項,

按下進階設定,勾選”使用閘道管理員”,並且將GK的address填入,在帳戶名稱填入你要用來註冊的id。


確定,OK。在 呼叫,看看有沒有登入GK (ip address)

telnet到GK (port 7000),command "?",可以看到你的user id已經註冊了。
可以接,但是不能打電話出去。

Some Free Site

http://absee.com.tw/default.asp 免費的1G相簿,但是要用手機註冊,也規定要上傳2M以上解析度的照片(所以我U10的照片就不能上傳了)
http://freesf.tnc.edu.tw/antivir/ 免費(限非商業,個人使用)的防毒軟體。

電信設備測試規範

作PSTNn電話的要作的測試在這裡
很奇怪的是,在pdf這麼普遍的今天,他卻要用什麼dynadoc( wdl ),還要去下載。
算是”扶植國內企業”嗎?

在左邊的 xxx reader download就會帶到dynadoc網站。

build GnuGk w the latest openh323 & pwlib version

http://nchc.dl.sourceforge.net/sourceforge/openh323/openh323-v1_17_2-src-tar.gz
http://nchc.dl.sourceforge.net/sourceforge/openh323gk/gnugk-2.2.2.tar.gz
http://nchc.dl.sourceforge.net/sourceforge/openh323/pwlib-v1_9_1-src-tar.gz

上一篇的build都是拿homepage上link的stable version。
GnuGk 2.2.2
openh323 1.12
pwlib 1.5

後來看GnuGk上有combination, 2.2.2用最新的version來build,所以再試一次。
Openh323 1.17.2
pwlib 1.9.1

build OK,run OK。

etBIOS : information PC 的即開即用

etBIOS據說只需要增加256k的EEPROM size。就可以有DVD , mp3 player ,Web Browser。

最早出現在2000年 VIA forum,VIA 以etBIOS和C3 發表information PC平台。
強調 即開即用,最接近 一般家電產品 的操作方式。

2000 9/20,VIA 發布 使用etBIOS 和VIA Chip的Information PC Reference System。
利用 VIA 的 chipset和CPU,可以設計出$199以下,具有browser 和DVD player功能的PC。

Hardware :
VIA Apollo PLE133 SMA chipset 內建 Trident Blade3D™ graphics, a 533MHz VIA Cyrix® III processor, and 32MB SDRAM.

etBIOS所包含的功能:

etBrowser™
Code size非常小的 Web browser ,可以和PC的bios整合在一起。支援 PPP, TCP/IP, HTTP,SSL, 和 HTML,JPEG, GIF file 。

etBIOS™ 常駐在 non-volatile memory,不需要使用硬碟空間。幾乎可以作到即時的開機和關機,也因為不需要使用硬碟,所以不會受到病毒的侵襲。

除了作為information PC的操作系統外, etBIOS™ 也可以整合在一般的PC上,提供OEM廠商作線上偵測與更新功能。.

使用etBIOS的產品

佰钰 :好像已經倒閉,有一段時間傳聞董事長跑路。曾經出一款AMD的準系統。
FreeTech : 2004,2月推出過
惟翔科技 : VIA董事 投資的公司,產品:MediaBox,最多新聞的一個產品。但是這一家公司好像已經不在了,google不到。

。。。。所以看來,使用etBIOS的似乎都沒有好結果。。。。

星期一, 8月 01, 2005

Build GnuGk ...OpenGk --這是不一樣的

以下在Sarge_Text作:

pwlib

Download pwlib 到自己的目錄
untar (zxvf) 解開到自己的目錄 -- 自己解到pwlib

ReadMe.txt說會需要bison和flex
#apt-get install bison
#apt-get install flex

#apt-get install libc6-dev (會安裝gcc和library, include file)
#apt-get install g++

#cd pwlib
#./configure
#make both
~~~~ wait ~~~~

OK了。到sample_src下build hello看看...
#make both
執行,出現找不到share library,所以大概要設path。
果然在ReadMe找到。要設LD_LIBRARY_PATH變數
bash shell script:
LD_LIBRARY_PATH=/root/pwlib/lib
export LD_LIBRARY_PATH

run過這個script後(要用繼承shell . command),再run hello 已經ok。

接著是OpenH323

download openh323
一樣,解開(會到openh323)。
#./configure
#make opt
~~~~ wait~~~~ ~~~~wait~~~~ 比pwlib更久

OK,到sample\simple 下run simph323看看,
出現一樣的,找不到share library的warnning..
所以也要把 openh323的lib加入LD_LIBRARY_PATH中,因為已經有宣告過,所以:
#LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/openh323/lib
在run一次simph323 ---- OK!
* 不要忘記修改shell script.

然後是OpenGk

...不是GnuGk喔..
download OpenGk,解開,make
#make both
~~ wait ~~
#make install
#opengk -xc
Segment Fault !
掛點!

啟動gdb,到obj_linux_d下執行
#gdb opengk
(gdb) b main
(gdb) run
next ....
Program received signal SIGSEGV, segmentation fault.
0x40e072a9 in std::istream::get() from /usr/lib/libstdc++.so.5

So ?

先build gnugk試試..

看看是不是bison的影響..
download gnugk,解壓。(( homepage的source link好像有錯,是executable。要到sourceforg去download(網頁下面,沒有x86的部分)才對)。

readme.txt說document在doc folder下,要用sgml2txt轉為txt(或是sgml2html轉html)。
#apt-get install sgml-tools
說sgml-tools已經被linuxdoc-tools取代。
#apt-get install linuxdoc-tools
到docs下,看Makefile
#make html
說可以./configure --help看看
#./configure --disable-radius --disable-mysql --disable-pgsql
#make opt
make說沒有autoconf ---- 這個在./configure時就要告訴我吧?
#apt-get install autoconf
#make opt
Error !!!!

cisco.cxx: In member function `virtual PObject::Comparison
Cisco_ARQnonStandardInfo::Compare(const PObject&) const':
cisco.cxx:92: error: parse error before `)' token
cisco.cxx:92: error: `PIsDescendant' undeclared (first use this function)
cisco.cxx:92: error: (Each undeclared identifier is reported only once for each
function it appears in.)
cisco.cxx: In member function `virtual PObject::Comparison
Cisco_LRQnonStandardInfo::Compare(const PObject&) const':
cisco.cxx:203: error: parse error before `)' token
cisco.cxx:203: error: `PIsDescendant' undeclared (first use this function)
make[2]: *** [obj_linux_x86_r/cisco.o] Error 1
make[2]: Leaving directory `/root/gnugk-2.2.2'
make[1]: *** [optshared] Error 2
make[1]: Leaving directory `/root/gnugk-2.2.2'
make: *** [bothshared] Error 2

查cisco.cxx,發現那是一個#ifndef


在RH9下build OpenGk

-> Run OK。
build gnugk..一樣的error.

後來發現是openh323和pwlib的版本問題

gnuGK : Gatekeeper

http://www.openh323.org/code.html download Windows版的GnuGK和 OpenH323,Pwlib這兩個DLL和Ohphone.
http://www.gnugk-cc.com/ download gnugk control center。

解開gnugk,dll, ohphone.將所有dll和exe copy到c:\H323

follow gnugk的folder下etc folder的status.ini, edit成:
[Gatekeeper::Main]
Fourtytwo=42

[GkStatus::Auth]
rule=allow
另存為gnugk.ini,放在和exe檔相同的位置。

將所有exe檔所在目錄加入path。開啟command windows,啟動gatekeeper
c:\H323\gnugk -c gnugk.ini
可以看到gnugk的運行message。

開啟另一個command window,telnet gnugk
telnet 127.0.0.1 7000
可以看到gnugk回應

開啟另一個command window,執行ohphone (H323 terminal client)
c:\H323\ohphone -l -a -u jan
-l : listen mode
-a : auto answer
-u jan : username - jan
可以看到ohpone command

到剛剛telnet到gnugk的window,輸入 printallregistrations,會看到jan的註冊資料

到另一台電腦,執行ohphone
c:\H323\ohphone -u tom jan
-u tom : username是tom
jan : 呼叫jan
可以看到jan和tom接通。

到剛剛telnet到gnugk的window,輸入printallregistrations,看到jan和tom。
輸入!,看到 一個session正在通訊。

-----------------------------------------------------------------

實際上 令一個電腦是run在linux Debian 3.1
#apt-get install gnugk
#apt-get install simph323
因為Debian的gnugk中沒有ohphone,所以只好安裝simph323。
simph323的argument和ohpne一樣。