原创 IOCP 系列函數講解

CreateIoCompletionPort詳解 GetQueuedCompletionStatus PostQueuedCompletionStatus WSASocket Socket與WSASocket的區別 WSA

原创 使用python 修改文件內容

   做嵌入式時需要把windows 下的 ads 工程 項目移植到linux 下的gnu項目時候需要做大量重複的修改,比如把 ABC EQU 1 修改爲 #define ABC 1    如果用手工一個個

原创 mips體系堆棧回溯分析與實現

  在上家公司做 linux 驅動開發主要基於mips架構,在內核下有一個好玩的函數 dump_stack, 只要調用到這個函數就能把函數的調用棧給打印出來,十分方便,不再需要kgdb斷點了。   現在做電視機頂盒開發,各種軟

原创 linux 常用命令 整理

grep 命令 過濾不需要內容 -v 不顯示錯誤信息 忽略大小寫 mount 命令 列出已經掛載的文件系統信息 掛載分區 1 .grep 命令 過濾不需要內容 -v   grep 最常用的就是過濾需要的內容,但有

原创 線程終止資源清理方式

Posix線程終止的兩種情況 線程終止時的清理 線程終止的同步及其返回值 關於pthread_exit 和return 1.Posix線程終止的兩種情況。   包括正常終止和非正常終止。線程主動調用pthread_exit

原创 IOCP 完成端口

什麼是IOCP 實現方法 實現代碼 什麼是IOCP 先讓我們看看對IOCP的評價 I/O完成端口可能是Win32提供的最複雜的內核對象。[Advanced Windows 3rd] Jeffrey Richter IOC

原创 一個 pthread_cancel 引起的線程死鎖

  這篇文章主要從一個 Linux 下一個 pthread_cancel 函數引起的多線程死鎖小例子出發來說明 Linux 系統對 POSIX 線程取消點的實現方式,以及如何避免因此產生的線程死鎖。 一個 pthread_ca

原创 gh0st錯誤修改

SetPaneText 的崩潰問題 WSAIoctl 參數類型導致棧異常 CIniFile 構造函數導致異常 棧上對象多線程析構函數導致程序崩潰   開始看 gh0st 源碼,找來了一份比較純淨的官方代碼來讀,有點抓狂,

原创 編譯和使用zlib

  由於要弄一個項目,在windows下用到zlib庫,現成的庫都是release版本的,如果項目是debug的就會導致一大堆符號錯誤,無奈只得自己重新編譯zlib庫。 首先下載 源碼和工程文件 解壓到某個目錄 開啓VS2010

原创 幾個小型 bash 例子

求下標的一個 bash 腳本 筆記本 Ubuntu 下禁止觸摸板 讀文件一行處理某一行 求下標的一個 bash 腳本   今天很大力氣寫了一個腳本,平時很少寫, 因此這次幾乎每一行都要搜索很久才能弄出來。先說功能   

原创 數字電視業務PSI-SI學習系列

目錄 MPEG-2簡介 TS流的生成與結構 DVB的分類 DVB SIPSI分析和處理 PATProgram Association Table節目關聯表 PMTProgram Map Table節目映射表 CATCond

原创 OpenGL入門學習

環境搭建 OpenGL入門學習二 點直線和多邊形 在OpenGL中指定頂點 開始繪製 例一畫一個圓 例二畫一個五角星 例三畫出正弦函數的圖形 OpenGL入門學習三 關於點 關於直線 關於多邊形 OpenGL入門學

原创 shell 腳本報錯^M: syntax error near unexpected token

  以前寫shell腳本運行的好好的,今天再運行突然出現了錯誤: syntax error near unexpected token `   網上搜了下正好有人遇到過這個問題,並且給出瞭解決方式,於是乎就轉過來了:   用命令v

原创 gh0st的IOCP模型分析

在分析了那麼多IOCP相關api之後想把IOCP模型分析下,本人菜鳥一個,高手勿笑。 gh0st是單文檔類型的程序框架。 文檔類型的都是從theApp開始的。theApp是一個全局變量。 那我們就先看一下CGh0stApp這個類的

原创 Linux framebuffer顯示bmp圖片

  幀緩衝(framebuffer)是Linux爲顯示設備提供的一個接口,把顯存抽象後的一種設備,他允許上層應用程序在圖形模式下直接對顯示緩衝區進行讀寫操作。   framebuffer是LCD對應的一種HAL(硬件抽象層),提供