基于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),在我國(guó)以及全世界得到了迅猛的發(fā)展,被廣泛的應(yīng)用于嵌入式系統(tǒng)、服務(wù)器、網(wǎng)絡(luò)系統(tǒng)、安全等領(lǐng)域。從而使得掌握在 linux環(huán)境下的開(kāi)發(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),在我國(guó)以及全世界得到了迅猛的發(fā)展,被廣泛的應(yīng)用于嵌入式系統(tǒng)、服務(wù)器、網(wǎng)絡(luò)系統(tǒng)、安全等領(lǐng)域。從而使得掌握在 Linux環(huán)境下的開(kāi)發(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è)備的分類及編寫(xiě)驅(qū)動(dòng)程序的一些基本概念等,以及模塊的加載和卸載。介紹了AMD 79C970網(wǎng)卡驅(qū)動(dòng)程序開(kāi)發(fā)的硬件環(huán)境和軟件環(huán)境。闡述了該驅(qū)動(dòng)程序在開(kāi)發(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è)備打開(kāi)與關(guān)閉、數(shù)據(jù)的發(fā)送與接收、信息統(tǒng)計(jì)、網(wǎng)卡驅(qū)動(dòng)模塊的卸載等方面按步驟的進(jìn)行了詳細(xì)的討論。最后介紹了在驅(qū)動(dòng)程序開(kāi)發(fā)設(shè)計(jì)過(guò)程中所遇到的問(wèn)題和困難以及是如何去克服這些困難的,并提出了今后的努力方向。
關(guān)鍵詞:Linux 模塊 網(wǎng)卡設(shè)備 網(wǎng)卡驅(qū)動(dòng)程序 網(wǎng)絡(luò)棧協(xié)議
注:本設(shè)計(jì)(論文)題目來(lái)源于自擬題目。
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國(guó)內(nèi)外研究現(xiàn)狀 1
2 概述 2
2.1 Linux系統(tǒng)簡(jiǎn)介 2
2.2 Linux內(nèi)核簡(jiǎn)介 2
2.3 網(wǎng)卡簡(jiǎn)介 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 開(kāi)發(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 開(kāi)發(fā)過(guò)程分析 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打開(kāi) 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編寫(xiě)中需要注意的問(wèn)題 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中斷過(guò)程 48
5.5.2發(fā)送過(guò)程 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們正在看...
- 管理信息系統(tǒng)每章自測(cè)題.doc
- 管理信息系統(tǒng)的簡(jiǎn)答題重點(diǎn).doc
- 管理信息系統(tǒng)章節(jié)練習(xí)題.doc
- 管理信息系統(tǒng)第06章在線測(cè)試.doc
- 管理信息系統(tǒng)第六版-黃梯云-復(fù)習(xí)思考題-含補(bǔ)充題.doc
- 管理信息系統(tǒng)簡(jiǎn)答題題庫(kù).doc
- 管理信息系統(tǒng)考試重點(diǎn).doc
- 管理信息系統(tǒng)試題庫(kù)-針對(duì)黃梯云主編第三版.doc
- 管理信息系統(tǒng)重點(diǎn)整理.doc
- 管理信息系統(tǒng)黃梯云復(fù)習(xí)重點(diǎn).doc