基于linux下網(wǎng)卡驅(qū)動(dòng)分析及實(shí)現(xiàn)技術(shù)研究.rar
基于linux下網(wǎng)卡驅(qū)動(dòng)分析及實(shí)現(xiàn)技術(shù)研究,摘 要linux技術(shù)是當(dāng)前計(jì)算機(jī)技術(shù)中最大的一個(gè)熱點(diǎn),在我國以及全世界得到了迅猛的發(fā)展,被廣泛的應(yīng)用于嵌入式系統(tǒng)、服務(wù)器、網(wǎng)絡(luò)系統(tǒng)、安全等領(lǐng)域。從而使得掌握在 linux環(huán)境下的開發(fā)技術(shù),成為了計(jì)算機(jī)行業(yè)中引人注目的焦點(diǎn)。linux 作為在網(wǎng)絡(luò)中誕生的操作系統(tǒng),網(wǎng)絡(luò)設(shè)備是其不可缺少的重要組成部分。本文首先介紹了linu...
該文檔為壓縮文件,包含的文件列表如下:
內(nèi)容介紹
原文檔由會(huì)員 下天行龍 發(fā)布摘 要
Linux技術(shù)是當(dāng)前計(jì)算機(jī)技術(shù)中最大的一個(gè)熱點(diǎn),在我國以及全世界得到了迅猛的發(fā)展,被廣泛的應(yīng)用于嵌入式系統(tǒng)、服務(wù)器、網(wǎng)絡(luò)系統(tǒng)、安全等領(lǐng)域。從而使得掌握在 Linux環(huán)境下的開發(fā)技術(shù),成為了計(jì)算機(jī)行業(yè)中引人注目的焦點(diǎn)。
Linux 作為在網(wǎng)絡(luò)中誕生的操作系統(tǒng),網(wǎng)絡(luò)設(shè)備是其不可缺少的重要組成部分。本文首先介紹了Linux下設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)的基本知識(shí),其中包括對(duì)Linux的發(fā)展歷程、內(nèi)核、特性的概述,Linux設(shè)備的分類及編寫驅(qū)動(dòng)程序的一些基本概念等,以及模塊的加載和卸載。介紹了AMD 79C970網(wǎng)卡驅(qū)動(dòng)程序開發(fā)的硬件環(huán)境和軟件環(huán)境。闡述了該驅(qū)動(dòng)程序在開發(fā)時(shí)的需求分析。結(jié)合網(wǎng)卡驅(qū)動(dòng)程序?qū)inux環(huán)境下網(wǎng)卡驅(qū)動(dòng)程序的設(shè)計(jì)與實(shí)現(xiàn)作了理論上的探討,重點(diǎn)從網(wǎng)卡驅(qū)動(dòng)模塊的加載、網(wǎng)絡(luò)設(shè)備的初始化、設(shè)備打開與關(guān)閉、數(shù)據(jù)的發(fā)送與接收、信息統(tǒng)計(jì)、網(wǎng)卡驅(qū)動(dòng)模塊的卸載等方面按步驟的進(jìn)行了詳細(xì)的討論。最后介紹了在驅(qū)動(dòng)程序開發(fā)設(shè)計(jì)過程中所遇到的問題和困難以及是如何去克服這些困難的,并提出了今后的努力方向。
關(guān)鍵詞:Linux 模塊 網(wǎng)卡設(shè)備 網(wǎng)卡驅(qū)動(dòng)程序 網(wǎng)絡(luò)棧協(xié)議
注:本設(shè)計(jì)(論文)題目來源于自擬題目。
Analysis and the implementation technology research
of NIC driver based on linux
Abstract
Linux technology is a hot spot among computer technology nowadays, and it developes at high speed not only in our country but also in the whole world, and it has applied widely in embedded system, server, network system, security area and so on. So it makes that grasping the development technology under the Linux environment is more and more noticeable in computer industry.
As the operating system,linux was born in the network , and the network equipment is the indispensable important component .This thesis firstly introduces the fundamental knowledge about design of linux device driver, which generally includes the development procedure, kernel, and characteristic of linux. Meanwhile, the categorization of linux device, elemental terminology of exploiting network interface card driver, and loading and unloading the driver module are also mentioned in this thesis. This thesis also presents both the hardware and software environment of the driver development, and the requirement specification of driver development are elaborated here. Combined with the driver of AMD 79C970 chip, this thesis discusses the design and realization of the network interface card driver in theory, especially makes more detailed discussions step by step, such as loading the driver module, initialization of the device, starting and stopping of the device, transmission and receiving of data, information statistics, unloading the driver module, etc. Finally, this thesis lists all the problems and difficulties met during the whole process of designing driver, and how to conquer them and advanced direction of future study are also recounted.
Keywords: linux module, NIC,NIC Driver,Network stack protocol
目 錄
1 緒論 1
1.1選題背景及意義 1
1.2國內(nèi)外研究現(xiàn)狀 1
2 概述 2
2.1 Linux系統(tǒng)簡介 2
2.2 Linux內(nèi)核簡介 2
2.3 網(wǎng)卡簡介 4
2.4 Linux網(wǎng)絡(luò)棧協(xié)議 4
2.4.1 網(wǎng)絡(luò)棧的 Internet 模型 4
2.4.2 Linux 高級(jí)網(wǎng)絡(luò)棧架構(gòu) 5
2.5 Linux 設(shè)備驅(qū)動(dòng)程序 8
2.6 Linux網(wǎng)絡(luò)驅(qū)動(dòng)程序 8
2.7 基本概念 9
2.7.1 設(shè)備文件 9
2.7.2 Linux硬件驅(qū)動(dòng)架構(gòu) 10
2.7.3 發(fā)送和接收 10
2.7.4 中斷 11
2.7.5 時(shí)鐘 11
2.8 開發(fā)環(huán)境 11
2.9 調(diào)試環(huán)境 11
3 程序分析 12
3.1 可行性分析 12
3.1.1 技術(shù)可行性 12
3.1.2 經(jīng)濟(jì)可行性 12
3.2 需求分析 12
3.3 開發(fā)過程分析 13
4 程序設(shè)計(jì) 14
4.1模塊設(shè)計(jì) 14
4.2基本數(shù)據(jù)結(jié)構(gòu) 15
4.2.1數(shù)據(jù)包結(jié)構(gòu) 15
4.2.2數(shù)據(jù)包操作函數(shù) 20
4.2.3其他關(guān)鍵數(shù)據(jù)結(jié)構(gòu) 21
4.3網(wǎng)絡(luò)驅(qū)動(dòng)程序的基本方法 28
4.3.1初始化設(shè)置 30
4.3.2打開 31
4.3.3關(guān)閉 32
4.3.4數(shù)據(jù)包傳輸 32
4.3.5接收 33
4.3.6硬件幀頭 34
4.3.7參數(shù)設(shè)置和數(shù)據(jù)統(tǒng)計(jì) 35
4.4編寫中需要注意的問題 35
4.4.1中斷共享 35
4.4.2硬件發(fā)送忙時(shí)處理 36
4.4.3流量控制 36
4.4.4模塊化和非模塊化設(shè)計(jì) 37
5 程序?qū)崿F(xiàn) 38
5.1初始化策略 38
5.2函數(shù)調(diào)用關(guān)系 39
5.3核心啟動(dòng)初始化具體流程 40
5.4網(wǎng)卡設(shè)備的初始化 44
5.5網(wǎng)卡數(shù)據(jù)發(fā)送的基本流程 48
5.5.1中斷過程 48
5.5.2發(fā)送過程 49
5.5.3數(shù)據(jù)報(bào)在鏈路層的發(fā)送 50
5.6網(wǎng)卡數(shù)據(jù)接收的基本流程 51
5.6.1數(shù)據(jù)報(bào)在鏈路層的接收 53
6 程序測(cè)試 55
6.1 驅(qū)動(dòng)程序編譯與生成 55
6.2 驅(qū)動(dòng)程序信息 55
6.3 驅(qū)動(dòng)安裝與初始化 55
6.4 網(wǎng)絡(luò)基本功能測(cè)試步驟 56
6.5 數(shù)據(jù)報(bào)協(xié)議解析 57
6.6 驅(qū)動(dòng)程序統(tǒng)計(jì)信息 58
7 結(jié)論 60
參考文獻(xiàn) 61
致 謝 62
TA們正在看...
- 2005年江蘇南京藝術(shù)學(xué)院藝術(shù)概論考研真題.doc
- 2005年江蘇南京藝術(shù)學(xué)院裝飾設(shè)計(jì)藝術(shù)考研真題.doc
- 2005年江蘇南京藝術(shù)學(xué)院設(shè)計(jì)原理考研真題.doc
- 2005年江蘇南京藝術(shù)學(xué)院陶瓷設(shè)計(jì)藝術(shù)考研真題.doc
- 2005年江蘇南京財(cái)經(jīng)大學(xué)專業(yè)基礎(chǔ)課考研真題.doc
- 2005年江蘇南京財(cái)經(jīng)大學(xué)產(chǎn)業(yè)經(jīng)濟(jì)學(xué)專業(yè)基礎(chǔ)課考研...doc
- 2005年江蘇南京財(cái)經(jīng)大學(xué)企業(yè)管理考研真題.doc
- 2005年江蘇南京財(cái)經(jīng)大學(xué)會(huì)計(jì)學(xué)考研真題.doc
- 2005年江蘇大學(xué)會(huì)計(jì)學(xué)考研真題.doc
- 2005年江蘇大學(xué)管理學(xué)原理考研真題.doc