2008年3月5日 星期三

有關 zhpy 的套件包 (for Debian Sid)

可能已經有人知道了,一直忘記放上來,算是提醒。

http://twemu.no-ip.org/apt/zhpy/

補過 patch 跟 manpage ,有任何建議請告知本人。

中華電信台東區對外國連線發生錯誤


凌晨 2:32 - 2:44

traceroute to www.blogspot.com (72.14.223.191), 30 hops max, 40 byte packets
3 tt-c6r1.router.hinet.net (168.95.176.162) 28.521 ms 28.738 ms 29.412 ms
4 tt-c12r1.router.hinet.net (211.22.229.1) 33.394 ms 33.564 ms 33.985 ms
5 kh-c12r11.router.hinet.net (220.128.24.66) 35.654 ms 36.146 ms 36.527 ms
6 kh-c12r31.router.hinet.net (220.128.24.117) 40.148 ms 68.710 ms 18.678 ms
7 * * *
8 * * *

traceroute to www.msn.com (207.68.183.120), 30 hops max, 40 byte packets
3 tt-c6r1.router.hinet.net (168.95.176.162) 16.953 ms 17.577 ms 18.166 ms
4 tt-c12r2.router.hinet.net (211.22.229.14) 18.504 ms 18.672 ms 19.081 ms
5 kh-c12r12.router.hinet.net (220.128.25.66) 21.322 ms 21.497 ms 21.909 ms
6 tn-st-c12r12.router.hinet.net (220.128.25.29) 27.578 ms 19.992 ms 20.462 ms
7 ty-fo-c12r12.router.hinet.net (220.128.9.6) 26.900 ms 27.149 ms *
8 ty-fo-c12r31.router.hinet.net (211.21.116.27) 23.391 ms 23.913 ms 24.996 ms
9 * * *
10 * * *


還好有備用線路,連基本的服務都不正常,整個無言。

把一些比較和技術無關的切到另外的Blog

Nature with Notes


http://nature-with-notes.blogspot.com/

最近在整理的資料

  1. Python & Django 的應用
  2. Mod Security(Apache) 的規則
  3. Jserv 的演講錄影
  4. Wireless 和電信法規
  5. Mono 和 C# .Net Framework 在 Linux 下的環境建構
  6. 使用者介面和生理

2008年3月4日 星期二

最近比較安靜

陷入一種無力狀態

希望...

對於未知的事物不恐懼,對於已知的事物思來源

2008年2月4日 星期一

TWDebCamp 2007 & 台東大學自由軟體推廣活動 活動花絮

wiki.debian.org.tw 已經壞很久,希望年後能修好

TWDebCamp2007

有需要錄影的,請在此回文。

2008年1月12日 星期六

如何使用 NASM 來學習組合語言

如何使用 NASM 來學習組合語言

1. 為何不使用 MASM 來學習?

因為 MASM 不具備跨平台的特性,僅能在 Intel
機器上執行,而且有商業性使用限制,寫出來的程式碼除非有買微軟的軟體和微軟簽約才能發佈,對於使用者是一個負擔。網路上有眾多版本,越新的版本功能越多,但對新手使用也越不方便,所以為何要去惹這個麻煩。最後你不能研究或拿到它的原始碼,因為他不提供競爭對手任何改進空間,對於以後要深入深究編譯器和系統結構,又是一層問題,因此在使用上能避免使用的話盡量避免。

2. 我已經用了 MASM ,怎樣轉換?

它們一樣使用 Intel 的語法,所以照常使用就可以了。但是假指令跟 Macro 部份要請仔細閱讀使用手冊,因為多少有點出入。

3. 如何安裝?

到 http://sourceforge.net/project/showfiles.php?group_id=6208
下載你所要的版本。

(a) Windows 98/XP 要下載 nasm-2.00-win32.zip ,抓下來解壓縮到 c:\nasm
執行就可以了。

(b) Linux 下使用套件管理程式,並尋找 nasm 。

4. 如何使用?

(a) Linux 下開啟終端機然後直接執行 nasm 指令。

(b) Windows 下請到 (開始)->(執行) 並鍵入 cmd 來進入終端機,然後至 c:\nasm
目錄使用程式。(如果 cmd 不會用的話,請去查指令)

5. 如何編輯檔案?

使用 Notepad 或是其他純文字編輯軟體

6. 寫出第一個 Hello World

(a) Linux

將檔案存入 a.asm (程式碼部份)

SECTION .DATA

hello: db 'Hello world!',10

helloLen: equ $-hello

SECTION .TEXT

GLOBAL _start

_start:

; Write 'Hello world!' to the screen

mov eax,4 ; 'write' system call

mov ebx,1 ; file descriptor 1 = screen

mov ecx,hello ; string to write

mov edx,helloLen ; length of string to write

int 80h ; call the kernel

; Terminate program

mov eax,1 ; 'exit' system call

mov ebx,0 ; exit with error code 0

int 80h ; call the kernel

然後執行 nasm -f elf -o a.o a.asm && ld a.o ,

將 a 加上可執行屬性,然後執行 ./a

(b) Windows

將檔案存入 a.asm (程式碼部份)

org 0100H

jmp _start

hello db 'Hello world!',13,10,'$' ; end at $

_start:

; Write 'Hello world!' to the screen

mov ah,9 ; write code 9 for print

mov dx,hello ; string to write

int 21h ; call the kernel

; Terminate program

mov ah,04ch ; 'exit' system call

int 21h ; call the kernel

然後在 c:\nasm\ 目錄下執行 nasm.exe a.asm -o a.com ,

a.com 檔就是執行檔。

7. 如何 Debug ?

(a) Windows 下建議使用 SoftICE 或 Debug (VS 內建的也可)。

(b) Linux 下建議使用 Nemiver 或 GNU Debugger。

8. 題外話:如何更上一層樓?

官方說法是「有恆心有毅力,總有一天會成功」,個人說法是「當書堆到整間臥室都是之後,把垃圾全部扔掉剩下來的就是了」,不負責任說法是「當你想偷開正妹視訊都懶得開的時候」。