Time of Update: 2018-12-03
12. Toolof genflagsThis tool will output insn-flags, in which functions produced bygenemit will be declared, and a series HAVE_* macros containing the conditionaltemplate of define_insn and define_expand patterns. 233 int234 main (int argc, char
Time of Update: 2018-12-03
這是敏捷開發一千零一問系列的第十九篇。(在這裡提問,之一,之二,之三,問題總目錄)先說說一千零一問的來曆。無論在培訓、諮詢中,還是在日常部落格、郵件、QQ群中,都不斷有人提出不同的敏捷開發問題,一一作答的時間消耗太大;如不作答,又知道這些不只是一個“感興趣”的問題而已,而是關乎某個團隊若干人月的工作,或一些人的職業生涯,或乃至企業的很多未來決策,雖然不懷疑大家遲早會找到答案,但以自己“曲折的經曆”看來,會有很多彎路要走。所以一直想開闢一個“長尾集合器”,把問題和答案匯總起來,乃至把提問的人和回答
Time of Update: 2018-12-03
一.SD/MMC卡介紹 1.1.什麼是MMC卡 MMC:MMC就是MultiMediaCard的縮寫,即多媒體卡。它是一種非易失性儲存空間件,體積小巧(24mm*32mm*1.4mm),容量大,耗電量低,傳輸速度快,廣泛應用於消費類電子產品中。 1.2.什麼是SD卡 SD:SD卡為Secure Digital Memory Card,
Time of Update: 2018-12-03
不知在那本書上看到 ++i比i++要快(i++需要一個臨時變數儲存i的值後再++),就記住這個一直沒測試,所以在寫代碼的時候 一直就使用++i覺得它快。今天測試了下發現並不是這麼回事,一直被誤解。所以寫了簡單的demo測試了下:int main(){ int a,c;a = 0;a++;++a;c =a++;c = ++a;c = a+1;return 0;}看下反組譯碼代碼吧(Windows上):int a,c;a = 0;00181B88 mov dword
Time of Update: 2018-12-03
12. genflags工具這個工具將輸出insn-flags,由genemit產生的函數,以及一系列包含define_insn及define_expand模式的條件模板的HAVE_*宏將被聲明在其中。 233 int234 main (int argc, char **argv) ingenflags.c235 {236 rtx desc;
Time of Update: 2018-12-03
當host上電後,使所有的卡裝置處於卡識別模式,完成設定有效操作電壓範圍,卡識別和請求卡相對位址等操作。1、 發送指令CMD0使卡裝置處於idle狀態;2、 發送指令CMD8,如果卡裝置有response,說明此卡為SD2.0以上;3、 發送指令CMD55+ACMD41,該指令是用來探測卡裝置的工作電壓是否符合host端的要求;在發送ACMD41這類指令之前需要先發送CMD55指令,在SDIO中ACMD41指令被CMD5替代。4、 發送指令CMD11轉換工作電壓到1.8V;5、
Time of Update: 2018-12-03
首先可以調用GetSystemInfo查看有多少個CPU,再通過調用:BOOL WINAPI SetProcessAffinityMask( __in HANDLE hProcess, __in DWORD_PTR dwProcessAffinityMask);第一個參數是代表要設定的進程,第二個參數是一個掩碼,代表可以在哪個CPU上運行。例如:設定5(101)代表在第一個和第三個CPU上運行。還有其他幾個相關的函數:BOOL WINAPI
Time of Update: 2018-12-03
2013/8/8 0:30:44怎麼確定本機到另外一台機器中路由器的個數:使用ping命令中的TTL大概可以判斷,一般TTL預設值是64,128,每經過一個路由器減1,比如ping www.baidu.com大概經過的路由器為:64-52 = 12使用tracert命令可以擷取經過的路由器。tracert的命令使用如下:我們可以使用tracert -d www.baidu.com (這樣不將地址轉換成主機名稱,可以縮短時間)可以看出,ping中大概得出的結果跟真實的相差不幾,可以粗略的判斷。
Time of Update: 2018-12-03
包容:假定我們已經實現了一個COM對象,不妨稱它為對象A,它實現了介面ISomeInterface,之後,考慮到新的需要,我們要實現一個新的COM對象,稱它為B,它既要實現介面ISomeInterface,也要實現介面IOtherInterface,而且,ISomeInterface介面所提供的服務與對象A所提供的服務基本一致,於是,我們考慮在實現對象B的過程中重用對象A的功能,只需要實現新添加的功能就可以完成對象B的開發工作。最簡單的想法就是在實現對象B的介面ISomeInterface時調用
Time of Update: 2018-12-03
/usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.pyc, but
Time of Update: 2018-12-03
一個簡單的通過OLE來訪問粘貼板的例子: WINOLEAPI OleGetClipboard(IDataObject ** ppDataObj); 這個簡單的Windows API調用用來返回一個IDataObject,它提供用來一個乾淨地訪問WINDOWS粘貼板內容的好介面。注意,我們在本例中不需要實現IDataObject 介面,我們僅僅需要知道介面怎麼樣工作的,一個簡單的訪問粘貼板內容的程式如下: #include <Windows.h>#include
Time of Update: 2018-12-03
http://club.cqvip.com/showtopic-666157-6.aspx從文章中摘出來一些,然後自己整理了一下。GLib 實現了一個功能強大的事件迴圈分發處理機制,GLib 內部實現了三種類型的事件來源,分別是 Timeout, Idle, Child Watch。同時也支援建立自訂的事件來源——也就是添加child watch李先靜老師的FTK就是仿照glib的事件來源來實現的1. Timeout事件來源//mainloop1.c#include<glib.h>
Time of Update: 2018-12-03
1.介面的作用組件可以充應用程式中刪除並可用另外一個組件代替,只要新的組件支援同樣的介面。單個組件並不能起決定性作用,相反,用以串連組件的介面對應用程式親戚到決定性作用。使用組件來構成應用程式最大優點在於可以複用應用程式的結構。介面可以保護系統免受外界變化的影響、介面可以使得客戶用相同的方式處理不同的組件。2.COM介面的實現class IX //First Interface{public: virtual void Fx1() = 0;
Time of Update: 2018-12-03
1. 包容和彙總包容和彙總實際上是使一個組件使用另一個組件的一種技術。包容簡介 外部組件包含指向內部組件介面的指標,外部組件只是內部組件的一個客戶。外部組件也可以通過將調用轉寄給內部組件的方法重新實現內部組件所支援的某個介面,並且外部組件還可以在內部組件代碼的前面加上一些代碼以對介面進行改造。 彙總簡介
Time of Update: 2018-12-03
1. 不同的進程每一個EXE檔案都將在不同的進程中運行,而每一個進程都有其自己的進程空間。一個進程空間中的邏輯地址0X0000ABBA所對應的物理地址將不同於另外一個進程中同一邏輯地址所對應的物理地址。所以若一個進程將地址0X0000ABBA傳給另一個進程,後者訪問到的邏輯單元將不是前一個進程所希望的。同每一個EXE都有自己的進程不同,DLL將映射到連結他們的EXE檔案的進程空間中,因此DLL也被稱作進程中伺服器,而EXE則被稱作是進程外伺服器。在某些情況下,EXE也被稱作本機伺服器。
Time of Update: 2018-12-03
CoCreateInstance(....) { //....... IClassFactory *pClassFactory=NULL; CoGetClassObject(CLSID_Object, CLSCTX_INPROC_SERVER, NULL, IID_IClassFactory, (void **)&pClassFactory); pClassFactory->CreateInstance(NULL, IID_IUnknown,
Time of Update: 2018-12-03
1.
Time of Update: 2018-12-03
1. COM執行緒模式COM並沒有定義新的線程和進程模型,而是直接使用Win32線程。1.1Win32線程 典型的Win32線程具有兩種不同類型的線程:使用介面執行緒和背景工作執行緒。使用者線程是同一個或多個視窗關聯著的。這些線程具有自己的訊息迴圈,背景工作執行緒用於幕後處理。一個進程可以具有多個使用介面執行緒和多個背景工作執行緒。
Time of Update: 2018-12-03
包容和彙總是COM的兩種重用模型,它們的思路基本一致,只是在實現方法上有所不同,下面簡要總結一下實現方法:1.包容:
Time of Update: 2018-12-03
主要使用IWebBrowser介面。具體可參考如下博文:http://blog.csdn.net/shanhe/article/details/397373代碼如下:#include <Windows.h>#include <ExDisp.h>#include <assert.h>#include <iostream>using namespace std;int main(){HRESULT hr;IWebBrowser2