Time of Update: 2018-12-06
分析boot啟動代碼時先分析儲存空間分布(硬體工程師一般會提供),連結指令碼,Makefile檔案,務必注意由板級硬體設定的啟動方式(例如:sd卡啟動,nand啟動,nor啟動)。處理器在執行程式之前,會從相應儲存介質搬移代碼到ESRAM中(對於從nor啟動,也有可能從nor直接取指令執行)。對於6200測試平台,板級設定為SD卡啟動,系統上電後從SD卡搬移8KB代碼到ESRAM中,且此時0地址映射到ESRAM(注意系統啟動時,ESRAM具有三個地址,分別是0x0:映射,0XB2000000
Time of Update: 2018-12-06
如果目標檔案對外部目標檔案符號進行強引用,但在連結成可執行檔時不能被正確的決議(好奇怪的名稱,看看p_51),連結器就會報錯,這是對於強引用(Strong Reference)而言的。與之相對應還有一種弱引用(Weak
Time of Update: 2018-12-06
除法散列法:散列函數:h(k) = k mod m;關鍵字為k,m是散列數組的長度m不應是2的冪,當k是一個按基數2^p解釋的字串時,選m=2^p-1可能是一個比較糟糕的選擇可以選做m的值常常是與2的整數冪不太接近的質數. 乘法散列法:例子:k = 123456, p = 14, m = 2^14 = 16384,因為當s/(2^32)與(sqrt(5) - 1)/2接近時,s為2654435,故(k*s)&(~0) = 17612864,取其高14位,得散列值67
Time of Update: 2018-12-06
http://real.zdell.com/a/200512/818.html在網上找了一段代碼,能工作,但是顏色不對,紅的變成藍色的,黃的變青色了,有時間找找問題。這個問題在我初學DirectX是困惑了我很久,貼出來為初學者提供一個參考。 #include "ddraw.h" #pragma comment(lib,"ddraw.lib")#define FILE_HEIGHT 288 #define FILE_WIDTH 352#define
Time of Update: 2018-12-06
寫了個platform架構的UART測試驅動,在卸載的時候出了問題,驅動卸載不掉,感覺很奇怪,使用者空間使用的rmmod最終會調用kernel/module.c 中的 SYSCALL_DEFINE2(delete_module, const char __user*, name_user, unsigned int, flags)1、按找lsmod顯示的模組名尋找模組 mod = find_module(name); if (!mod) { ret =
Time of Update: 2018-12-06
1 #! /bin/bash 2 LIB_CUR_REL= 3 LIB_CUR_ABS= 4 5 get_binary_dependency() 6 { 7 readelf -d $1 | grep NEEDED | sed -n 's,.*\[\(.*\)\],\1,p' 8 } 9 10 expand_path() 11 { 12 LIB_CUR_ABS=
Time of Update: 2018-12-06
ubuntu下安裝subversion用戶端: sudo apt-get install subversion subversion-tools 詳細請看 http://www.subversion.org.cn/svnbook/1.1/index.html svn子命令 1、檢出 svn co http://路徑(目錄或檔案的全路徑) [本地目錄全路徑] --username 使用者名稱 --password 密碼svn co
Time of Update: 2018-12-06
多個目標檔案中含有相同名字全域符號的定義,那麼這些目標檔案連結的時候將會出現符號重複定義的錯誤。比如我們在目標檔案A和目標檔案B都定義了一個全域整形變數global,並將他們都初始化,那麼連結器將A和B進行連結時會報錯。這種符號的定義可以被成為強符號(Strong Symbol)。有些符號的定義可以被稱為弱符號(Weak
Time of Update: 2018-12-06
WebBrowser組件的execWB方法1. <object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>2. 調用方法:WebBrowser.ExecWB (nCmdID, nCmdExecOpt, [pvaIn], [pvaOut])3. 參數說明:(a).nCmdID OLECMDID_OPEN =
Time of Update: 2018-12-06
既然是電腦系的研究生,而且走的是應用方向,跟老師做項目就成了生活的主旋律。 首先感謝老師的教導,感謝實驗室裡師兄師姐的協助,~\(≧▽≦)/~ 學習Delphi以來,一直只知道表面上的文法,並不瞭解Delphi代碼的編譯、運行機制,為什麼Delphi的編譯器這麼快?為什麼Delphi可以使用windows系統定義的訊息傳遞機制?。。。很多問題現在甚至回憶不起來,然而疑惑的感覺一直揮之不去。後來多虧劉哥推薦的兩本書:周愛民的《Delphi原始碼分析》和李維的《Inside
Time of Update: 2018-12-06
最近在做視頻處理相關的工作,遇到一些圖片處理的問題,從別處找到解決的代碼。 其中對比調節的代碼處理結果看起來不太舒服,暫時沒時間仔細研究,先放在這裡。// 改亮度function ChangeBrightness(bmp: TBitmap; s: Integer): Boolean;var p: PByteArray; x, y: Integer;begin try //24位真彩色 Bmp.PixelFormat := pf24Bit;
Time of Update: 2018-12-06
首先聲明,這是一個已經實現的軟體,但是這裡我盡量避免講技術細節,唯寫基本思路,希望對相關工作有興趣的朋友見仁見智,歡迎拍磚。 簡單說明一下,Embedded Web
Time of Update: 2018-12-06
char *screenInit(int height, int width, char background = ' ');char *screenInit(int height = 4, int width = 4, char background);正確;char *screenInit(int height, int width, char background = ' ');char *screenInit(int height = 4, int width = 4, char
Time of Update: 2018-12-06
當xml中使用預設命名空間時,在用xslt轉換的時候需要變換一下命名空間,也就是給原先的預設命名空間起個名字。折騰了一晚上才發現原來是這麼回事兒。具體問題表現和解決辦法可以參照這裡:http://bbs.w3china.org/dispbbs.asp?boardID=8&ID=50281另外關於xml的命名空間,這篇文章講的很詳細,轉過來留著:《XML 命名空間以及它們如何影響 XPath 和 XSLT (Extreme
Time of Update: 2018-12-06
使用Delphi一年多,從一開始的抵觸,到現在的愛不釋手,對Delphi這個東西的認識有了很大改觀。手頭上的一個做視頻編輯的軟體項目剛剛告一段落,突然想寫一寫自己這一年來的Delphi學習曆程,不知道能否給還在迷茫於要選擇哪種程式設計語言的程式新手提供一點靈感。 一年前的我,就是這樣一個很迷茫的大學生,雖然高考之後成功進入了自己嚮往已久的電腦系,而且覺得自己對於編程還有不小的熱情,然而大學時光不知不覺已過去三年,從大一開始相繼學了C、C++、C#、Java等程式設計語言,每個都是學完就丟,
Time of Update: 2018-12-06
在下面的代碼中a1調用const版本,a2調用非const版本。const a a1;a a2;a1.x();a2.x();後面加const表示在該函數中不能對類的資料成員進行改變,比如:class A{private: int aa;public: int x(){ return aa++;} //這可以int x() const{return aa++;//這錯誤}};當然有特殊情況,就是用mutable關鍵字修飾過的成員變數可以在聲明為const
Time of Update: 2018-12-06
指向數組的指標:int(*p)[5];定義了一個指向數組元素為int型的元素個數為5的一維數組;也可以理解為二維數組的首元素就像int*p指向int型可以理解為一維數組的首元素;也可以理解為*p為一個指標,指標裡面的內容是一個有5個int值的數組;*p=a[5];其中,"類型說明符"為所指數組的資料類型。"*"表示其後的變數是指標類型。"長度"表示二維數組分解為多個一維數組時,一維數組的長度,也就是二維數組的列數。注意,"*(指標變數名)"兩邊的括弧不可少,如缺少括弧則表示的是指標數組。p指向二
Time of Update: 2018-12-06
無意中想到Delphi中沒有記憶體回收機制,於是想看看有沒有人已經做了這方面的工作。後來發現了這篇文章,寫的很不錯,借過來留作參考,只可惜不知道作者。轉自:http://developer.51cto.com/art/200510/7129.htm1 緣起1.1 我的一個出錯程式程式名稱:呼叫處理模組的壓力測試工具,分為用戶端和服務端。開發工具:Delhpi
Time of Update: 2018-12-06
從揚帆Blog看到的一段代碼,整理了一下,留著備用。原文:http://www.wesoho.com/article/Delphi/2910.htmunit UDownloadHTML;interfaceuses SysUtils, Windows, Forms, WinSock, WinInet;function DownloadWithInet(const AUrl: string): string;function DownloadWithSocket(const AUrl:
Time of Update: 2018-12-06
簡潔版,出自:http://stackoverflow.com/questions/982687/how-do-i-display-xml-using-an-xslt-document-in-a-delphi-appUses XMLDoc, XMLIntf;function Transform(XMLContent : string; XSLContent : string) : WideString;var XML : IXMLDocument; XSL :