Windows核心學習筆記(二)– IoCallDriver函數與PoCallDriver函數

      今天看書的時候看到了這兩個函數,開始還沒在意,以為是同一個,功能應該一樣。後來想想一樣的幹嘛還弄兩個呢,於是就查了一下,發現這兩個函數差別還蠻大的。首先來看這兩個函數的原型:NTSTATUS IoCallDriver( IN PDEVICE_OBJECT DeviceObject, IN OUT PIRP Irp );NTSTATUS PoCallDriver( IN PDEVICE_OBJECT DeviceObject, IN OUT

Windows CE嵌入式導航系統研究(硬體設計3)

1.1 Flash 介面電路設計Flash 儲存空間是一種在系統上(In-System)進行電擦寫,掉電後資訊不丟失的儲存空間。它具有低功耗、大容量、擦寫速度快、可整片或分扇區在系統編程、擦除等特點。並且由內部嵌入式的演算法完成對晶片的操作,因而在各種嵌入式系統中得到了廣泛的應用。現在市場上兩種主要的非易失快閃記憶體技術是 NOR 和NAND。NOR 的特點是晶片內執行,這樣應用程式可以直接在 Flash 內運行,不必再把代碼讀到系統 RAM 中。NOR 的傳輸效率很高,在 1~4MB

Windows核心學習筆記(一)–淺談驅動對象、裝置對象與請求

      最近在學習Windows核心編程,同時也接觸到了一些驅動的概念,其中有一些概念讓人比較容易混淆,所以就寫了這篇文章發表一下自己的看法:      首先,談談驅動對象(DRIVER_OBJECT),可以說驅動對象代表的是一個驅動程式(或者叫核心模組)。在寫核心程式時,必須要填寫這樣一種結構,來告訴Windows程式提供的功能。核心程式並不產生進程,它們有系統的System進程載入,可以存在於任何的進程。     

Windows核心學習筆記(五)– 詳解CTL_CODE宏

我們在說DeviceIoControl函數時其第二個參數dwIoControlCode就是由CTL_CODE宏定義的,下邊我們可以瞭解一下CTL_CODE的內容。 CTL_CODE:用於建立一個唯一的32位系統I/O控制碼,這個控制碼包括4部分組成:DeviceType(裝置類型,高16位(16-31位)),Access(訪問限制,14-15位),Function(功能2-13位),Method(I/O訪問記憶體使用量方式)。This macro creates a unique

Windows核心學習筆記(四)– 編寫程式手動載入驅動程式

#include <windows.h>#include <winsvc.h>#include <conio.h>#include <stdio.h>#define DRIVER_NAME "HelloDriver"#define DRIVER_PATH "..//MyDriver//HelloDriver.sys"//裝載NT驅動程式BOOL LoadNTDriver(char* lpszDriverName,char*

Windows CE 6.0 啟動過程分析

在理順了上述檔案的相互之間的關係之後,再來分析Windows CE 6.0的啟動過程可能就比較容易啦。      1、Startup函數:      從Windows CE 6.0的協助文檔可以看出,WinCE6.0的啟動只與oal.exe和kernel.dll有關,至於kitl.dll,只有將作業系統編譯成具有 KITL功能時才用到。分析Windows CE

Windows CE嵌入式導航系統研究(總結)

       當前,以具有無線通訊功能的個人數位助理 PDA、手持個人電腦 HPC、互動式網路資訊家電、車載多媒體系統為代表的新一輪智能型 3C(Computer、Communication、Consumer)合一的類 PC 嵌入式系統與技術進入了一個嶄新的智能化、網路化的發展階段,類 PC

Windows CE嵌入式導航系統研究(硬體平台的選擇)

1.1.1 硬體平台的選擇嵌入式系統的核心組件是各種類型的嵌入式處理器。據不完全統計,目前全世界嵌入式處理器的品種總量已經超過1000多種,流行體繫結構有30幾個系列。但與全球PC市場不同的是,沒有一種微處理器和微處理器公司可以主導嵌入式系統,僅以32位的CPU而言,就有100種以上嵌入式微處理器。由於嵌入式系統設計的差異性極大,因此選擇是多樣化的。調查上市的CPU供應商,有些公司如Motorola、Intel、AMD很有名氣,而有一些小的公司,如QED(Santa

在Windows CE增加自訂中斷處理

在Windows CE增加自訂中斷處理基於S3C2410,Windows CE4.2,BSP是smdk2410。WinCE的中斷處理是三個映射關係:ISQ --> Interrupt ID(邏輯中斷號)  -->

Windows IRP處理的“標準模型”

粒子物理學裡有關於宇宙的“標準模型”,WDM也是這樣。圖5-5顯示了一個典型的IRP在各個處理階段的所有權流程。並不是每種IRP都經過這些步驟,由於裝置類型和IRP種類的不同某些步驟會改變或根本不存在。儘管這個過程可能有各種變化形式,但這個圖為我們將要展開的討論提供了一個很好的起點。比你想象的更複雜...當你第一次遇到IRP處理標準模型這個概念時,你也許認為這是個比較複雜的概念。但不幸的是,這個概念還不能滿足所有問題,比如熱拔插裝置、動態資源再分配,和電源管理等等。在後面的章節中,我將描述處理這

Windows CE嵌入式導航系統研究(硬體設計1)

1.1 ARM微處理器的選擇1.1.1 ARM微處理器系列ARM 微處理器目前包括下面幾個系列,其它廠商基於ARM 架構的處理器,除了具有ARM 架構的共同特點以外,每一個系列的ARM 微處理器都有各自的特點和應用領域。l ARM7 系列l ARM9 系列l ARM9E 系列l ARM10E 系列l SecurCore 系列l Inter 的Xscalel Inter 的StrongARM其中,ARM7、ARM9、ARM9E 和ARM10E 為4

Windows CE S3C440A LED驅動編碼分析

      基於TQ2440硬體平台,該平台處理器S3C2440A,在這個平台當中存在四個LED,用於測試,顯示其他硬體運行情況等。LED驅動是一個典型的I/O驅動,簡單但健全,是學習Windows CE嵌入式平台的典型例子。首先我們來看看這個平台這這部分電路圖吧!          這四個LED分別加了1K偶的電阻,另一端接3.3V電壓,接下來看看核心板的介面。    

Windows CE S3C2440A下按鍵驅動程式編碼分析

    這些程式基於TQ2440平台,主要是實現鍵盤按鍵的運作,方便起見,只實現了上下左右四個按鍵。該部分硬體結構圖如下;         從硬體圖可以看出,按鍵串連EINT1、EINT2、EINT4和EINT0四個中斷引腳。在WindowsCE中,我們只需要處理好這四個中斷即可,如下詳細介紹;    從這幅圖中可以看出,EINT0~4的是由GPF0~4控制的,因此在驅動之前需要先配置這四個GPIO口,使其下降延觸發,如下代碼;v_pIOPregs->GPFCON  &= ~(0

Windows CE S3C2440A開機啟動捲軸編碼分析

    和Windows XP一樣,Windows CE任然可以繪製美妙的進度條,其實這個操作過程主要是對螢幕緩衝進行操作。在S3C2440 CPU

用WMI實現Windows系統自動管理

  與以前的作業系統相比,Windows 2K/XP的優點之一是具有更好的可管理性。例如它支援Windows 2000伺服器終端服務下的遠端管理模式,支援Microsoft管理主控台(MMC),再有一個就是支援WMI。WMI是Windows Management Instrumentation的縮寫,即Windows管理規範。WMI有許多用途,其中之一就是通過指令碼編程實現管理自動化。  一、為什麼要用指令碼?  回顧九十年代,Windows

Windows 作業系統分頁檔原理

分頁檔,是指作業系統反映構建並使用虛擬記憶體的硬碟空間大小所使用的檔案。要整理分頁檔,首先將分頁檔從原先所在的磁碟機移動到其他磁碟機,然後對原來磁碟機進行整理,最後再將分頁檔移回到原磁碟機上,此時分頁檔就會存放在連續的磁碟空間中了。具體來說,在 windows作業系統下(Windows 2000/XP)pagefile.sys這個檔案,它就是系統分頁檔(也就是大家熟知的虛擬記憶體檔案),它的大小取決於開啟的程式多少和你原先設定分頁檔的最小最大值,是不斷變化的,有時可能只有幾十M,有時則達到600

Windows CE嵌入式導航系統研究(應用程式相關)

1.1.1 TCPMP多媒體播放器本系統中採用的多媒體播放器是TCPMP,TCPMP播放器播放速度很快且支援多達幾十中多媒體格式。TCPMP開源項目,同時支援Windows CE作業系統,而且提供很好的擴充性,例如需要重新編寫TCPMP介面只需重新編寫interface.plg即可。TCPMP提供全部的原始碼,移植非常方便,只需編譯後將產生的檔案拷貝到目標機器運行即可。TCPMP多媒體播放器介面非常簡潔, 5.35所示。圖 5.37

Windows CE嵌入式導航系統研究(關鍵技術)

1.1 GPS 全球定位技術GPS(Global Position System):全球定位系統,它是美國從上世紀 70 年代開始研製,曆時 20 年,耗資近 200 億美元,於 1994 年全面建成的利用導航衛星進行測時和測距,具有在海、陸、空進行全方位即時三維導航與定位能力的新一代衛星導航與定位系統。如今,GPS 已經成為當今世界上最實用,也是應用最廣泛的全球精密導航、指揮和調度系統。1.1.1 GPS 組成GPS 系統主要包括有三大組成部分,即空間星座部分、地面控制部分和使用者裝置部分[6

Windows CE嵌入式導航系統研究(硬體設計2)

1.1 嵌入式處理器 S3C2440A[17]S3C2440A是一款專用的以手持功能為主而設計的晶片,其特點有低功耗,高速的處理計算能力。為了減少系統的耗費,2440使用了如下組件:2440基於ARM920T核心的,0.13Um cmos 標準單元和儲存單元複合體,它功耗及小、簡單、穩定的設計非常適合對電源要求較高的產品上。S3C2440A採用ARM920T核心, 4.1所示ARM920T的結構圖。 圖 4.1 ARM920T 的結構框圖 S3C2440A片上整合了如下功能; l

Windows CE系統開發,BSP包中的幾個常見檔案詳解

Windows CE系統開發,BSP包中的幾個常見檔案詳解BSP介紹(Board Support Package)是介於底層硬體和上層軟體之間的底層軟體開發包,它主要功能為屏蔽硬體,提供作業系統及硬體驅動,具體功能包括:(1)      單板硬體初始化,主要是CPU的初始化,為整個軟體系統提供底層硬體支援;(2)      為作業系統提供裝置驅動程式和系統中斷服務程式;(3)      定製作業系統的功能,為軟體系統提供一個即時多任務的運行環境;(4)     

總頁數: 1345 1 .... 433 434 435 436 437 .... 1345 Go to: 前往

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。