發表文章

ies4linux in Ubuntu

ies4linux 是一套在 Linux 底下執行 IE 的軟體(沒辦法,有些網頁就是要用 IE 來開 ... ),概念就是透過 wine 來進行模擬。在 Ubuntu Linux 底下(不確定其他的 Distribution 會不會碰到一樣的問題)安裝時必須要作相關的調整(中文語系的關係),紀錄在下面: ies4linux-latest/lib/messages.txt : tw . zhtw TW --> zh tw zhtw TW ies4linux-latest/lib/functions.sh : pid=(wget ...) --> pid=( LANG=C wget ...) 下一個遇到的問題是字型的問題。本來我以為既然 ies4linux 是透過 wine 來模擬的,那應該會跟 wine 吃同樣的設定檔,但我發現我錯了~ ies4linux 有自己的設定檔,紀錄在下面: ~/.ies4linux/ie6/drive_c/windows/win.ini 要改變字型大小,請加上: [Desktop] menufontsize=14 messagefontsize=14 statusfontsize=14 IconTitleSize=14 要改變字型,請放到: ~/.ies4linux/ie6/drive_c/windows/fonts 要停用字體反鋸齒,請: ~/.ies4linux/ie6/user.reg [ SoftwareWineX11 Driver ] "ClientSideAntiAliasWithRender"="N"

論文笑話~

幾年前看過的笑話,來源已不可考,在這邊記錄一下。 ============================================ 1.剛進入碩士班時,會期許自己要寫出曠世鉅作 2.在翻閱文獻的過程中,發現這些大師的文獻用字艱澀,不好消化 3.好不容易建立模型,結果發現將輸入因子套用之後,產生的結果很難看 4.不斷調整模型也無效 5.開始培養第二專長,如煮咖啡、養魚......來逃避現實 6.畢業在即,翻以前的碩士論文開始一大抄 7.數據隨便亂帶得到還ok的結果 8.口試當天被問得冷汗直流,如果教授本來就不會留人還沒關係,如果會就......

ZIM ~ A good desktop wiki

一直在找一個個人使用的 Wiki 系統,對這個系統的要求如下: 簡單易用,不要太多花俏的功能。 能夠貼圖。 免費,最好是自由軟體。 當初就是因為這樣的東西很不好找,所以才會開始使用 Blog,但現在找到一個不錯的軟體了。 ZIM: http://zim-wiki.org/ Wiin32 的平台: http://code.google.com/p/zimdesktopwiki-windows/

skb_copy v.s. skb_clone

skb_clone 和 skb_copy 有甚麼不一樣? 從字面上來看,差不多啊,但實際上就是有差,先來看看 Man 吧~ struct sk_buff * skb_clone (struct sk_buff * skb, int gfp_mask); Duplicate an &sk_buff. The new one is not owned by a socket. Both copies share the same packet data but not structure. The new buffer has a reference count of 1. If the allocation fails the function returns NULL otherwise the new buffer is returned. If this function is called from an interrupt gfp_mask must be GFP_ATOMIC. struct sk_buff * skb_copy (const struct sk_buff * skb, int gfp_mask); Make a copy of both an &sk_buff and its data. This is used when the caller wishes to modify the data and needs a private copy of the data to alter. Returns NULL on failure or the pointer to the buffer on success. The returned buffer has a reference count of 1. As by-product this function converts non-linear &sk_buff to linear one, so that &sk_buff becomes completely private and caller is allowed to modify all the data of returned buffer. This means that t...

Netfilter 的 Hook 方式初探

圖片
Netfilier,Linux 核心裡面的封包處理子系統。這篇文章唯一時心血來潮,看了一小段 code 以後所作的整理。 kernel: 2.6.23.14 下圖是 Linux 核心的網路封包處理流程: 讓我們到 ip_rcv 這隻函式來看一下,ip_rcv 是處理 IP 封包的主要進入函式。 net/ipv4/ip_input.c: /* * Main IP Receive routine. */ int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev) { .... struct iphdr *iph; .... u32 len; .... /* When the interface is in promisc. mode, drop all the crap .... * that it receives, do not try to analyse it. .... */ .... if (skb->pkt_type == PACKET_OTHERHOST) .... .... goto drop; .... IP_INC_STATS_BH(IPSTATS_MIB_INRECEIVES); .... if ((skb = skb_share_check(skb, GFP_ATOMIC)) == NULL) { .... .... IP_INC_STATS_BH(IPSTATS_MIB_INDISCARDS); .... .... goto out; .... } .... if (!pskb_may_pull(skb, sizeof(struct iphdr))) .... .... goto inhdr_error; .... iph = ip_hdr(skb); .... /* .... * RFC1122: 3.1.2.2 MUST silently discard...

if ( x == 0 ) 和 if ( 0 == x ) 的差異

今天找到一本很不錯的書 C Programming FAQs: Frequently Asked Questions 看到其中一個問題,覺得很有意思,就把它記錄下來。 為什麼有人要寫 if ( 0 == x ) 而不是 if ( x == 0 )? 就程式語法上來看,這兩個是完全等義的, 而從一般人解讀的理解來說,if ( x == 0 ) 又比較好理解, 那位甚麼會有人故意寫成 if ( 0 == x )呢? 答案是:「 防呆 」 基本上寫程式的人大概都會犯上一個錯誤, == 和 = 的誤用。 新手可能是稿不清楚狀況,老手則可能是不小心犯下了這個錯誤(寫字都會有筆誤了)。 這個 Bug 是很難找出來的,因為對 Compiler 來說, x = 0 仍然可以當作判斷條件, 而且是 成立 的條件式。 這代表在測試的情況下非常有可能測不出來!! 可是如果寫成 if ( 0 == x ),當不小心寫錯的時候, if ( 0 = x )是可以被判斷出來的, 以 gcc 來說,錯誤信息如下: Error: lvalue required as left operand of assignment 這樣程式設計師就可以很容易的發現這個問題而加以修正。 看來也許我要開始改變自己的寫法了~

靈修分享~提前5:20

如果覺得有弟兄姊妹作錯事情該如何處理呢? 最近靈修到一處經文 提前5:20 犯罪的人,當 在眾人面前責備他 ,叫其餘的人也可以懼怕。 本來這經節是沒什麼問題啦 可是看看耶穌怎麼說呢? 太18:15~17 倘若你的弟兄得罪你,你就去,趁著 只有他和你在一處的時候,指出他的錯來 。他若聽你,你 便得了你的弟兄;他若不聽,你就另外帶一兩個人同去,要憑兩三個人的口作見證,句句都可定準。若是不聽他們,就告訴教會;若是不聽教會,就看他像外邦人和稅吏一樣。 怎麼感覺處理的方法不太一樣呢?耶穌的作法感覺親切多了,還給人保留面子;相較之下,保羅就嚴格多了。到底應該怎麼來看這幾處經文呢? 有一些神學家認為,提前5:20是指著教會的長老說的,因為是教會的長老,應該用更嚴格的標準來審查,配合上前一節(已經有兩三個以上的見證人了),所以才會用這麼嚴格的標準。 這樣的解釋蠻合理的。但其實也不能肯定一定是指長老,畢竟下一節開始,又在談到提摩太治理的心態,感覺已經離開「長老」這個題目。 對我來說,當有人作錯事的時候,第一步絕對是私下溝通。但要是不聽的話呢?銀英傳楊威利的邏輯是:「說了三遍還不聽的人就可以不用在理他了」(當然這裡指的是建議,而不一定是犯罪),但我的心態也還蠻像是這樣的,這樣是好是壞?也許值得我再深思下去吧... 附帶一提,新譯本的翻譯如下: 常常 犯罪的,你要當眾責備他們,使其餘的人也有所懼怕。 只是不知道「常常」這兩個字是哪來的~