【正文】
,但Client的窗口是自管理的,而且圖形操作是應用程序自己完成的。對于應用程序開發(fā)者來說,幾乎感覺不到Qt/Embedded客戶/服務器模型的存在,而只需要如同開發(fā)PC機的Qt程序一樣來開發(fā)Qt/Embedded應用程序即可。在Qt/Embedded中,QWSServer類主要完成服務器的構(gòu)建,QWSDisplay則主要完成客戶端的構(gòu)建。 Qt/Embedded分析Qt/Embedded是Troll tech公司開發(fā)的面向嵌入式系統(tǒng)的Qt版本,Qt是KDE等項目使用的GUI支持庫,許多基于Qt的X Window程序可以非常方便地移植到Qt/Embedded上。 按鈕:菜單中,利用程度高的命令用圖形表示出來,配置在應用程序中,成為按鈕。數(shù)據(jù)管理程序,即在文件夾中用戶數(shù)據(jù)的管理、進行特定數(shù)據(jù)管理的程序的情況下,數(shù)據(jù)通過圖標顯示出來。一般使用鼠標的第一按鈕進行操作。 菜單:將系統(tǒng)可以執(zhí)行的命令以階層的方式顯示出來的一個界面。這種情況下,窗口的管理簡單化,但是操作變?yōu)殡p重管理。在這種情況下,數(shù)據(jù)和顯示窗口的數(shù)量是一樣的。在窗口中,用戶可以在窗口中操作應用程序,進行數(shù)據(jù)的管理、生成和編輯。 墻紙,即桌面背景。在桌面上由于可以重疊顯示窗口,因此可以實現(xiàn)多任務化。Qt/Embedded 對存儲內(nèi)存的需求約在800kB到3MB(Intel 下x86)。Qt/Embedded是Qt的嵌入式Linux端口,是完整的自包含C++GUI和基于Linux的嵌入式平臺開發(fā)工具。Qt是完全面向?qū)ο蟮暮苋菀讛U展,并且允許真正地組件編程。同時MiniGUI又將盡力與微軟的 MSWindows API保持兼容。 MiniGUI也是一個窗口系統(tǒng),他的主要組成元素是窗口,在這個基礎上 MiniGUI 中的窗口可以基本分四類,分別為主窗口、對話框、控件和主窗口中的窗片。由于其基于匯編實現(xiàn)的內(nèi)核并利用MMX指令進行了優(yōu)化,OpenGUI運行速度非常快,可以用UltraFast形容,它支持32位的機器,能夠在MSDOS,QNX5和Linux下運行,主要用來在這些系統(tǒng)中開發(fā)圖形應用程序和游戲。OpenGUI支持鼠標和鍵盤的事件。它和MiniGUI一樣,也是使用LGPL許可證。比如,應用程序的用戶界面就需要精心定制,來方便用戶在較小尺寸的屏幕上輸入輸出;又如,嵌入式系統(tǒng)上的應用程序一般不允許崩潰,所以必須采取安全有效的內(nèi)存管理策略保證程序的可靠性。用戶模型包含了顯示和交互的主要特征?!狽FS 網(wǎng)絡文件系統(tǒng),可方便調(diào)試應用程序以及驅(qū)動程序。,支持的文件系統(tǒng)有:——Yaffs 可讀寫的文件系統(tǒng),默認使用。最值得注意的改進是擴展屬性(或文件元數(shù)據(jù))的引入。不但可以支持更多類型的設備,而且支持更多同類型的設備。用戶和組,惟一用戶和組的數(shù)量從65000增至40多億,也就是從16位增加到了32位。快速用戶空間互斥(Fast UserSpace Mutexes),“futexes”(快速用戶空間互斥)可以使線程串行化以避免競態(tài)條件,引入它也提高了響應速度。新的調(diào)度器基于每個CPU來分布時間片,這樣就消除了全局同步和重新分配循環(huán),從而提高了性能。NPTL為Linux帶來了企業(yè)級線程支持,提供的性能遠遠超過了Linux Threads。內(nèi)存支持,NUMA支持,支持更大數(shù)量的RAM。(4)即插即用支持:。(3)統(tǒng)一設備模型:。這樣穩(wěn)定版本來源于上一個測試版升級版本號,而一個穩(wěn)定版本發(fā)展到完全成熟后就不再發(fā)展。而內(nèi)存管理子系統(tǒng)也會使用文件系統(tǒng)來支持內(nèi)存數(shù)據(jù)塊的交換操作。進程調(diào)度子系統(tǒng)需要使用內(nèi)存管理來調(diào)整一特定進程所使用的物理內(nèi)存空間。通常,一個模塊會在等待硬件操作期間被掛起,而在操作完成后才可繼續(xù)運行?! ∵@幾個模塊之間的依賴關系如圖21所示。虛擬文件系統(tǒng)模塊通過向所有的外部存儲設備提供一個通用的文件接口,隱藏了各種硬件設備的不同細節(jié)。所采取的調(diào)度策略是各進程能夠公平合理地訪問CPU,同時保證內(nèi)核能及時地執(zhí)行硬件操作。Red Hat、Novell、Debian和Gentoo等Linux發(fā)行商都采用Linux內(nèi)核,然后加入更多的工具、庫和應用程序來構(gòu)建一個完整的操作系統(tǒng)。當Linux非常接近于一種可靠的/穩(wěn)定的系統(tǒng)時。整個故事從兩個在端終上打印AAAA...和BBBB...的進程開始的。T許可協(xié)議的約束,為教學科研提供一個操作系統(tǒng)。完成這個控制工作的軟件就稱為操作系統(tǒng),在Linux的術(shù)語中被稱為“內(nèi)核”,也可以稱為“核心”。 linux內(nèi)核描述操作系統(tǒng)是一個用來和硬件打交道并為用戶程序提供一個有限服務集的低級支撐軟件。Linux的低成本和開放性,使其廣泛應用于嵌入式系統(tǒng)領域。(5)設備獨立性:是指操作系統(tǒng)把所有外部設備統(tǒng)一當作文件看待,只要安裝它們的驅(qū)動程序,任何用戶都可以像使用文件一樣,操縱、使用這些設備,而不必知道它們的具體形式。(3)多任務:是現(xiàn)代計算機的主要的一個特點,是指計算機同時執(zhí)行多個程序,而且各個程序的運行互相獨立。現(xiàn)今Linux已經(jīng)在嵌入式領域顯示了強勁的發(fā)展勢頭。也就是說,如果今天用Linux環(huán)境開發(fā)產(chǎn)品,那么將來換CPU就不會遇到困擾。到目前為止,它可以支持二三十種CPU。購買費用媒介成本技術(shù)支持全世界的自由軟件開發(fā)者提供支持網(wǎng)絡特性免費,而且性能優(yōu)異,軟件移植容易,代碼開放,有許多應用軟件支持,應用產(chǎn)品開發(fā)周期短,新產(chǎn)品上市迅速,因為有許多公開的代碼可以參考和移植,實時性能RT_Linux Hardhat Linux 等嵌入式Linux支持,實時性能穩(wěn)定性好安全性好。嵌入式linux既繼承了Internet上無限的開放源代碼資源,又具有嵌入式操作系統(tǒng)的特性。常用的嵌入式操作系統(tǒng)有如下幾種:WinCE,Vxworks,Symbian,Linux,uClinux,ETLinux等。外圍設備在嵌入式系統(tǒng)中主要用于完成存儲、通信、調(diào)試、顯示等輔助功能,如存儲器及外設器件和I/O端口、圖形控制器等。兩種定義分別是在不同方面來闡述嵌入式系統(tǒng)的特點,可以將嵌入式系統(tǒng)簡單的理解為一種軟件和硬件的綜合體,將電子、計算機技術(shù)與具體應用相結(jié)合后的產(chǎn)物,是一種體型小巧、功能強大的集成系統(tǒng)。應用程序控制著系統(tǒng)的運作和行為;而操作系統(tǒng)則控制著應用程序編程與硬件的交互作用。 嵌入式系統(tǒng)概述嵌入式系統(tǒng)是集軟、硬件于一體的可獨立工作的“器件”。嵌入式系統(tǒng)有別于一般的計算機處理系統(tǒng),它不具備像硬盤那樣大容量的存儲介質(zhì),而大多使用閃存(Flash Memory)作為存儲介質(zhì)。作為一項成熟的技術(shù),KDE(Koll Desktop Environment,k桌面環(huán)境)桌面系統(tǒng)對于嵌入式窗口系統(tǒng)的設計有很大參考價值,Qt/Embedded給嵌入式窗口系統(tǒng)提供了很好的框架,提供了豐富的窗口小部件(Widgets),并且還支持窗口部件的定制,因此它可以為用戶提供漂亮的圖形界面。隨著嵌入式Linux技術(shù)的成熟,定制需要的尺寸尤為方便,同時支持更多平臺,并從早期的試用階段邁進到成為嵌入式市場的主流。據(jù)調(diào)查,目前國際上有兩百多種嵌入式操作系統(tǒng),這些嵌入式操作系統(tǒng)可以分為實時操作系統(tǒng)和非實時操作系統(tǒng)兩種。 研究目的和意義目前,在 Linux下應用軟件開發(fā)領域急需一種容易學習、成本低、效率高的GUI應用程序開發(fā)方法,以解決Linux應用程序的易用性不高,應用范圍相對狹窄的問題。嵌入式系統(tǒng)幾乎包括了生活中的所有電器設備,如掌上PDA、移動計算設備、電視機頂盒、手機上網(wǎng)、數(shù)字電視、多媒體、汽車、微波爐、數(shù)字相機、家庭自動化系統(tǒng)、電梯、空調(diào)、安全系統(tǒng)、自動售貨機、蜂窩式電話、消費電子設備、工業(yè)自動化儀表與醫(yī)療儀器等。嵌入式Linux具有可用于多種硬件平臺、源碼開放、內(nèi)核高效穩(wěn)定等優(yōu)點,使其成為嵌入式領域主流的嵌入式操作系統(tǒng)。嵌入式系統(tǒng)的飛速發(fā)展離不開嵌入式處理器和嵌入式操作系統(tǒng)的發(fā)展。嵌入式系統(tǒng)指的是把計算機系統(tǒng)作為一個信息處理部件嵌入到應用系統(tǒng)中而形成的系統(tǒng),是適應具體應用系統(tǒng)在功能、可靠性、成本及功耗諸多方面更多的綜合要求的專用計算機系統(tǒng),它是計算機技術(shù)追求經(jīng)濟型、小型化、可靠性、高速度和智能型的必然結(jié)果。關鍵詞 linux C語言 qt 嵌入式 S3C2440ALCompile using qt based on Linux platform digital photo frameAbstract The modern age rapid development of science and technology, and human history is about to enter a new era. Embedded Linux system has been more and more close to our life, Linux is the most popular free puter operating system kernel. It is a C language and in assembly language, accord with the POSIX of Unix operating system. Embedded Linux is will increasingly popular Linux operating system, can cut out modification in embedded puter system running on an operating system. Embedded Linux inherits the Internet on unlimited resources, and open source operating system has the characteristics of embedded. This paper briefly introduces the Linux platform based on QT in the digital photo frame, piled using the Embedded Linux kernel and QT to MiniGUI, Microwindows/Embedded security, such as graphical user interface Embedded the technical characteristics, and introduced the key application QT/Embedded security transplant a GUI application to Mini2440 experiment board process, in which Mini2440 experiment board, use S3C2440AL chip, and kernel.Keywords Linux C language qt embedded S3C2440AL目錄1. 前言 1 研究背景 1 研究目的和意義 22. 嵌入式系統(tǒng)和嵌入式Linux 4 嵌入式系統(tǒng)概述 4 嵌入式linux 6 嵌入式Linux的特點和優(yōu)勢 6 7 linux內(nèi)核描述 8 linux內(nèi)核系統(tǒng)體系結(jié)構(gòu) 9 113. 嵌入式Linux系統(tǒng)GUI設計分析 13 圖形用戶界面概述 14 嵌入式系統(tǒng)的GUI簡介 14 GUI的組成 17 Qt/Embedded分析 19 Qt/Embedded的工作模式 19 Qt/Embedded中客戶端/服務器通信方式 214 QT技術(shù) 22 QT的優(yōu)勢 22 QT圖形用戶界面 23 QT Creator的特點以及優(yōu)勢 235 軟硬件開發(fā)環(huán)境 24 25 Mini2440特點 25 Mini2440開發(fā)板硬件資源特性 26 27 28 Linux內(nèi)核和yaffs文件系統(tǒng)移植 316 數(shù)碼相框程序的移植過程 33 移植QT 33 QT源代碼編譯 33 交叉編譯 34 程序開發(fā) 34 主程序中創(chuàng)建類 34 制定程序框架 35 編輯調(diào)試程序 35 各個功能的程序設計 36 文件管理模塊的設計 36 圖片播放模塊的設計 39 系統(tǒng)設置模塊的設計 41 設計成果 437 結(jié)論 44謝辭 45參考文獻 461. 前言21世紀,隨著現(xiàn)代科學技術(shù)的飛速發(fā)展,人類歷史即將進入一個嶄新的時代──信息時代。它是一個用C語言和匯編語言寫成,符合POSIX標準的類Unix操作系統(tǒng)。嵌入式Linux系統(tǒng)已經(jīng)越來越貼進我們的生活,Linux是最受歡迎的自由電腦操作系統(tǒng)內(nèi)核。本文簡要介紹在Linux平臺上基于QT編譯數(shù)碼相框,其中運用到了嵌入式Linux內(nèi)核以及Qt/Embedded,MiniGUI,Microwindows等嵌入式圖形用戶界面的技術(shù)特點,并重點介紹應用Qt/Embedded移植一個圖形界面程序到Mini2440實驗板的過程,其中Mini2440實驗板,采用S3C2440AL芯片。嵌入式系統(tǒng)得到迅猛發(fā)展和普及,嵌入式技術(shù)的研究與發(fā)展成為當前的一個熱點話題。近年來,隨著計算機、微電子、通信及網(wǎng)絡技術(shù)的發(fā)展,嵌入式系統(tǒng)已經(jīng)應用于工業(yè)控制、家用電器等領域,并廣泛用于移動計算機平臺、信息家電、無線通信設備、電子商務平臺及軍事設備。嵌入式操作系統(tǒng)方面,開源系統(tǒng)Linux由于很多程序員的加入,使其不斷的在發(fā)展壯大。目前,嵌入式技術(shù)已成為通信和消費類產(chǎn)品的共同發(fā)展方向。Linux是現(xiàn)代操作系統(tǒng)的典型代表,具有靈活性高、移植性強、可靠性好,支持多種硬件體系結(jié)構(gòu)、源代碼開放等特點,所以在Linux的基礎上,借鑒它