原创 live555源碼初步解析(一)

  最近因項目需要,要學習live555這個開源平臺。live555是用c++實現的,對於該平臺的介紹網上有很多文章,以下是個人在讀它源碼時的記錄,也是一個初步的理解,和大家一起分享一下。有錯誤,或者不足之處請大家指出。        

原创 setsockopt 設置socket

1.closesocket(一般不會立即關閉而經歷TIME_WAIT的過程)後想繼續重用該socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const

原创 MFC 獲取系統時間

 CTime t=CTime::GetCurrentTime(); //得到當前系統時間 int year = time.GetYear(); //返回年int mouth = time.GetMouth(); //返回月份 int da

原创 Silverlight Bing Maps 學習系列(一) 開發前的準備工作

      最近學習微軟的Bing Maps 地圖引擎,主要參考 http://www.cnblogs.com/beniao/archive/2009/11/22/1608232.html 博客,再加上自己實踐總結,和大家分享一下。   

原创 修復被木馬或病毒隱藏的文件夾

最近文件夾郵遞員木馬和病毒肆行,在優盤上到處傳播,雖然最新的殺毒軟件能殺滅該病毒,但殺毒軟件卻不知道去恢復被隱藏的文件夾,導致殺毒後目錄全看不到了,更有不少人以爲是優盤壞了。 被該木馬感染的優盤,會自動生成和文件夾同名的 .exe 文件,

原创 Linux 下將sd格式化成ext2格式並掛載

sd卡在windows下格式化,只能格式化爲FAT文件系統格式的,但是FAT文件系統在linux下不支持軟鏈接。所以又必要將其格式化成linux下的文件系統格式,例如EXT2。 使用嵌入式linux中自帶的工具命令mkfs.ext2。 r

原创 BQ27501驅動和用戶空間交互數據

內核中的數據與用戶空間數據交互常用的函數有copy_to_user,copy_from_user,和宏定義put_user,get_user,__put_user,__get_user。copy_from_user和copy_t

原创 Linux內核空間和用戶空間傳遞數據

通常情況下,應用程序通過內核接口訪問驅動程序,因此,驅動程序需要和應用程序交換數據。Linux將存儲器分爲“內核空間”和“用戶空間”。操作系統和驅動程序在內核空間運行,應用程序在用戶空間運行,兩者不能簡單

原创 dispc_reg_in ,dispc_reg_out , dispc_reg_merge函數功能的分析

u32 dispc_reg_in(u32 offset) {        return (inl(offset));  //從端口讀取4個連續的字節 } 該函數讀取寄存器的值 u32 dispc_reg_out(u32 offset,

原创 dos命令窗口打開時命令提路徑怎麼樣定位到指定文件夾

         最近在搗鼓NASM,要使用NASM來編譯彙編代碼,下載的NASM的編譯器沒有界面,所以只能通過DOS命令編譯。而每次通過CMD命令打開DOS窗口都要重新設置工作目錄,設置爲NASM所在的文件夾。修改文件夾的右擊菜單選項,

原创 linux 模塊編程的簡單示例 helloworld

      以Helloworld這個簡單的程序的演示,達到對linux內核模塊編程的編譯,加載和卸載這個過程有初步認識目的。 hellomod.c源文件 -----------------------------------------

原创 基於TCP的Socket 編程

 基於TCP(面向連接)的socket編程,分爲客戶端和服務器端。客戶端的流程如下:(1)創建套接字(socket)(2)向服務器發出連接請求(connect)(3)和服務器端進行通信(send/recv)

原创 CCS頭文件路徑的添加

       在工程中加入頭文件時,有時運行CCS時卻無法找到頭文件,其中是因爲加入的頭文件路徑與CCS默認路徑不一致,導致工程無法找到所需的頭文件。        解決方法是添加頭文件路徑到工程中去:菜單選擇“project”->

原创 CCS中如何生成LIB文件,並在另外CCS項目中引用LIB文件

       CCS項目建立時,默認是生成.OUT可執行文件。當想把一個實現的代碼較多的功能加入到一個項目中,把這個功能做成一個LIB文件,然後引入到項目中直接調用,是最方便和簡潔的。 圖1            編譯之前要設置編譯選

原创 完整的圖