windows系統(tǒng)
windows操作系統(tǒng)相關(guān)
摘要: 在MFC的listctrl控件中動態(tài)添加按鈕,并解決顯示刷新問題
閱讀全文
摘要: 本文為線程本地存儲TLS系列之實(shí)現(xiàn)探究。
我們在上一篇線程本地存儲TLS(Thread Local Storage)的原理和實(shí)現(xiàn)——分類和原理中曾經(jīng)說過TLS可以分為兩類:靜態(tài)TLS和動態(tài)TLS。然后又分別說明了兩者在程序?qū)崿F(xiàn)時的用法,并且還說明了windows對這兩類TLS的實(shí)現(xiàn)原理,我們本文的目的是從底層實(shí)現(xiàn)的角度深入探究,深刻理解原理。
閱讀全文
摘要: 我們知道在一個進(jìn)程中,所有線程是共享同一個地址空間的。所以,如果一個變量是全局的或者是靜態(tài)的,那么所有線程訪問的是同一份,如果某一個線程對其進(jìn)行了修改,也就會影響到其他所有的線程。不過我們可能并不希望這樣,所以更多的推薦用基于堆棧的自動變量或函數(shù)參數(shù)來訪問數(shù)據(jù),因為基于堆棧的變量總是和特定的線程相聯(lián)系的。
不過如果某些時候(比如可能是特定設(shè)計的dll),我們就是需要依賴全局變量或者靜態(tài)變量,那有沒有辦法保證在多線程程序中能訪問而不互相影響呢?答案是有的。操作系統(tǒng)幫我們提供了這個功能——TLS線程本地存儲。TLS的作用是能將數(shù)據(jù)和執(zhí)行的特定的線程聯(lián)系起來。
實(shí)現(xiàn)TLS有兩種方法:靜態(tài)TLS和動態(tài)TLS。以下我們將分別說明這兩類TLS。
閱讀全文
摘要: 本文不是描述怎樣編寫dll程序,也不是說明dll在windows系統(tǒng)的意義。我們的目的是確認(rèn)dll加載到進(jìn)程空間的一些模糊的概念。
一、程序加載dll的兩種情況:
二、從MSDN文檔來研究操作dll的API
三、關(guān)于引用計數(shù)遞減到0會導(dǎo)致模塊卸載映射的問題
閱讀全文
摘要: windows2003服務(wù)之FTP
閱讀全文
摘要: 計算機(jī)與操作系統(tǒng)啟動原理
轉(zhuǎn)載自:http://wolfhacker.blogchina.com/wolfhacker/1719979.html
閱讀全文
摘要: API HOOK的實(shí)現(xiàn)原理
閱讀全文
摘要: 截獲全局鼠標(biāo)消息研究:1、SetWindowsHookEx方法;2、SetCapture方法
閱讀全文
摘要: 關(guān)于消息隊列有兩種,一種是系統(tǒng)消息隊列,另一種是線程消息隊列。windows應(yīng)用程序的運(yùn)行需要依靠外部發(fā)生的事件來驅(qū)動。應(yīng)用程序通過輸入消息來接受輸入。操作系統(tǒng)負(fù)責(zé)監(jiān)視所有設(shè)備并將輸入消息放入一個先進(jìn)先出的隊列中,即系統(tǒng)消息隊列。接著,windows從系統(tǒng)消息隊列中去走一條消息,確定目的窗口,并將消息送入創(chuàng)建該窗口的消息隊列中。
閱讀全文