freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于qt的多功能日歷設計與開發(fā)畢業(yè)設計(doc畢業(yè)設計論文)-在線瀏覽

2024-08-07 18:27本頁面
  

【正文】 等項目使用的GUI支持庫,所以有許多基于Qt/Embedded 的X Windows程序可以非常方便地移植到Qt/Embedded版本上,而本文所述設計主要是基于Qt/Embedded的應用上。它是為完成某種特定的功能而設計的。幾乎每個人都有一塊,并且每天都有上千萬的人們在使用著它,但是很少有人意識到有處理器和軟件在幫助他們。本章主要介紹嵌入式系統(tǒng)的概念,及Linux操作系統(tǒng)的特點和優(yōu)勢。隨著微電子技術和半導體技術的高速發(fā)展,超大規(guī)模集成電路技術和深亞微米制造工藝已十分成熟,從而使高性能系統(tǒng)芯片的集成成為可能,并推動著嵌入式系統(tǒng)向最高級構建形式,即片上系統(tǒng)SOC(System on a Chip)的水平發(fā)展,進而促使嵌入式系統(tǒng)得到更深入、更廣闊的應用。雖然嵌入式系統(tǒng)在工業(yè)、服務業(yè)、消費電子等領域的應用范圍不斷擴大,且已滲透到人們日常生活的方方面面,但是依然很難給它下一個明確的定義。國際電工與電子工程師協(xié)會(即IEEE)曾經把嵌入式系統(tǒng)定義為“控制、監(jiān)視或者輔助設備、機器和車間運行的裝置”。目前國內普遍認同的嵌入式系統(tǒng)的定義是“嵌入式系統(tǒng)是將計算機嵌入到某個應用系統(tǒng)內的一種計算機體系結構形式”。簡言之,嵌入式系統(tǒng)就是嵌入式計算機系統(tǒng)的簡稱[2]。將Linux植入嵌入式設備具有眾多的優(yōu)點。其次,Linux是可以定制的,其系統(tǒng)內核最小只有約134kB。另外,它與多數(shù)Unix系統(tǒng)兼容,應用程序的開發(fā)和移植相當容易。這些模塊運行的內核空間正是操作系統(tǒng)實現(xiàn)進程調度、中斷處理和程序執(zhí)行的部分,因此錯誤的代碼可能會破壞操作系統(tǒng),進而影響整個系統(tǒng)的可靠性和穩(wěn)定性。其中有代表性的包括:UClinux、ETLinux、ThinLinux、LOAF 等。 Linux與其他操作系統(tǒng)的比較將Linux與微軟的Windows相比較,確實Windows具有很好的互連性,且具有非常全面的軟件棧。僅僅將Windows OS加到你的產品中并實現(xiàn)商用是十分迅速的。但是你獲得功能性的同時,也就失去了差異化的機會。Windows的“體積”十分龐大。出于政治和法律上的考慮,微軟是不能將Windows進行拆分的。嵌入式Windows的版權費大約為每拷貝12~15美元。其它商業(yè)化的RTOS采用的也是這樣一種收取版稅的商業(yè)模式。Linux還具有很好的可靠性。另一個影響嵌入式系統(tǒng)對操作系統(tǒng)選擇的是商業(yè)因素,在這方面?zhèn)鹘y(tǒng)RTOS供應商和微軟的境遇是相同的。Linux則能給予使用者更多的選擇。即使他們選擇了MontaVista這樣商業(yè)化的Linux供應商,他們依然能夠保持對開放資源進行客戶化和利用的選擇性,他們可以選擇繼續(xù)和MontaVista合作或是離開。但是建立和維護一個基于Linux的平臺是很艱巨的工作,而對于用戶來說,這是一種無法創(chuàng)造附加值的工作。嵌入式應用程序平均的代碼長度最多是50萬行, 很多組織是沒有能力去管理4200萬行代碼的。但是Linux是開放源碼的,其發(fā)展速度十分迅速。而像MontaVista這樣的供應商會保持大量基礎性的投入跟蹤Linux的最新版本,并將其加入到產品中來。因此可以在相同的源代碼上建立針對MIPS、ARM、PowerPC或sH等不同處理器架構的Linux。3 圖形用戶界面GUI圖形用戶界面GUI(Graphical User Interface,又稱圖形用戶接口)是指采用圖形方式顯示的計算機操作用戶界面。本章主要介紹了常用的嵌入式GUI領域,其中被廣泛使用的是QT/Embedded、Microwindows和MiniGUI三種系統(tǒng),并重點敘述選擇QT/Embedded作為開發(fā)工具的原因,及QT/Embedded應用程序的運行方式、開發(fā)環(huán)境及工具和工作模式的簡要分析。GUI 是一種結合計算機科學、美學、心理學、行為學,及各商業(yè)領域需求分析的人機系統(tǒng)工程,強調人—機—環(huán)境三者作為一個系統(tǒng)進行總體設計。GUI的廣泛應用是當今計算機發(fā)展的重大成就之一,他極大地方便了非專業(yè)用戶的使用人們從此不再需要死記硬背大量的命令,取而代之的是可以通過窗口、菜單、按鍵等方式來方便地進行操作。而嵌入式GUI本身具有著輕型、占用資源少、高性能、高可靠性、便于移植、可配置等特點,具有強大的發(fā)展?jié)摿?。其中Qt是挪威的Trolltech公司的旗艦產品,作為跨平臺的應用程序框架,是開源左面系統(tǒng)KDE的基石。盡管已具備了基本的輕量級GUI系統(tǒng),但由于Flash磁盤空間、內存資源和功耗的限制,嵌入式Linux系統(tǒng)上的GUI應用軟件設計很大程序上不同于桌面系統(tǒng)應用軟件的開發(fā)。嵌入式GUI系統(tǒng)是計算機系統(tǒng)和用戶的接口,它要提供給上層的應用程序繪制圖形界面以及接收用戶輸入的能力。嵌入式GUI系統(tǒng)具有可移植性、較高的穩(wěn)定性和可靠性、較高的可配置性、系統(tǒng)開銷少等特點[5]。由于嵌入式開發(fā)人員對實時嵌入式系統(tǒng)在理解上的不同,使得這些GUI系統(tǒng)在接口定義、體系結構、功能特性等方面存在很大差別,它們所采取的技術路線也有所不同。“小”是MiniGUI的特色,它目前已經廣泛應用于通訊、醫(yī)療、工控、電子、機頂盒、多媒體等領域。它支持GB2312與BIG5字元集,其他字元集也可以輕松加入。使用 MiniGUI 成功開發(fā)產品的企業(yè)有華為、中興通訊、大唐移動、長虹、TCL、聯(lián)想、邁瑞、南瑞、炬力、D2 等。為什么 MiniGUI 能夠在如此眾多的嵌入式操作系統(tǒng)上運行?這是因為 MiniGUI 具有良好的軟件架構,通過抽象層將 MiniGUI 上層和底層操作系統(tǒng)隔離開來。MiniGUI 為嵌入式 Linux 系統(tǒng)提供了完整的圖形系統(tǒng)支持,是全球針對嵌入式 Linux僅有的兩個商用嵌入式GUI系統(tǒng)之一。雖然,MiniGUI在嵌入式或實時系統(tǒng)中已初展頭角,但是目前MiniGUI還存在諸多不足之處。 MicroWindows概述Microwindows 是一個著名的開放式源碼嵌入式GUI 軟件,目的是把圖形視窗環(huán)境引入到運行Linux 的小型設備和平臺上。 Microwindows 允許設計者輕松加入各種顯示設備、鼠標、觸摸屏和鍵盤等。這就是為什么現(xiàn)在在嵌入式系統(tǒng)中廣泛使用Microwindows 的原因。Microwindows 支持 Intel 16 位、32 位CPU,MIPS R4000 以及 ARM處理器芯片。這種特性的優(yōu)點突出體現(xiàn)在用戶設計的圖形程序不需重寫就可以被不同的工程共享,甚至可以運行在不同RTOS 的不同對象上。Microwindows 系統(tǒng)以圖形方式支持在主機平臺上的仿真目標平臺。 Microwindows 的圖形引擎能夠運行在任何支持readpixel, writepixel, drawhorzline, drawvertline 和setpalette 的系統(tǒng)之上。系統(tǒng)使用了優(yōu)化的繪制函數(shù),這樣當用戶在移動窗口時可以提供更好的響應。 Microwindows 支持新的Linux 內核幀緩存(FrameBuffer)結構,目前提供每像素 124 和32 位的支持,另外還支持彩色顯示和灰度顯示,其中彩色顯示包括真彩色(每像素116 和32 位)和調色板(每像素1, 2, 4 和 8 位)兩種模式。Microwindows支持窗口覆蓋和子窗口概念、完全的窗口和客戶區(qū)剪切、比例和固定字體,還提供了字體和位圖文件處理工具。在最底層,屏幕,鼠標/觸摸屏以及鍵盤驅動程序提供了對物理設備訪問的能力。在上層,實現(xiàn)多種API 以適應不同的應用環(huán)境。 Qt/Embedded概述Qt/Embedded是基于Qt的嵌入式GUI和應用程序開發(fā)的工具包,它可運行多種嵌入式設備上,主要運行在嵌入式Linux系統(tǒng)上,并且需要C++編譯器的支持,并為嵌入式應用程序提供Qt的標準API。在應用程序開發(fā)上使用與Qt相同的工具包,只需在目標嵌入式平臺上重新編譯即可。Qt/Embedded提供自身的輕量級窗口系統(tǒng),比使用Xlib和X Window更加緊湊; Qt/Embedded 的設計原則是不依賴于X server或者Xlib,而是直接訪問幀緩存,同其他解決方案如Qt/X11相比這樣做最顯著的效果是減少了內存消耗。Qt/Embedded還可以在編譯時去掉運行時所不需的特性,以減少內存的占用。通過設置src/tools/,定制用戶所需的原有Qt功能的一個子集。實現(xiàn)這一定制。若一些特性是依賴于其他特性的,依賴關系是在文件src/tools/。大部分用戶使用的設置在1500KB到4000KB之間。在系統(tǒng)中許多CUP時間和內存空間是被ELF(excutive linked file一種為Linux系統(tǒng)所采用的通用文件格式,支持動態(tài)連接)鏈接過程占用了。若運行時所需的應用程序和組件在編譯前就可以確定下來,則把所有的應用程序編譯鏈接成唯一的可執(zhí)行文件,并靜態(tài)鏈接于一個靜態(tài)鏈接庫()的方法比使用動態(tài)鏈接庫()和一組鏈接于這個庫的可執(zhí)行文件更能減少資源消耗。但這種方法對CPU和內存使用要求比較高的設備是非常有利的。若在編譯時Qt所使用的應用程序和組件并不能完全確定,可以把一些Qt組件編譯成動態(tài)鏈接庫文件或者插件。Qt/Embedded的類庫完全采用C++封裝,控件資源豐富,可移植性較好,開放的源碼使得開發(fā)人員可以在 GPL許可協(xié)議下自由地進行嵌入式GUI應用程序的移植與開發(fā)。嵌入式硬件平臺的確定PC上搭建Qt/Embedded開發(fā)環(huán)境交叉編譯Qt/Embedded庫并進行目標板的移植PC上進行QTE應用程序的開發(fā)交叉編譯應用程序在目標平臺上進行調試N程序運行正常Y發(fā)布應用程序圖31 Qt/Embedded移植與開發(fā)總體流程 三種GUI優(yōu)缺點分析下面以表31形式總結以上說敘述的三種圖形用戶界面GUI的優(yōu)缺點:表 3 1 三種GUI優(yōu)缺點分析圖形用戶界面優(yōu)點缺點MiniGUI(1)輕量級的圖形用戶界面支持(2)系統(tǒng)圖形抽象層(3)多字體和多字符集支持(4)兩個不同架構的版本Minithread和Minilite(1)控件功能不夠豐富(2)C代碼,擴展不利Microwindows(1)開源項目(1)典型的基于C/S體系結構(3)最底層是面向圖形輸出和鍵盤、鼠標或觸摸屏的驅動程序,中間層提供底層硬件抽象接口(1)無任何硬件加速能力(2)圖形引擎中存在許多低效算法,同時未經任何優(yōu)化(3)代碼質量差Qt/Embedded(1) 隨意設置程序界面的外觀(2) 非常容易的根據(jù)硬件特性定制(3) 有針對手機的Qtopia應用套件(4) 商用客戶較多(5) 當移植Qt/Embedded程序到不同平臺時,只需要重新編譯代碼,而不需要對代碼進行修改(6) 程序本地化很容易(7) 程序與Java集成很容易(1) 代碼量過大,最好用于flash大的智能手機(2) 結構過于復雜,很難進行底層太多的擴充(3) 商用需要一定的授權費用綜上對比,不難看出,Qt/Embedded是一個專門為小型設備提供圖形用戶界面的應用框架和窗口系統(tǒng)。作為一項成熟的技術,KDE桌面系統(tǒng)對于嵌入式窗口系統(tǒng)的設計有很大參考價值,Qtopia給嵌入式窗口系統(tǒng)提供了很好的框架,提供了豐富的窗口小部件(widgets),并且還支持窗口部件的定制,因此它可以為用戶提供漂亮的圖形界面。 Qt/Embedded介紹Qt/Embedded是Trolltech公司開發(fā)的面向嵌入式系統(tǒng)的Qt版本,Qt是KDE等項目使用的GUI支持庫,許多基于Qt的X Window程序可以非常方便地移植到Qt/Embedded上。同時將外部輸入設備抽象為keyboard和mouse輸入事件,底層接口支持鍵盤、鼠標、觸摸屏,以及用戶自定義的設備。主窗口程序提供輸入方式和啟動子應用程序的用戶界面。在命令行方式中鍵入qws選項,任何應用程序都可以運行為主窗口程序。通訊保持在一種很低的水平,子窗口程序可以不通過主窗口程序,而把所有繪制窗口的操作直接寫到幀緩存,包括自身的標題欄和其他部件。子窗口程序使用QCOP通道于主程序交換信息。應用程序可以通過與received()信號相連的槽作出響應。 開發(fā)環(huán)境及工具Qt/Embedded的窗口系統(tǒng)由多個程序組成,其中一個作為主窗口程序,用來分配子窗口的顯示區(qū)域,并產生鼠標和鍵盤事件。主窗口程序處理行為類似于子窗口程序,但有一些特殊。子窗口程序通過共享內存方式于主窗口程序進行通訊。所有這些都是由Qt/Embedded鏈接庫自動完成,對開發(fā)者來說是完全透明的。主程序只需簡單的向QCOP廣播信息,所有正在監(jiān)聽特定信道的應用程序就會收到。QProcess類提供了另外一種同步進程間通訊方式,通過直接寫外部程序的標準輸入、讀標準輸出和標準錯誤信息。在Qt/Embedded中,QWSServer類主要完成服務器的構建,QWSDisplay則主要完成客戶端的構建。在Qt/Embedded應用程序中只有一個用于服務器,一般是第1個啟動的Qt/Embedded應用程序,這個應用程序除了具有一般應用于Qt/Embedded應用程序的客戶端外,還具有服務器的功能。在Qt/Embedded中,QWSServer類主要完成服務器的構建,QWSDisplay則主要完成客戶端的構
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1