基于arm的網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)_第1頁
已閱讀1頁,還剩35頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  大連海事大學(xué)</b></p><p><b>  畢 業(yè) 論 文</b></p><p><b>  二○一四年六月</b></p><p>  基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)</p><p>  專業(yè)班級(jí):電子信息工程3班</p>&l

2、t;p>  姓 名: 張全明 </p><p>  指導(dǎo)教師: 李作洲 </p><p><b>  信息科學(xué)技術(shù)學(xué)院</b></p><p><b>  摘 要</b></p><p>  隨著信息技術(shù)的不斷發(fā)展,數(shù)據(jù)庫應(yīng)用的領(lǐng)域越來越多,數(shù)據(jù)庫技

3、術(shù)目前是計(jì)算機(jī)處理與存儲(chǔ)數(shù)據(jù)的最有效,最成功的技術(shù)。數(shù)據(jù)和資源共享這兩種技術(shù)結(jié)合在一起即成為在今天廣泛應(yīng)用的網(wǎng)絡(luò)數(shù)據(jù)庫(也叫WEB數(shù)據(jù)庫)。它是以后臺(tái)數(shù)據(jù)庫為基礎(chǔ),加上一定的前臺(tái)程序,通過瀏覽器或客戶端完成數(shù)據(jù)存儲(chǔ)、查詢等操作的系統(tǒng)。</p><p>  本課題的目的是設(shè)計(jì)并實(shí)現(xiàn)一種基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫,通過軟鍵盤來輸入數(shù)據(jù),通過聯(lián)網(wǎng)與服務(wù)器進(jìn)行連接,并完成數(shù)據(jù)的查詢。PC機(jī)作為服務(wù)器端;客戶端硬件主要采用友善

4、之臂的Tiny6410開發(fā)板,外接觸摸屏。本系統(tǒng)的軟件部分由服務(wù)器和客戶端組成,采用Qt開發(fā)用戶圖形界面。服務(wù)器端使用SQLite數(shù)據(jù)庫存放數(shù)據(jù),并在Qt下實(shí)現(xiàn)了對(duì)數(shù)據(jù)庫的連接和使用??蛻舳瞬捎肔inux操作系統(tǒng),移植了無線網(wǎng)卡的驅(qū)動(dòng),完成對(duì)無線網(wǎng)卡的控制和使用,實(shí)現(xiàn)無線網(wǎng)絡(luò)的連接。客戶端的界面主要包括歡迎界面、用戶登錄界面。</p><p>  論文依據(jù)嵌入式系統(tǒng)的開發(fā)流程,著重介紹了Qt編程、SQLite數(shù)據(jù)

5、庫的設(shè)計(jì)、嵌入式Linux的設(shè)置操作等。設(shè)計(jì)以學(xué)生信息查詢系統(tǒng)為例,通過運(yùn)行本系統(tǒng),實(shí)現(xiàn)了在ARM終端上對(duì)存放于遠(yuǎn)程服務(wù)器中的學(xué)生信息的查詢,并通過聯(lián)網(wǎng)將查詢結(jié)果傳輸?shù)紸RM終端。通過本系統(tǒng)查詢到的信息可進(jìn)一步應(yīng)用到其他系統(tǒng)中,為更復(fù)雜的嵌入式系統(tǒng)設(shè)計(jì)打下基礎(chǔ)。</p><p>  關(guān)鍵詞:網(wǎng)絡(luò)數(shù)據(jù)庫; 嵌入式;SQLite;Linux;Qt</p><p><b>  ABST

6、RACT</b></p><p>  With the continuous development of information technology, more and more areas begin to apply database. Database technology is currently the most effective and the most successful tec

7、hniques in the fields of computer processing and storage of data. The combination of these two technologies of sharing of data and resources becomes widely used in current network database (also called WEB database). It

8、is based on the background database, together with a foreground program, and then users can store</p><p>  This project is to design and implement a WEB database based ARM. Entering data through the soft key

9、board, users can connect with the server and perform query data. PC acts as a server and FriendlyARM Tiny6410 development board with external touch screen as a client. The software part of the system consists of server a

10、nd client components. It uses Qt graphical user interface to develop and SQLite database to store data. Then we can connect to database and operate it in Qt. The client runs the Li</p><p>  According to the

11、embedded systems developing process, this thesis consider Qt programming, SQLite databases designing and Embedded Linux operating settings. Taking the student information system for example, users operate on the ARM ter

12、minal and gain the student information that stored in a remote server. This information is transferred to the ARM terminal via network. The information can be further applied to other systems and lay the foundation for m

13、ore complex embedded system designs.</p><p>  Keywords: Web Database, Embedded, SQLite, Linux, Qt</p><p><b>  目 錄</b></p><p><b>  第1章 緒論1</b></p>

14、<p>  1.1 課題背景及意義1</p><p>  1.2 研究現(xiàn)狀及發(fā)展趨勢(shì)2</p><p>  1.3論文研究內(nèi)容及章節(jié)安排2</p><p>  1.4 本章小結(jié)3</p><p>  第2章 網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的方案設(shè)計(jì)4</p><p>  2.1 方案的總體設(shè)計(jì)4</p&g

15、t;<p>  2.2 網(wǎng)絡(luò)環(huán)境的選擇4</p><p>  2.3 用戶圖形界面6</p><p>  2.4 嵌入式數(shù)據(jù)庫8</p><p>  2.5 本章小結(jié)9</p><p>  第3章 網(wǎng)絡(luò)數(shù)據(jù)庫終端的開發(fā)環(huán)境的搭建10</p><p>  3.1 終端的硬件環(huán)境10</p

16、><p>  3.1.1 ARM處理器10</p><p>  3.1.2 Tiny6410 開發(fā)板11</p><p>  3.2 嵌入式操作系統(tǒng)及其安裝11</p><p>  3.2.1 嵌入式操作系統(tǒng)的選型11</p><p>  3.2.2 Linux 的開發(fā)環(huán)境的建立12</p><

17、;p>  3.3 軟件開發(fā)環(huán)境的搭建13</p><p>  3.3.1 共享文件夾的配置13</p><p>  3.3.2 交叉編譯工具13</p><p>  3.3.3 Qt4.7 的安裝14</p><p>  3.4 本章小結(jié)15</p><p>  第4章 開發(fā)板上的系統(tǒng)平臺(tái)的實(shí)現(xiàn)16

18、</p><p>  4.1 Bootloader16</p><p>  4.1.1 Bootloader 及啟動(dòng)流程16</p><p>  4.1.2 u-boot 及其編譯16</p><p>  4.2 Linux 內(nèi)核17</p><p>  4.2.1 內(nèi)核的版本17</p>&

19、lt;p>  4.2.2 內(nèi)核模塊結(jié)構(gòu)17</p><p>  4.2.3 內(nèi)核的配置17</p><p>  4.3 文件系統(tǒng)18</p><p>  4.4 開發(fā)板上安裝配置Qt4.718</p><p>  4.5 本章小結(jié)19</p><p>  第5章 基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)功能的實(shí)現(xiàn)

20、20</p><p>  5.1 系統(tǒng)方案的設(shè)計(jì)20</p><p>  5.1.1 服務(wù)器端的設(shè)計(jì)方案20</p><p>  5.1.2 客戶端的設(shè)計(jì)方案20</p><p>  5.2 服務(wù)器端數(shù)據(jù)庫的實(shí)現(xiàn)21</p><p>  5.2.1 數(shù)據(jù)庫的建立21</p><p>

21、  5.2.2 數(shù)據(jù)庫的使用21</p><p>  5.3 數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn)22</p><p>  5.3.1 網(wǎng)絡(luò)環(huán)境的構(gòu)建22</p><p>  5.3.2 網(wǎng)絡(luò)傳輸模式及協(xié)議22</p><p>  5.3.3 應(yīng)用程序的實(shí)現(xiàn)22</p><p>  5.4 客戶端各子界面的實(shí)現(xiàn)24</p&

22、gt;<p>  5.4.1 歡迎界面的實(shí)現(xiàn)24</p><p>  5.4.2 用戶登錄界面的實(shí)現(xiàn)25</p><p>  5.5 測試與結(jié)果26</p><p>  5.6 本章小結(jié)27</p><p><b>  結(jié) 論28</b></p><p><b&

23、gt;  參考文獻(xiàn)29</b></p><p><b>  致 謝30</b></p><p>  基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)</p><p><b>  第1章 緒論</b></p><p>  1.1 課題背景及意義</p><p>  隨著科技的

24、進(jìn)步,數(shù)據(jù)庫應(yīng)用的領(lǐng)域越來越多,它開始在社會(huì)的各個(gè)方面幫人們存貯和管理數(shù)據(jù),發(fā)揮著不可替代的作用。在這個(gè)信息交流和數(shù)據(jù)共享需求如此強(qiáng)大的社會(huì),數(shù)據(jù)庫自然也是離不開網(wǎng)絡(luò)二字,網(wǎng)絡(luò)數(shù)據(jù)庫是指把數(shù)據(jù)庫技術(shù)引入到計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中,借助于網(wǎng)絡(luò)技術(shù)將存儲(chǔ)于數(shù)據(jù)庫中的大量信息及時(shí)發(fā)布出去;而計(jì)算機(jī)網(wǎng)絡(luò)借助于成熟的數(shù)據(jù)庫技術(shù)對(duì)網(wǎng)絡(luò)中的各種數(shù)據(jù)進(jìn)行有效管理,并實(shí)現(xiàn)用戶與網(wǎng)絡(luò)中的數(shù)據(jù)庫進(jìn)行實(shí)時(shí)動(dòng)態(tài)數(shù)據(jù)交互。</p><p>  網(wǎng)絡(luò)

25、數(shù)據(jù)庫目前在Intemet中有大量的應(yīng)用,從最初的網(wǎng)站留言簿、自由論壇等到今天的遠(yuǎn)程教育和復(fù)雜的電子商務(wù)等,這些系統(tǒng)幾乎都是采用網(wǎng)絡(luò)數(shù)據(jù)庫這種方式來實(shí)現(xiàn)的。網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的組成元素為:客戶端、服務(wù)器端、連接客戶端及服務(wù)器端的網(wǎng)絡(luò)。這些元素是網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)。</p><p>  使用網(wǎng)絡(luò)數(shù)據(jù)庫的最大優(yōu)勢(shì)是用戶無需在自己的客戶端安裝任何與所需存取或操作數(shù)據(jù)庫系統(tǒng)對(duì)應(yīng)的客戶端軟件,只需要通過Web瀏覽器便可完成對(duì)

26、數(shù)據(jù)庫數(shù)據(jù)的常用操作。這種方式的優(yōu)點(diǎn)是用戶不必再去學(xué)習(xí)復(fù)雜的數(shù)據(jù)庫知識(shí)和數(shù)據(jù)庫軟件的使用,只需要掌握基本的網(wǎng)絡(luò)操作,如填寫、提交表單等就可以從任何一臺(tái)連接Internet的計(jì)算機(jī)上來訪問數(shù)據(jù)庫。</p><p>  隨著WiFi(Wireless Fidelity)網(wǎng)絡(luò)環(huán)境的迅速發(fā)展,許多公共場所都布置了WiFi無線局域網(wǎng),使人們可以隨時(shí)隨地連接到網(wǎng)絡(luò)。這種通過點(diǎn)對(duì)點(diǎn)的方式直接連接并進(jìn)行使用的方式,給人們帶來了便

27、利操作體驗(yàn)。WiFi在給人們帶來方便的同時(shí),已經(jīng)逐步成為主流網(wǎng)絡(luò)渠道。人們?cè)谙硎軣o線通道帶來的便利上網(wǎng)方式的同時(shí),對(duì)擁有WiFi功能的IT產(chǎn)品的需求越來越多。無線連接作為一種更簡潔的網(wǎng)絡(luò)連接方式,其應(yīng)用必將越來越廣泛。在本設(shè)計(jì)中我們希望選擇這種更新,更有誘惑力的網(wǎng)絡(luò)連接方式來連接網(wǎng)絡(luò)。</p><p>  考慮到手機(jī)等小型電子產(chǎn)品的普及及日益強(qiáng)大,網(wǎng)絡(luò)數(shù)據(jù)庫的應(yīng)用也必將在此領(lǐng)域一展宏圖,因此想到設(shè)計(jì)一個(gè)基于ARM

28、的網(wǎng)絡(luò)數(shù)據(jù)庫,在手持設(shè)備日益瘋狂的時(shí)代,我想這應(yīng)該是非常有意義的。</p><p>  本課題的目的是設(shè)計(jì)并實(shí)現(xiàn)一種基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫[1],通過軟鍵盤來輸入數(shù)據(jù),通過WiFi可以接入無線局域網(wǎng),與服務(wù)器進(jìn)行連接,并完成數(shù)據(jù)的查詢。</p><p>  1.2 研究現(xiàn)狀及發(fā)展趨勢(shì)</p><p>  由于企業(yè)信息化的目的就是要以現(xiàn)代信息技術(shù)為手段,對(duì)伴隨著企業(yè)生

29、產(chǎn)和經(jīng)營過程而產(chǎn)生的數(shù)據(jù)進(jìn)行收集、加工、管理和利用,以改善企業(yè)生產(chǎn)經(jīng)營的整體效率,增強(qiáng)企業(yè)的競爭力。所以,數(shù)據(jù)庫是企業(yè)信息化不可缺少的工具,是絕大部分企業(yè)信息系統(tǒng)的核心。</p><p>  數(shù)據(jù)、計(jì)算機(jī)硬件和數(shù)據(jù)庫應(yīng)用,這三者推動(dòng)著數(shù)據(jù)庫技術(shù)與系統(tǒng)的發(fā)展。數(shù)據(jù)庫要管理的數(shù)據(jù)的復(fù)雜度和數(shù)據(jù)量都在迅速增長;計(jì)算機(jī)硬件平臺(tái)的發(fā)展仍然實(shí)踐著摩爾定律;數(shù)據(jù)庫應(yīng)用迅速向深度、廣度擴(kuò)展。尤其是互聯(lián)網(wǎng)的出現(xiàn),極大地改變了數(shù)據(jù)庫

30、的應(yīng)用環(huán)境,向數(shù)據(jù)庫領(lǐng)域提出了前所未有的技術(shù)挑戰(zhàn)。這些因素的變化推動(dòng)著數(shù)據(jù)庫技術(shù)的進(jìn)步,出現(xiàn)了一批新的數(shù)據(jù)庫技術(shù),如Web數(shù)據(jù)庫技術(shù)、并行數(shù)據(jù)庫技術(shù)、數(shù)據(jù)倉庫與聯(lián)機(jī)分析技術(shù)、數(shù)據(jù)挖掘與商務(wù)智能技術(shù)、內(nèi)容管理技術(shù)、海量數(shù)據(jù)管理技術(shù)等。</p><p>  在手持設(shè)備發(fā)展迅猛的時(shí)代,在wifi技術(shù)慢慢進(jìn)入日常生活的時(shí)代,在數(shù)據(jù)庫開始成為人們辦公作業(yè)必不可少的工具的時(shí)代,我們有理由相信著三者的結(jié)合必將給我們帶來不同的享

31、受和體驗(yàn)。</p><p>  1.3論文研究內(nèi)容及章節(jié)安排</p><p>  本設(shè)計(jì)的主要研究內(nèi)容有:</p><p>  搜集相應(yīng)背景,基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的實(shí)現(xiàn)方案的設(shè)計(jì)及選型。</p><p>  嵌入式無線連接終端硬件的構(gòu)成及軟件開發(fā)環(huán)境的搭建。</p><p>  外圍設(shè)備的驅(qū)動(dòng)加載及其使用。<

32、;/p><p>  (4) 用戶圖形界面的實(shí)現(xiàn),包括PC機(jī)上運(yùn)行的服務(wù)器端的界面和ARM開發(fā)板上運(yùn)行的客戶端界面。</p><p> ?。?) 數(shù)據(jù)庫的搭建。</p><p>  本文的章節(jié)安排內(nèi)容如下:</p><p>  第1章 緒論。主要介紹了網(wǎng)絡(luò)數(shù)據(jù)庫的研究背景和意義,研究現(xiàn)狀及發(fā)展趨勢(shì)。</p><p>  第2

33、章 網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)及其選型。根據(jù)本系統(tǒng)的總體架構(gòu)的設(shè)計(jì),從無線網(wǎng)絡(luò),用戶界面及嵌入式數(shù)據(jù)庫三個(gè)方面,完成了設(shè)計(jì)總體方案的選型。</p><p>  第3章 嵌入式終端開發(fā)環(huán)境的搭建,硬件方面介紹了ARM處理器的特性及Tiny6410開發(fā)板的接口和主要功能。系統(tǒng)方面介紹了Linux系統(tǒng)的特性及其安裝,并建立了軟件開發(fā)環(huán)境。軟件開發(fā)環(huán)境包括:共享文件夾的安裝與設(shè)置,交叉編譯工具的安裝,Qt4.7 的安裝[2]。<

34、;/p><p>  第4章 終端上系統(tǒng)平臺(tái)的設(shè)計(jì)。從u-boot、內(nèi)核、文件系統(tǒng)及Qt4.7 的安裝及配置這四個(gè)方面完成終端的嵌入式平臺(tái)的搭建,為應(yīng)用程序的運(yùn)行提供基礎(chǔ)[2]。</p><p>  第5章 基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)功能的實(shí)現(xiàn)。整體上介紹了本系統(tǒng)的服務(wù)器和客戶端的具體實(shí)現(xiàn)方案,并給出系統(tǒng)調(diào)試結(jié)果。按照應(yīng)用程序的功能,分四個(gè)部分介紹具體的實(shí)現(xiàn)方法。四個(gè)部分為:服務(wù)器端數(shù)據(jù)庫的建立

35、、連接及使用,服務(wù)器與客戶端間數(shù)據(jù)的雙向傳輸,客戶端的打印功能及客戶端各子界面的實(shí)現(xiàn)。客戶端的子界面包括:歡迎界面,登錄界面,修改密碼界面。</p><p><b>  1.4 本章小結(jié)</b></p><p>  本章主要介紹了本課題研究的背景和意義以及他的研究現(xiàn)狀和發(fā)展趨勢(shì),然后對(duì)本文的研究內(nèi)容和章節(jié)安排做了簡要的闡述。</p><p> 

36、 第2章 網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的方案設(shè)計(jì)</p><p>  2.1 方案的總體設(shè)計(jì)</p><p>  基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫是指通過網(wǎng)絡(luò)連接的方式與網(wǎng)絡(luò)中的計(jì)算機(jī)進(jìn)行數(shù)據(jù)交換,實(shí)現(xiàn)信息的查詢機(jī)更新。</p><p><b>  網(wǎng)絡(luò)</b></p><p>  圖2.1 基于ARM的網(wǎng)絡(luò)數(shù)據(jù)庫的總體結(jié)構(gòu)設(shè)計(jì)圖</p&

37、gt;<p>  總體設(shè)計(jì)方案的架構(gòu)如上圖2.1所示,網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)圖采用的是服務(wù)器/客戶端的結(jié)構(gòu),在無線網(wǎng)絡(luò)中實(shí)現(xiàn)服務(wù)器端與客戶端的數(shù)據(jù)交互。服務(wù)器采用PC機(jī),存放數(shù)據(jù),方便數(shù)據(jù)的查詢與更新。客戶端采用S3C6410處理器并使用操作系統(tǒng),通過無線網(wǎng)卡接入網(wǎng)絡(luò)并與網(wǎng)絡(luò)中的其它計(jì)算機(jī)(服務(wù)器)進(jìn)行數(shù)據(jù)的交換。</p><p>  為了方便使用,在客戶端和服務(wù)器端,開發(fā)了用戶界面,也便于查看客戶端和服務(wù)

38、器端之間的數(shù)據(jù)交互。通過觸摸屏上的軟鍵盤輸入用戶登錄信息,客戶端把信息發(fā)送到服務(wù)器端,服務(wù)器根據(jù)接收到的信息在數(shù)據(jù)庫中進(jìn)行操作。服務(wù)器端把操作結(jié)果的信息發(fā)送給客戶端??蛻舳烁鶕?jù)接受到的信息,顯示相應(yīng)的內(nèi)容,并從打印機(jī)輸出所需的內(nèi)容。</p><p>  為了方便數(shù)據(jù)的管理,本系統(tǒng)的數(shù)據(jù)存儲(chǔ)在服務(wù)器端。PC機(jī)采用數(shù)據(jù)庫對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),這樣就可以實(shí)現(xiàn)數(shù)據(jù)的共享及對(duì)其的集中控制、確保數(shù)據(jù)的一致性、增強(qiáng)數(shù)據(jù)的可維護(hù)性[3

39、]。</p><p>  2.2 網(wǎng)絡(luò)環(huán)境的選擇</p><p>  由于在本設(shè)計(jì)中需要用到網(wǎng)絡(luò)連接,網(wǎng)絡(luò)連接可以選擇有線網(wǎng)絡(luò)和無線網(wǎng)絡(luò),那么有線網(wǎng)絡(luò)和無線網(wǎng)絡(luò)都有哪些優(yōu)點(diǎn)和缺點(diǎn)呢。下面我們先比較一下這兩種網(wǎng)絡(luò)的優(yōu)點(diǎn)和缺點(diǎn),以便能夠更好地選擇,做到事半功倍。</p><p>  (1)穩(wěn)定性:有線網(wǎng)絡(luò)有一個(gè)最大的優(yōu)點(diǎn)是目前的無線網(wǎng)絡(luò)所無法比擬的,這就是快且穩(wěn)定。就我

40、國的網(wǎng)絡(luò)環(huán)境來說,由于房屋基本都是鋼筋混凝土結(jié)構(gòu),并且格局復(fù)雜多樣,環(huán)境對(duì)無線信號(hào)的衰減嚴(yán)重,因而無線網(wǎng)絡(luò)的不穩(wěn)定性是不可避免的。對(duì)于一個(gè)網(wǎng)絡(luò)來說,無論是企業(yè)網(wǎng)絡(luò)還是家庭網(wǎng)絡(luò),穩(wěn)定性是最重要的,因?yàn)闀r(shí)斷時(shí)續(xù)的網(wǎng)絡(luò),是沒有人可以忍受的。當(dāng)然,也并不是說,無線網(wǎng)絡(luò)的穩(wěn)定性一點(diǎn)保障都沒有,只是有線網(wǎng)絡(luò)勝它一籌而已。</p><p> ?。?)速度:根據(jù)相關(guān)資料顯示,有線網(wǎng)絡(luò)的傳輸速率較快,而且也比較穩(wěn)定,一般為100M

41、、1000M,而無線的速率相對(duì)來說就稍微慢一些,衰減現(xiàn)象還比較嚴(yán)重,一般為11M、54M、108M。由此可見,有線技術(shù)在速度上提供了目前無線技術(shù)所不能支持的專用的網(wǎng)絡(luò)帶寬,尤其是對(duì)于那些數(shù)據(jù)密集型的應(yīng)用或者是大量數(shù)據(jù)的同時(shí)傳輸來說,無線網(wǎng)絡(luò)的表現(xiàn)與有線網(wǎng)絡(luò)相比起來確實(shí)是有點(diǎn)遜色。雖然說一般的家庭用戶對(duì)網(wǎng)絡(luò)速度的要求不會(huì)太苛刻,然而,更快更爽的網(wǎng)上沖浪是每一位網(wǎng)絡(luò)用戶的想要的,從這個(gè)角度上來看,孰優(yōu)孰次就有自有分曉了。</p>

42、<p>  (3)安全性:家庭網(wǎng)絡(luò)組網(wǎng)的一個(gè)重要問題就是網(wǎng)絡(luò)安全的保障,特別是當(dāng)你使用寬帶連接時(shí)這點(diǎn)尤為重要。雖然無線技術(shù)有很多的優(yōu)點(diǎn),但是無線網(wǎng)絡(luò)的安全性永遠(yuǎn)也沒有辦法和有線網(wǎng)絡(luò)的安全性相提并論,除非你部署了端到端的加密技術(shù),否則都無法保障無線網(wǎng)絡(luò)所謂的真正的安全通信。有線網(wǎng)絡(luò)可以處理非常高速的帶寬,并且可以提供較好的安全性,因?yàn)橛芯€網(wǎng)絡(luò)不需要在網(wǎng)絡(luò)中廣播信息的,只要硬件在控制中就可以保障網(wǎng)絡(luò)的安全。而無線網(wǎng)絡(luò)是通過特定

43、的無線電波傳送的,所以在這個(gè)發(fā)射頻率的有效范圍內(nèi),任何具有合適的接收設(shè)備的人都可以捕獲該頻率的信號(hào),這必然會(huì)影響到一個(gè)局域網(wǎng)絡(luò)中的安全,因而,無線網(wǎng)絡(luò)用戶對(duì)于重要數(shù)據(jù)需要特別加密以增加安全性。 </p><p> ?。?)靈活性:傳統(tǒng)的有線網(wǎng)絡(luò)布局要受到布線格局的限制,如果建筑物中沒有預(yù)留的線路,布線以及調(diào)試的工程量比較大。如果使用無線網(wǎng)絡(luò)的話可以解決了上述的麻煩,因?yàn)闊o線網(wǎng)卡體積小、重量輕、攜帶方便,帶上它就可

44、以隨時(shí)隨地組建網(wǎng)絡(luò)而不用再拉著一根長長的網(wǎng)線,不必受空間的限制和網(wǎng)絡(luò)安裝時(shí)間的困擾。組建了無線網(wǎng)絡(luò),家里的每一個(gè)人在家里的每一個(gè)角落,都可以使用PC、筆記本電腦甚至PDA(手持電腦)接入互聯(lián)網(wǎng),實(shí)現(xiàn)隨時(shí)隨地同時(shí)上網(wǎng)。還有的就是,在搬家或更換上網(wǎng)地點(diǎn)時(shí)也不會(huì)損失布線費(fèi)用,只需要把無線接入器拆走,就帶走了所有網(wǎng)絡(luò)部件,相當(dāng)簡單方便。</p><p>  (5)擴(kuò)展性:有線網(wǎng)絡(luò)的擴(kuò)展性比較弱,如果要增加新用戶,而原有布

45、線所預(yù)留的端口又不夠用的話,那就要進(jìn)行重新布置線纜等工作,雖然電纜本身并不貴,比較麻煩;而且,一旦網(wǎng)絡(luò)建成,其功能上也比較固定。而無線網(wǎng)絡(luò)的擴(kuò)展性就比較強(qiáng),一臺(tái)AP可以支持2048個(gè)用戶(為保證高性能,建議接入30臺(tái)計(jì)算機(jī),但這足以滿足家庭用戶的需要了);如果需要新增加用戶,網(wǎng)絡(luò)不需作任何更改,只要在計(jì)算機(jī)上安裝一張無線網(wǎng)卡就可以了。</p><p>  (6)簡便性:有線網(wǎng)絡(luò)安裝過程和維護(hù)過程懂簡潔明了,但是安

46、裝工序比較繁瑣,而且需要一定的技術(shù)。無線網(wǎng)絡(luò)的安裝過程簡單,一般只需5分鐘就可以安裝完成了。只要給無線路由器接上電源,然后進(jìn)行簡單設(shè)置。有的需要進(jìn)行手工配置,對(duì)于特殊的配置,需要在計(jì)算機(jī)和網(wǎng)卡上分別進(jìn)行設(shè)置,才可以實(shí)現(xiàn)互聯(lián)網(wǎng)的連接了。</p><p>  總評(píng):無線網(wǎng)絡(luò)技術(shù)在不斷的發(fā)展與改善,其發(fā)展前景是良好的,但是在很多場合下,有線接入技術(shù)并真的比無線網(wǎng)絡(luò)有更多的優(yōu)勢(shì)。無線網(wǎng)絡(luò)是對(duì)有線網(wǎng)絡(luò)的一種補(bǔ)充,而不是一種

47、替代。兩種網(wǎng)絡(luò)各有各的好處,具體選擇哪種網(wǎng)絡(luò)還是要看具體的需求,就本次設(shè)計(jì)來說,我們以靈活性與簡便性為主,因此選擇使用無線網(wǎng)絡(luò)。</p><p>  對(duì)于無線網(wǎng)絡(luò)連接,常見的解決方案有GPRS、GPS、藍(lán)牙、WiFi及ZigBee 等。雖然GPRS和GPS具有較廣的傳輸范圍,但傳輸速率低,性價(jià)比不高。短距離無線通信技術(shù)的實(shí)現(xiàn)價(jià)位比較低,本文主要考慮的藍(lán)牙、WiFi及ZigBee等幾種短距離。下面是幾種常見的短距離

48、無線通信技術(shù)。</p><p><b> ?、?WiFi技術(shù)</b></p><p>  WiFi使用的頻段在2.4GHz附近。WiFi的傳輸速度較高,最高速度由使用的標(biāo)準(zhǔn)決定,IEEE802.11b最高為11Mbps,IEEE802.11a和IEEE802.11g最高都為54Mbps[6]。WiFi技術(shù)的第二層上與以太網(wǎng)是一致的,可以很方便的嵌入到已有的有線以太網(wǎng)中

49、,降低了組網(wǎng)成本。</p><p><b> ?、?藍(lán)牙</b></p><p>  藍(lán)牙采用低功率時(shí)分復(fù)用方式發(fā)射1 MHz的帶寬時(shí),藍(lán)牙的有效傳輸速率是721 Kbit/s,通信距離為10cm至10m。藍(lán)牙是一種低成本的短距離通信技術(shù),頻帶為2.45GHz ISM,采用跳頻擴(kuò)譜技術(shù)。</p><p>  ③ ZigBee技術(shù)</p&g

50、t;<p>  ZigBee是一種新興的近距離無線網(wǎng)絡(luò)技術(shù),其特點(diǎn)為復(fù)雜度低、功耗低、成本低、速率低[4]。該技術(shù)能夠很好地應(yīng)用于工業(yè)儀器監(jiān)測、消費(fèi)類電子及家庭監(jiān)控等無線傳感器網(wǎng)絡(luò)的控制領(lǐng)域中[5]。</p><p><b>  ④ UWB 技術(shù)</b></p><p>  UWB(Ultra Wideband),是另一個(gè)新興的無線通信技術(shù)[6],翻譯過

51、來即超寬帶技術(shù)。UWB的調(diào)制方式采用脈沖調(diào)制及二進(jìn)制相移鍵控,工作波段為3.1GHz 至10. 6GHz。UWB能夠穿透墻壁和身體并且具有較高的分辨率,可應(yīng)用于救援、消防、醫(yī)療、雷達(dá)系統(tǒng)和圖像處理。</p><p>  從以上幾種方案的比較中可以看出,WiFi在傳輸速率和網(wǎng)絡(luò)覆蓋率方面都具有更突出的優(yōu)勢(shì)。雖然WiFi技術(shù)的無線通信質(zhì)量有待改進(jìn),但現(xiàn)有的水平已經(jīng)可以滿足本設(shè)計(jì)的需求。綜上所述本設(shè)計(jì)選擇WiFi 作為

52、終端連接到網(wǎng)絡(luò)的方式。本設(shè)計(jì)的無線網(wǎng)絡(luò)環(huán)境由路由器和無線網(wǎng)卡組成的無線局域網(wǎng),這種AP和無線網(wǎng)卡的組網(wǎng)方式也是WiFi常用的組網(wǎng)方式之(AccessPoint),常譯為“無線訪問節(jié)點(diǎn)”或“橋接器”,用途是無線工作站及有線局域網(wǎng)絡(luò)的橋梁。本設(shè)計(jì)采用型號(hào)為TL-WR740N的無線寬帶路由器作為AP,無線網(wǎng)卡選用以Ralink RT3070L為核心控制器的WiFi8000 模塊。</p><p>  2.3 用戶圖形界

53、面</p><p>  在圖形界面的選擇上主要考慮客戶端,因?yàn)榭蛻舳瞬捎玫那度胧讲僮飨到y(tǒng)的硬件資源是有限的,這就要求所使用的用戶圖形界面必須具有輕型、高性能、高可靠、可配置、可移植的特點(diǎn)。選用嵌入式圖形界面作為圖形用戶接口GUI(Graphics User Interface)的開發(fā),下面對(duì)比幾種常見的嵌入式GUI:</p><p> ?。?)Qt/Embedded</p>

54、<p>  Qt是一個(gè)跨平臺(tái)的C++圖形界面庫,完全面向?qū)ο?,非常易于擴(kuò)展,并且允許組件編程。Qt開發(fā)庫是最重要的Qt構(gòu)成部分,擁有的C++類約400多個(gè),主要的構(gòu)成部分有DATABASE、圖形用戶接口以及國際化語言等;Qt Linguist使不同國家的開發(fā)者免受語言不同帶來的影響,促使了更多的開發(fā)者選用Qt;Qt Designer是一個(gè)可運(yùn)行于多種平臺(tái)的集成開發(fā)環(huán)境,主要用途是對(duì)窗口部件的布局和對(duì)話框的構(gòu)建;Qt Assis

55、tant是Qt中的幫助軟件,開發(fā)者可以把它作為幫助文檔的瀏覽器;Qt嵌入式版指的是面向嵌入式操作系統(tǒng)而推出的Qt版本,常用的有Qt /Embedded 和Qt/X11。</p><p> ?。?)MicroWindows</p><p>  MicroWindows[7]是一個(gè)出現(xiàn)較早的源碼開放的項(xiàng)目,由C語言編寫的,具有較強(qiáng)的移植性,支持許多硬件平臺(tái)。它就有相對(duì)完善圖形功能,但窗口處理功

56、能遠(yuǎn)不夠完善,在圖形引擎中有很多未經(jīng)任何優(yōu)化的低效算法,這些缺陷使MicroWindows距離一個(gè)優(yōu)秀的窗口系統(tǒng)還有一定的差距。</p><p> ?。?)OpenGUI</p><p>  OpenGUI是一個(gè)采用LGPL條款的源碼開放的項(xiàng)目。OpenGUI的內(nèi)核是由匯編語言進(jìn)行編寫的,這使得它具有非??斓倪\(yùn)行速度,但也正是這個(gè)原因使得它的不具有較好的可移植性,它對(duì)多線程也不支持。<

57、;/p><p> ?。?)MiniGUI</p><p>  MiniGUI是一個(gè)基于Linux的輕量級(jí)GUI,遵循LGPL條款。MiniGUI是一款國產(chǎn)的自由軟件,技術(shù)創(chuàng)新,優(yōu)勢(shì)諸多。具有的特點(diǎn)包括:輕量小巧、可配置、較好的可移植性。但它的圖形引擎有局限性并且其功能較弱,體系結(jié)構(gòu)也遠(yuǎn)不夠完善,在圖像開發(fā)環(huán)境中不具備IDE。此外MiniGUI缺乏支持度。</p><p>

58、;  同樣作為基于Qt開發(fā)出軟件平臺(tái),Qt/Embedded比Qt/X11有許多優(yōu)勢(shì),比如Qt/Embedded更節(jié)省內(nèi)存。而且,使用Qt/Embedded設(shè)計(jì)的軟件,無需再進(jìn)行一次編譯,就能夠直接運(yùn)行在Qt/X11上,反之卻不可以。鑒于Qt/Embedded比較有優(yōu)勢(shì),下面結(jié)合Qt所帶有的優(yōu)勢(shì),來分析一下Qt/Embedded作為一款嵌入式GUI具有的特點(diǎn)。</p><p>  ①豐富的API函數(shù),而且類庫支持

59、跨平臺(tái),封裝了適合不同操作系統(tǒng)的訪問細(xì)節(jié),這也正是Qt的魅力所在。</p><p> ?、谪S富的工具,以開發(fā)包形式提供,包括了圖形設(shè)計(jì)器、Makefile制作工具、字體國際化工具、Qt的C++類庫等。</p><p> ?、蹆?yōu)秀的快平臺(tái)特性,支持Windows系列、Unix/ Linux/Solaris、Mac OSX。</p><p> ?、芰己玫姆庋b機(jī)制,非常高

60、的模塊化程度,這使得它具有很好的可裁剪性和可移植性[8]。</p><p> ?、葚S富的資源,使用者眾多。</p><p> ?、捱\(yùn)行需要資源少、速度快。</p><p>  分析了四種常見的嵌入式GUI 的優(yōu)缺點(diǎn)之后,結(jié)合客戶端的需要,選擇Qt/Embedded來開發(fā)客戶端的用戶界面,本設(shè)計(jì)使用的Qt4.7就是Qt/Embedded 的一個(gè)版本。</p>

61、;<p>  2.4 嵌入式數(shù)據(jù)庫</p><p>  在數(shù)據(jù)庫領(lǐng)域,嵌入式數(shù)據(jù)庫的“嵌入”一次的語義是指能夠比較方便簡單的應(yīng)用于其他應(yīng)用程序中。本設(shè)計(jì)選擇使用嵌入式數(shù)據(jù)庫的依據(jù)也源于這種語境下的概念。本設(shè)計(jì)中的數(shù)據(jù)量不是特別大,在數(shù)據(jù)庫的具體選擇上,主要考慮中小型的數(shù)據(jù)庫,常見的主要有MySQL、SQLite、Berkeley DB、Firebird、PostgreSQL等[9]。</p&g

62、t;<p>  MySQL是一種多進(jìn)程、多用戶的SQL數(shù)據(jù)庫服務(wù)器。MySQL包括mysgld(服務(wù)器守護(hù)進(jìn)程)、client programs(客戶端程序)及不同的libraries(類庫)的C/S(客戶端/服務(wù)器)實(shí)現(xiàn)工具。它無法較好的支持復(fù)雜的操作,但可以很好應(yīng)用于小而簡單的數(shù)據(jù)庫中。MySQL不是完全的免費(fèi)軟件,只有作為普通的最終用戶使用MySQL時(shí),才不需要付錢。此外,無論是直接還是間接的出售了MySQL相關(guān)產(chǎn)品

63、或服務(wù)程序,又或者在客戶端對(duì)MySQL服務(wù)器進(jìn)行了維護(hù),這些都需要收取相關(guān)的費(fèi)用。若是在發(fā)行版中出現(xiàn)含有MySQL的內(nèi)容,也是需要獲得許可的。</p><p>  SQLite的設(shè)計(jì)目標(biāo)是“簡單管理,簡單操作,簡單使用,簡單維護(hù),簡單定制” [10]。SQLite是一種輕型、零配置的數(shù)據(jù)庫,對(duì)數(shù)據(jù)庫的存放采用了單文件。在處理速度方面,SQLite優(yōu)于其它大多數(shù)數(shù)據(jù)庫管理系統(tǒng)(如MySQL和PostgreSQL)。

64、在版權(quán)方面,SQLite沒有任何的應(yīng)用限制,即使商業(yè)性產(chǎn)品也不例外。在使用方面,SQLite的操作語句同關(guān)系型數(shù)據(jù)庫產(chǎn)品相類似,使用起來非常方便。</p><p>  Berkeley DB的源代碼是開放的,可以高效的管理應(yīng)用程序中的數(shù)據(jù)。只需要進(jìn)行一些簡單的API的調(diào)用,就能夠?qū)?shù)據(jù)進(jìn)行訪問及管理。Berkeley DB不同于其它常用的數(shù)據(jù)庫管理系統(tǒng)(如MySQL)的是它不包含有數(shù)據(jù)庫服務(wù)器的概念。直接使用應(yīng)用

65、程序中內(nèi)嵌的Berkeley DB函數(shù)庫,就可以實(shí)現(xiàn)數(shù)據(jù)的保存、查詢修改或刪除[11]。而不需要事先在應(yīng)用程序中連接數(shù)據(jù)庫服務(wù)器,才能完成對(duì)數(shù)據(jù)的操作。</p><p>  Firebird就是從Interbase的源代碼中派生出來的一種小型數(shù)據(jù)庫,兼容SQL并支持存儲(chǔ)過程,能夠與其它應(yīng)用程序或應(yīng)用程序服務(wù)器進(jìn)行捆綁。它功能包括絕大多數(shù)的成熟數(shù)據(jù)庫的功能,其設(shè)計(jì)思想為:小型、快速和最小化的管理。設(shè)計(jì)者使用Fire

66、bird對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)與管理時(shí),不需要花太多精力來調(diào)整數(shù)據(jù)性能,非常方便。</p><p>  PostgreSQL是一款完全免費(fèi)的數(shù)據(jù)庫,使用時(shí)不再需要支付版權(quán)費(fèi)或購買費(fèi)。此外PostgreSQL的兼容性也很強(qiáng)。作為世界上優(yōu)秀的開源的數(shù)據(jù)庫,它被許多版本的Linux定為發(fā)行首選,在Red Hat Linux、TurboLinux中都預(yù)裝了PostgreSQL 。</p><p>  表2

67、.1數(shù)據(jù)庫對(duì)比表</p><p>  結(jié)合本設(shè)計(jì)的需求,依次考慮以上介紹的幾種常用數(shù)據(jù)庫,找到最適合本設(shè)計(jì)的數(shù)據(jù)庫。本設(shè)計(jì)的數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù)量不算大,對(duì)數(shù)據(jù)庫的要求主要是操作簡單,使用方便,速度快。從數(shù)據(jù)庫的體積方面考慮,PostgreSQL體積較大,雖然它是很完善的開源的數(shù)據(jù)庫,但不適合本設(shè)計(jì)。從數(shù)據(jù)庫的版權(quán)收費(fèi)方面考慮,MySQL在商業(yè)用途中收費(fèi),版權(quán)使用時(shí)也有一些需要獲得許可的情況,為設(shè)計(jì)的長遠(yuǎn)考慮,不選用M

68、ySQL。下面剩下SQLite、Firebird、Berkeley DB,對(duì)比一下這三種數(shù)據(jù)庫的性能。</p><p>  從表2.1中可以看出,SQLite的速度最快。SQLite小巧的體積、完善的功能、源碼免費(fèi)開發(fā)等優(yōu)點(diǎn),在很多嵌入式系統(tǒng)中得到了應(yīng)用,如應(yīng)用于智能手機(jī)的媒體查詢功能,應(yīng)用于交通系統(tǒng)信息采集。至于數(shù)據(jù)庫容量,本設(shè)計(jì)的數(shù)據(jù)量不是很大,2TB 足夠滿足需求綜合考慮,SQLite是最適合本設(shè)計(jì)的數(shù)據(jù)庫

69、系統(tǒng)。</p><p><b>  2.5 本章小結(jié)</b></p><p>  本章對(duì)網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的方案設(shè)計(jì)做了詳細(xì)的闡述,包括系統(tǒng)的總體設(shè)計(jì),網(wǎng)絡(luò)環(huán)境的選擇,用戶圖形界面設(shè)計(jì)以及嵌入式數(shù)據(jù)庫,其中對(duì)各種網(wǎng)絡(luò)的優(yōu)劣,幾種用戶圖形界面和網(wǎng)絡(luò)數(shù)據(jù)庫的選擇方面進(jìn)行了詳細(xì)的比對(duì)。</p><p>  第3章 網(wǎng)絡(luò)數(shù)據(jù)庫終端的開發(fā)環(huán)境的搭建</

70、p><p>  3.1 終端的硬件環(huán)境</p><p>  3.1.1 ARM處理器</p><p>  ARM(Advanced RISC Machines)處理器體系,與MIPS、PowerPC、X86同屬于精簡指令集計(jì)算機(jī)(RISC)處理器體系。</p><p>  ARM公司成立于英國劍橋,是一家全球領(lǐng)先的嵌入式RISC微處理器解決方案

71、供應(yīng)商。ARM公司并不生產(chǎn)ARM處理器,主要的產(chǎn)品是ARM技術(shù)知識(shí)產(chǎn)權(quán)核。ARM技術(shù)具有非常高的功效和性能,非常容易得到廠家的接受。ARM擁有非常廣泛的全球合作伙伴,包括許多頂級(jí)的半導(dǎo)體公司。這種轉(zhuǎn)讓設(shè)計(jì)許可的商業(yè)模式,使得不同合作公司可以根據(jù)各自不同的應(yīng)用領(lǐng)域生產(chǎn)各具特色的芯片。因此,ARM技術(shù)獲得了更多的來自第三方的工具、制造及軟件的支持。降低整個(gè)系統(tǒng)的成本,加快產(chǎn)品進(jìn)入市場的時(shí)間,從而擁有了更大的競爭優(yōu)勢(shì)。</p>

72、<p>  目前,基于ARM技術(shù)的微處理器占據(jù)了32位RISC芯片80%的市場份額。ARM處理器具有低功耗、高性價(jià)比等特點(diǎn),它的應(yīng)用幾乎無處不在,下面介紹幾種重要的應(yīng)用領(lǐng)域:</p><p><b>  (1)網(wǎng)絡(luò)應(yīng)用</b></p><p>  針對(duì)語音及視頻的處理,ARM進(jìn)行了優(yōu)化,使其獲得廣泛的支持。隨著寬帶技術(shù)接入市場的成長,采用ARM技術(shù)的ADSL

73、 芯片向采用DSP芯片發(fā)起了挑戰(zhàn)。ARM正逐步獲得網(wǎng)絡(luò)應(yīng)用領(lǐng)域的競爭優(yōu)勢(shì)。</p><p><b> ?。?)無線通信領(lǐng)域</b></p><p>  在無線通信設(shè)備中,超過85%的設(shè)備采用了ARM技術(shù)。在無線通信領(lǐng)域,ARM有著近乎無可替代的鞏固地位。</p><p><b>  (3)消費(fèi)電子產(chǎn)品</b></p&

74、gt;<p>  在這個(gè)增長迅速的市場中,ARM的應(yīng)用仍然十分廣泛,主要包括MP4等音頻播放器,收音機(jī)、數(shù)字機(jī)頂盒、游戲機(jī)以及智能手機(jī)等目前流行的電子產(chǎn)品。</p><p><b>  (4)工業(yè)控制領(lǐng)域</b></p><p>  作為32位的精簡指令集計(jì)算機(jī)架構(gòu),ARM微處理器在占據(jù)大部分高端微處理器市場份額的同時(shí),也逐步擴(kuò)大在低端微處理器應(yīng)用領(lǐng)域中

75、占有率。ARM微處理器所具有的性能高、價(jià)位低、功耗低等優(yōu)勢(shì),成功的向傳統(tǒng)8/16位的微處理器發(fā)起了挑戰(zhàn)。</p><p>  3.1.2 Tiny6410 開發(fā)板</p><p>  本設(shè)計(jì)的終端采用友善之臂的Tiny6410開發(fā)平臺(tái),Tiny6410開發(fā)板由核心板和底板共同構(gòu)成[12]。Tiny6410核心板采用5V供電,帶有專用復(fù)位芯片。處理器為SamsungS3C6410A, FLA

76、SH存儲(chǔ)為2GB MLC NAND Flash。Tiny6410開發(fā)板以三星ARM11 S3C6410芯片作為主處理器,該CPU基于ARM1176JZF-S核設(shè)計(jì),內(nèi)部集成了強(qiáng)大的多媒體處理單元,并帶有3D圖形硬件加速器,支持2D圖形圖像的平滑縮放,翻轉(zhuǎn)等操作。Tiny6410底板是采用Tiny6410核心板的一款參考設(shè)計(jì)底板。該底板具有的資源包括:調(diào)試口、串口、網(wǎng)絡(luò)接口、音頻輸入輸出、4個(gè)USB Host、LCD接口等。</p&

77、gt;<p>  3.2 嵌入式操作系統(tǒng)及其安裝</p><p>  3.2.1 嵌入式操作系統(tǒng)的選型</p><p>  嵌入式系統(tǒng)在具有一個(gè)操作系統(tǒng)的基本特征之外,還具有執(zhí)行效率高、實(shí)時(shí)性強(qiáng)、針對(duì)特定的應(yīng)用,對(duì)于功耗、體積及成本也都有一定的要求。下面介紹幾種常用的嵌入式操作系統(tǒng)。</p><p> ?。?)Windows CE</p>

78、<p>  Windows CE是微軟公司開發(fā)的能夠比較好的兼容Windows系列操作系統(tǒng)的嵌入式操作系統(tǒng)。它支持的CPU架構(gòu)種類較多,硬件驅(qū)動(dòng)資源也比較豐富,擁有強(qiáng)大的多媒體功能同時(shí)。此外,開發(fā)調(diào)試的過程與PC機(jī)上的windows 有眾多類似之處。Windows CE有很多的缺陷,如系統(tǒng)占用比較大、不開源且版權(quán)費(fèi)比較昂貴等。</p><p> ?。?)VxWorks</p><p

79、>  VxWorks是美國WindRiver公司設(shè)計(jì)出的具有非常好的可靠性和實(shí)時(shí)性的操作系統(tǒng)。其特點(diǎn)包括微內(nèi)核結(jié)構(gòu)可裁剪、支持POSIX實(shí)時(shí)擴(kuò)展標(biāo)準(zhǔn)、任務(wù)管理高效、中斷處理為微秒級(jí),任務(wù)之間的通信較靈活等。它廣泛出現(xiàn)在航空、航天、軍事、通信等高精尖技術(shù)領(lǐng)域,在實(shí)時(shí)性和可靠性要求很高的操作系統(tǒng)領(lǐng)域非常受歡迎。VxWorks也有缺點(diǎn),它支持的硬件少,不開源且授權(quán)費(fèi)高。</p><p><b>  (3

80、)uCOSII</b></p><p>  uCOSII是一種著名的開源的實(shí)時(shí)操作系統(tǒng)內(nèi)核。uCOSII結(jié)構(gòu)小巧,內(nèi)核采用優(yōu)先級(jí)可剝奪的任務(wù)調(diào)度機(jī)制。uCOSII具有較強(qiáng)的可移植性、可裁剪性、空間占用小、執(zhí)行速度快、實(shí)用性和可靠性等。它被廣泛應(yīng)用在各種8/16/32位單片機(jī)上。uCOSII的源代碼全部公開,但它不是完全的免費(fèi)軟件,用于生產(chǎn)商業(yè)產(chǎn)品時(shí),必須購買授權(quán)。uCOSII只是一個(gè)內(nèi)核,沒有給用戶提

81、供各種的系統(tǒng)調(diào)用和API接口函數(shù),很多部分用戶要根據(jù)需要自行實(shí)現(xiàn)。</p><p><b>  (4)Linux</b></p><p>  Linux是一種遵循GPL的開源嵌入式操作系統(tǒng)。它的價(jià)格低、功能十分強(qiáng)大,移植性好,得到了越來越多的開發(fā)人員的青睞。Linux具有的優(yōu)勢(shì)主要集中在以下幾點(diǎn)[13]:</p><p> ?、倌軌蛑С纸^大部分

82、主流的微處理器,例如x86,、Alpha,、ARM,、MIPS 等等。</p><p>  ②源代碼是開放的,操作系統(tǒng)實(shí)現(xiàn)了可定制;在GPL協(xié)議的規(guī)范下,不同開發(fā)人員開發(fā)出的軟件具有了很好的兼容性。</p><p> ?、蹆?nèi)核精悍且十分高效穩(wěn)定。在許許多多的來自全球不同地區(qū)的開發(fā)者及團(tuán)隊(duì)的共同能力下,對(duì)linux內(nèi)核進(jìn)行了一次又一次的維護(hù)及升級(jí),使得Linux具有了十分精巧、效率高且穩(wěn)定性

83、高的內(nèi)核。</p><p> ?、荛_發(fā)工具十分優(yōu)秀。這些工具不但技術(shù)成熟、功能完善、操作方便,而且不斷更新升級(jí)以適應(yīng)技術(shù)的不斷進(jìn)步。</p><p> ?、菥W(wǎng)絡(luò)通信十分完善,只要是標(biāo)準(zhǔn)的網(wǎng)絡(luò)協(xié)議,幾乎都能夠支持。在文件管理方面,Linux的機(jī)制也很完善,能夠支持多種格式的文件系統(tǒng)。此外,在人機(jī)交互方面,Linux的用戶圖形界面也在不斷完善中。Linux還特有模塊機(jī)制,使得開發(fā)者可以根據(jù)需要

84、,隨時(shí)加載或許卸載模塊。</p><p>  從以上比較可以看出,這四種操作系統(tǒng)的穩(wěn)定性和實(shí)時(shí)性都很好。在開發(fā)費(fèi)用方面,由于Vxworks和Windows CE的代碼不開源,需要購買版權(quán),其價(jià)格比較昂貴,考慮到系統(tǒng)的開發(fā)成本有限,不選用這兩種操作系統(tǒng)。本設(shè)計(jì)需要有網(wǎng)絡(luò)協(xié)議的支持,但uCOSII不支持,所以不能選擇。綜上所述,選擇Linux作為終端的操作系統(tǒng)。</p><p>  3.2.2

85、 Linux 的開發(fā)環(huán)境的建立</p><p>  Linux的安裝有多種方式。本文通過PC機(jī)的windows操作系統(tǒng)中安裝虛擬機(jī)后,再安裝Linux。Linux有多種發(fā)行版本,不同的發(fā)行版本為不同的目的而制作。</p><p>  常用的十多種,包括Red Hat Linux、Debian、MandrakeUbuntu、SuSE、Fedora、Linux Mint及Gentoo等。本文選

86、用Ubuntu 12.04,其具有主要優(yōu)勢(shì)如下:</p><p><b>  (1)更新速度快;</b></p><p>  (2)刪除了屏幕保護(hù)及無用的軟件包;</p><p>  (3)加入了Gnome classic 風(fēng)格;</p><p> ?。?) Ubuntu 10.04的網(wǎng)絡(luò)沖突問題在Ubuntu 12.0

87、4已解決。</p><p>  本設(shè)計(jì)在虛擬機(jī)下,使用ubuntu-12.04-desktop-i386.iso鏡像文件對(duì)其進(jìn)行安裝。安裝前,還需要進(jìn)行一些配置。其中對(duì)內(nèi)存分配的選擇,本設(shè)計(jì)選擇1GB。</p><p>  在安裝階段還需要完成語音的選擇、用戶名及密碼等進(jìn)行設(shè)置。</p><p>  3.3 軟件開發(fā)環(huán)境的搭建</p><p>

88、;  3.3.1 共享文件夾的配置</p><p>  由于Linux系統(tǒng)在windows下用虛擬機(jī)來安裝的,使得虛擬機(jī)跟PC機(jī)之間文件傳遞就成為一個(gè)難題。解決這個(gè)難題的方法有很多,本設(shè)計(jì)通過共享文件夾實(shí)現(xiàn)Linux與windows之間的文件傳遞。</p><p>  共享文件夾的安裝使用的是VMwareTools-8.4.5-324285.tar-gz,在虛擬機(jī)中選擇VM—>Upd

89、ate VMware Tools就可以獲得該壓縮包。運(yùn)行安裝文件vmware-install.pl,進(jìn)行安裝。bin目錄下的vmware-config-tools.pl是一個(gè)配置文件,也需要安裝一下。完成安裝后,開始設(shè)置一個(gè)共享文件夾。</p><p>  3.3.2 交叉編譯工具</p><p>  絕大多數(shù)開發(fā)板的可利用資源十分有限,無法滿足編譯時(shí)對(duì)軟硬資源的需求。一般的解決方法是依賴

90、宿主機(jī)(通常為PC機(jī))進(jìn)行編譯,這就需要使用交叉編譯工具。</p><p>  本設(shè)計(jì)直接使用友善之臂提供的ARM-linux-gcc-4.5.1-v6-vfp-20102203.tgz 作為交叉編譯工具。將壓縮包拷貝到opt目錄下,并解壓。完成解壓后,對(duì)環(huán)境變量進(jìn)行修改,打開文件/etc/profiel,在文件中加入一行代碼,如圖3.1中紅框中的內(nèi)容。</p><p>  圖3.1 修

91、改環(huán)境變量圖</p><p>  在終端下輸入ARM-linux-gcc –v,檢查是否安裝成功。如圖3.2中出現(xiàn)了版本“version 4.5.1”,至此交叉編譯工具安裝成功。</p><p>  圖3.2 查看安裝版本圖</p><p>  3.3.3 Qt4.7 的安裝</p><p>  本設(shè)計(jì)在宿主機(jī)上安裝的是Qt4.7,需要進(jìn)行

92、的工作包括Qt Creator的安裝、Qt4.7的安裝及一些必要的配置。下面依次介紹各部分的工作。</p><p>  Qt Creator的安裝,本設(shè)計(jì)使用QtSDK來實(shí)現(xiàn)這一步。從互聯(lián)網(wǎng)下載安裝包qt-sdk-linux-x86-opensource-2009.05.bin。修改執(zhí)行權(quán)限后,運(yùn)行安裝包。安裝的過程中需要注意一下安裝位置為/opt/qtsdk-2009.05。安裝完成后,在桌面會(huì)生成QtCrea

93、tor圖標(biāo)。</p><p>  Qt4.7的安裝。從網(wǎng)絡(luò)獲取Qt4.7源碼包ARM-qte-4.7.0-20101105.tar.gz,并將Qt4.7源碼包拷貝到/opt/mini6410下。解壓源碼包,進(jìn)入源碼包目錄 ARM-qte-4.7.0,解壓其中的qt-everywhere-opensource-src-4.7.0.tar.g。</p><p>  為了成功安裝Qt4.7,還需

94、安裝編譯工具,在終端中依次運(yùn)行如下命令:</p><p>  sudo apt-get install g++ make cmake pkg-config</p><p>  sudo apt-get install libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-dev</p><p

95、>  sudo apt-get install libglui-dev</p><p>  在終端下進(jìn)入qt-everywhere-opensource-src-4.7.0目錄,交叉編譯Qt4.7。終端中所需運(yùn)行的命令為sudo echo yes| ./configure -prefix /opt/Qt4.7 -opensource-embedded ARM–xplatform qws/linux-ARM-

96、g++ -no-webkit -qt-libtiff -qt-libmng-qt-mouse-tslib -qt-mouse-pc -no-mouse-linuxtp -no-neon。</p><p>  使用命令make,開始編譯。在執(zhí)行命令sudo make install。完成后,Qt4.7就被安裝在了/opt/Qt4.7。</p><p>  完成上述安裝后,需要進(jìn)行一些配置。使

97、用Qt開發(fā)好程序后,要對(duì)其進(jìn)行交叉編譯,配置的主要原因是能夠完成交叉編譯。在Tools 菜單中點(diǎn)Options選項(xiàng),在出現(xiàn)的對(duì)話框左側(cè)選擇Qt4.7下的Qt version,QMake Location的地址為/opt/mini6410/ARM-qte-4.7.0/qt-everywhere-opensource-src-4.7.0/bin/qmake ,通過Browse 按鈕找到該路徑下的qmake,版本信息為4.7.0。此外,在左側(cè)

98、的菜單欄中點(diǎn)Projects,在彈出的界面中還需要做相應(yīng)的配置。</p><p>  本小結(jié)內(nèi)容實(shí)現(xiàn)了對(duì)Qt的使用,在PC機(jī)上就可以開發(fā)出能夠在ARM開發(fā)板上運(yùn)行的Qt程序。</p><p><b>  3.4 本章小結(jié)</b></p><p>  本章介紹了網(wǎng)絡(luò)數(shù)據(jù)庫終端的開發(fā)環(huán)境的搭建,首先介紹了終端的硬件環(huán)境,ARM處理器,對(duì)ARM處理器

99、的發(fā)源以及應(yīng)用進(jìn)行了概述然后介紹了本設(shè)計(jì)使用的Tiny6410開發(fā)板。接下來對(duì)幾種嵌入式操作系統(tǒng)進(jìn)行了比較,最終選擇Linux作為終端的操作系統(tǒng)。緊接著介紹了Linux的開發(fā)環(huán)境的建立以及Linux上一些軟件開發(fā)環(huán)境的搭建,包括共享文件夾的配置,交叉編譯工具等,最后詳細(xì)級(jí)闡述了Qt4.7的安裝過程。</p><p>  第4章 開發(fā)板上的系統(tǒng)平臺(tái)的實(shí)現(xiàn)</p><p>  4.1 Boo

100、tloader</p><p>  4.1.1 Bootloader 及啟動(dòng)流程</p><p>  BootLoader就是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段程序,引導(dǎo)和加載系統(tǒng)內(nèi)核鏡像的工具[14],需要具備的功能如下:</p><p> ?。?) 初始化RAM</p><p>  這一功能是必需能夠?qū)崿F(xiàn)的,因?yàn)閷硐到y(tǒng)要通過它來對(duì)一些Vo

101、latile數(shù)據(jù)進(jìn)行保存。這一功能的具體實(shí)現(xiàn)依賴于具體的微處理器及其硬件系統(tǒng)。</p><p><b> ?。?) 初始化串口</b></p><p>  這一功能不是必需的,但一般都會(huì)進(jìn)行。一般地,初始化之后,至少還要保證一個(gè)串口被使能了。這樣通過串口就可以與控制臺(tái)進(jìn)行一些工作,或者是與PC機(jī)之間的通信等。</p><p> ?。?) 啟動(dòng)內(nèi)

102、核鏡像</p><p>  這一功能也是必需實(shí)現(xiàn)的。大多數(shù)BootLoader的啟動(dòng)流程分為兩個(gè)階段:stage1和stage2。階段1一般都是利用匯編語言來實(shí)現(xiàn),以便達(dá)到短小精悍的目的,其中包含與CPU體系結(jié)構(gòu)相關(guān)的代碼。階段2部分一般利用C語言來實(shí)現(xiàn),便于復(fù)雜功能的實(shí)現(xiàn),而且也會(huì)調(diào)高代碼的可讀性和可移植性。</p><p>  通過Bootloader實(shí)現(xiàn)了硬件設(shè)備的初始化,并建立內(nèi)存

103、空間的映射圖,使得嵌入式系統(tǒng)的軟件和硬件達(dá)到合適狀態(tài),從而為調(diào)用內(nèi)核、加載文件系統(tǒng)及應(yīng)用程序做好前期準(zhǔn)備。</p><p>  4.1.2 u-boot 及其編譯</p><p>  u-boot是眾多Bootloader中的一種。它是由來自德國的DENX小組在ppcboot 和ARMboot的基礎(chǔ)上開發(fā)出來的,遵循GPL的源碼開放的項(xiàng)目,已被廣泛應(yīng)用于多種嵌入式系統(tǒng)的開發(fā)中。U-boot

104、的開發(fā)目的就是能夠更穩(wěn)定地支持更多的嵌入式CPU和嵌入式系統(tǒng),更靈活地實(shí)現(xiàn)功能的設(shè)置,為產(chǎn)品開發(fā)提供便利。很多u-boot源碼是linux內(nèi)核源代碼的簡化,如u-boot的源碼目錄、編譯形式都和Linux 內(nèi)核十分的相似。</p><p>  本設(shè)計(jì)直接使用友善之臂提供的u-boot,直接對(duì)其源碼進(jìn)行編譯就可以使用了。編譯的過程在ubuntu下實(shí)現(xiàn),進(jìn)入源碼的目錄后,生成配置文件,使用的命令為make mini6

105、410_sd_config-ram256,最終使用make 編譯出u-boot.bin文件。將安裝到ARM上之前,要對(duì)Nand Flash進(jìn)行格式化。使用DNW程序?qū)-boot.bin下載到開發(fā)板。</p><p>  4.2 Linux 內(nèi)核</p><p>  4.2.1 內(nèi)核的版本</p><p>  Linux是在Unix與MS-DOS的夾縫中,在min

106、ix的引導(dǎo)下,在GNU、POSIX的幫助下終于在1991年8月發(fā)布了linux內(nèi)核的第一個(gè)版本0.01版,造就了后來幾十年的輝煌。自Linux問世以來,系統(tǒng)的一直在進(jìn)行著升級(jí)和維護(hù)。</p><p>  Linux內(nèi)核的版本又分為穩(wěn)定版和開發(fā)板兩種。穩(wěn)定版的內(nèi)核就有工業(yè)級(jí)的強(qiáng)度。新的穩(wěn)定內(nèi)核相對(duì)于較舊的只是修正啦一些bug 或加入了一些新的驅(qū)動(dòng)程序。開發(fā)版的內(nèi)核的變化很快,發(fā)布周期也都很短,主要是因?yàn)樾枰胤磸?fù)實(shí)

107、驗(yàn),來驗(yàn)證各種解決方案。內(nèi)核的兩個(gè)版本相互關(guān)聯(lián)與循環(huán)。</p><p>  4.2.2 內(nèi)核模塊結(jié)構(gòu)</p><p>  Linux 核心源程序通常都安裝在目錄/usr/src/Linux下,一個(gè)目錄就是一個(gè)模塊。各個(gè)目錄的用途如下:</p><p> ?。?)/include:該子目錄包含了編譯內(nèi)核代碼時(shí)所需的大部分包含文件。各類驅(qū)動(dòng)或功能布局的頭文件在/medi

108、a、/mtd、/net等目錄下。</p><p> ?。?)/drivers:該子目錄包含當(dāng)前版本的內(nèi)核中的所有設(shè)備驅(qū)動(dòng)代碼,里面的每個(gè)子目錄對(duì)應(yīng)一類驅(qū)動(dòng)程序,每種驅(qū)動(dòng)程序各自占有一個(gè)子目錄。</p><p>  (3)/init:該子目錄包含了初始化內(nèi)核的代碼。</p><p> ?。?)/ipc:該子目錄包含了進(jìn)程間通信的代碼。</p><p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論