原创 重新讀《深入理解計算機系統》這本書
在這之前的一年時間裏,我斷斷續續的看完了這本書,雖然理解了有些東西,但是現在回想起來好多東西還是不能夠理解,所以從現在開始重新讀這本書,希望自己的能力有更好的提高 。 這次不正着讀,反過來讀試一下,看看能有
原创 開始寫畢業論文了
一個月的時間過去了,終於忙完了,現在終於可以一心一意的寫畢業論文了。
原创 #pragma與_Pragma
C90爲預處理指令家族帶來一位新成員:#pragma。一般情況下,大家很少見到它。 #pragma的作用是爲特定的編譯器提供特定的編
原创 讀代碼好睏難啊
從 七月14號開始就在讀main(接近一千行)函數,到現在都還沒有把main函數讀完。在讀的過程中,程序到處跳,剛剛又看到有一個有八百多行的函數,不知又要讀多久啊。 代碼總長度粗略估計了一下,好像有十幾萬行,這樣讀可能讀到畢業都讀不完啊。
原创 Bind: Address Already in Use Or How to Avoid this Error when Closing TCP Connections
In order for a network connection to close, both ends have to send FIN (final) packets, which indicate they will not s
原创 將32位代碼向64位平臺移植的注意事項
閱讀提示:隨着低成本64位平臺的來臨,加上內存和硬盤價格的不斷下跌,無疑爲32位程序向64位硬件的移植又加了一把勁,那些科學運算、數據庫、消耗大量內存或密集浮點運算的程序也搭上了這一順風車。在本文中,主要討論向64位平臺移植現有32位
原创 automake之hello例子
automake之hello例子 1.新建c文檔 2.生成configure autoscan cp configure.scan configure.in 編輯 configure.in 現在將configure.s
原创 apue.h
/* Our own header, to be included before all standard system headers */ #ifndef _APUE_H #define _APUE_H #define _XOP
原创 Linux下動態庫靜態庫的使用
本文主要解決以下幾個問題1 爲什麼要使用庫?2 庫的分類3 創建自己的庫或 許大家對自己初學linux時的情形仍記憶尤新吧。如果沒有一個能較好的解決依賴關係的包管理器,在linux下安裝軟件將是一件及其痛
原创 ch06:目錄操作
第六章 目錄操作 #include <unistd.h> char *getcwd(char *buff, size_t size); ERANGE char *buf; int len = 50; b
原创 mulTdCpfile.c
#include "apue.h" #include <fcntl.h> #include <pthread.h> void * copyFile(void *); // 創建空的文件 int createFile(int fd, i
原创 ch05:高級文件操作
第五講 高級文件操作 #include <fcntl.h> #include <stdio.h> #include <unistd.h> int main() { int fds[2]
原创 HashTable的實現
爲了實現高效訪問一個集合中的元素,Mpr中實現了Hash Table,其結構如下圖所示 類的簡單描述: MprHashTable是存儲和管理Hash內容的類,MprHashEntry是HashTable的一項,有三個派生類M
原创 三個階段
1.多線程拷貝2.通過解析url,得到文件信息3.在firefox中添加插件
原创 雙向循環鏈表的實現
最近將一個開源項目port到嵌入式設備上,發現其巨大部分類都是繼承於雙向鏈表(或者雙向隊列),這一個過程看似不可思議(感覺有違我們以前學的面向對象的知識),但是事實卻是這樣的方式使很多操作都變得簡單起來,由於類繼承於Link,則在L