2009年5月22日 星期五

arm related documents/tools

arm.com's Documentation
GNU ARM toolchain
Martin THOMAS's ARM-Projects
Accessing ARM-Controllers with OpenOCD
OpenOCD - Open On-Chip-Debugger
OpenOCD's documentation - including JTAG hardware dongle, JTAG commands, GDB and OpenOCD, etc.

devkitPro - the toolchains of choice for homebrew game development, currently available for GameBoy Advance, GP32, Playstation Portable and GameCube. More platforms will be added as time permits.
devkitPro's files list in sourceforge.net - especially dswifi.

Building Bare-Metal ARM Systems with GNU


To read Part 1, go to What's need to get started.
To read Part 2, go to Startup code and the low level initialization
To read Part 3, go to The Linker Script.
To read Part 4, go to C and C++ compiler options
To read Part 5, go to Fine-tuning the application
To read Part 6, go to General description of interrupt handling
To read Part 7, go to Interrupt Locking and Unlocking
To read Part 8, go to Low-level Interrupt Wrapper Functions.
To read Part 9 go to C-Level ISRs and Other ARM Exceptions
To read Part 10 go to Test Strategies


To download Zip files with the C and C++ source code associated with this article series, go to Embedded.com's Downloadable Code page, or to Blinky for C and Blinky for C++.

2009年5月20日 星期三

zeroshell

Zeroshell is a small Linux distribution for servers and embedded devices aimed at providing the main network services a LAN requires. It is available in the form of Live CD or Compact Flash image and you can configure and administer it using your web browser.

some tutorial from linuxplanet.com :
Turn an Old PC Into a Multi-Purpose LAN Server with ZeroShell (part 1)

Set up Secure Wireless With Zeroshell Linux (part 2)

Zeroshell Linux: Captive Portal, Internet Gateway and Router (part3)

quagga

Quagga is a routing software package that provides TCP/IP based routing services with routing protocols support such as RIPv1, RIPv2, RIPng, OSPFv2, OSPFv3, BGP-4, and BGP-4+ (see Supported RFC). Quagga also supports special BGP Route Reflector and Route Server behavior. In addition to traditional IPv4 routing protocols, Quagga also supports IPv6 routing protocols. With SNMP daemon which supports SMUX protocol, Quagga provides routing protocol MIBs (see SNMP Support).

Traditional routing software is made as a one process program which provides all of the routing protocol functionalities. Quagga takes a different approach. It is made from a collection of several daemons that work together to build the routing table. There may be several protocol-specific routing daemons and zebra the kernel routing manager.

2009年5月17日 星期日

PostgreSQL 的測試 - 4

繼續之前的測試, 這一次是 nb27 升級到 2.6.29.1, 及 postgresq-8.3.7.

測試環境及結果:

pc26
nb27
pc34
pc200
OS
2.6.9-34.EL 2.6.9-34 .ELsmp 2.6.9-34 .ELsmp2.6.9-42.0 .10.ELsmp2.6.29.1 #2 SMP
2.6.20-rc6 #1 SMP2.6.20-rc6 #1 SMP2.6.9-42.0 .10.ELsmp
2.6.9-55.ELsmp
python
2.3.4
2.3.4
2.3.4
2.3.4
PostgreSQL
8.1.8
8.1.4
8.2.3
8.2.3
8.3.7
8.1.8
8.2.38.2.3
8.2.3
PyGresSQL
3.8.1
3.8.1
3.8.1
3.8.1
CPU Intel(R) Pentium(R) 4 CPU 2.80GHz
512 KB Cache (5605.85)
Genuine Intel(R) CPU T2400 @ 1.83GHz
2048 KB Cache (1998.36)
(DualCore)
Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz
4096 KB Cache (4819.82)
(DualCore)
Intel(R) Xeon(R) CPU 5140 @ 2.33GHz
4096 KB Cache (4657.86)
(DualCore x2)
RAM
1GB
1GB
2GB
4GB
duration
5:32:36
(22:39:05 - 04:11:41)
2:28:11
(16:33:14 - 19:01:25)
2:08:56
(15:11:55 - 17:20:51)
2:30:14
(17:47:33 - 20:17:48)
1:41:49 (15:59:31 - 17:41:12)
4:20:45
(22:40:28 - 03:01:13)
3:51:15

1:40:30
1:24:22 (09:42:26 - 11:06:42)
1:24:50
(noatime)
0:10:05
(noatime/ atime, noprint)
/0:10:17
0:48:35
(noatime, nohexdump)

(noatime,
print=time.ctime,
nohexdump)
average dur./call
19.956ms
8.891ms
7.737ms
9.015ms
6.109ms
15.605ms
13.876ms
6.030ms
5.062ms
5.091ms
0.605ms
0.617ms
2.915ms
1.636ms
min dur. /1000call
11.29sec
7.23sec
7.19sec
7.19sec
6.0842sec
4.54sec
4.54sec
5.26sec
4.963sec
4.971sec
0.566sec
0.565sec
2.854sec
1.566sec
max dur. /1000call
57.45sec
20.25sec
17.72sec
17.72sec
7.577sec
33.39sec
36.68sec
9.96sec
5.714sec
5.700sec
1.281sec
1.425sec

3.792sec
2.313sec
mean /1000call
19.956sec
8.891sec
7.737sec
9.015sec
6.109sec15.605sec
13.876sec
6.030sec
5.062sec5,091sec
0.605sec
0.617sec
2.915sec
1.636sec
std devi. /1000call
8.35sec
2.58sec
0.76sec
0.31sec
0.079sec
6.22sec
6.42sec
0.91sec
0.079sec
0.084sec
0.059sec
0.071sec
0.090sec
0.087sec


當 nb27 升級到 2.6.29.1/8.3.7 之後, 可以發現, 整個 performance 提升了不少. 且運作起來比較平順 (standard deviation 較小). 使得 nb27 /pc34 原本不是同一等級的機器, 但有了相同的表現.

也許 在 pc34 上的表現也更明顯, 有機會, 可以再試試.

2009年5月4日 星期一

useful site

Pank's blog

TuxArena

TuxArena - The Arena of Tux - Ubuntu and Debian articles, tutorials and news