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

正文內(nèi)容

全國高校arm嵌入式教學及科研師資高級培訓(xùn)班講稿--資料下載頁

2025-07-18 09:35本頁面
  

【正文】 ow系統(tǒng)的緊縮開發(fā),使之能夠在嵌入式系統(tǒng)上運行。國外已經(jīng)開發(fā)出了大小約為 800K的 X服務(wù)器。這對西方國家來說基本能夠滿足嵌入式系統(tǒng)的需求了。但該系統(tǒng)的源代碼尚不開放,從而很難進行本地化開發(fā)。 93 Linux下的 GUI – MicroWindows uClinux上的圖形系統(tǒng) ? MicroWindows是一個開放源碼的項目,目前由美國一家公司在主持開發(fā)。該項目的開發(fā)非?;钴S,國內(nèi)也有人參與了其中的開發(fā),并編寫了 GB2312等字符集的支持。 ? 該項目的主要特色在于提供了比較完善的圖形功能,包括一些高級的功能,比如 Alpha混合,三維支持, TrueType字體支持等。但作為一個窗口系統(tǒng),該項目提供的窗口處理功能還需要進一步完善,比如控件或構(gòu)件的實現(xiàn)還很不完備,鍵盤和鼠標等的驅(qū)動還很不完善。 94 Linux下的 GUI – OpenGUI uClinux上的圖形系統(tǒng) ? OpenGUI在 Linux系統(tǒng)上存在已經(jīng)很長時間了。最初的名字叫 FastGL,只支持 256的線性顯存模式。但目前也支持其他顯示模式。這個庫是用 C++編寫的,只提供 C++接口。 95 Linux下的 GUI – QT/Embedded uClinux上的圖形系統(tǒng) ? QT/Embedded是著名的 QT庫開放商正在進行的面向嵌入式系統(tǒng)的 QT版本。這個版本的主要特點是可移植性較好,許多基于 QT的 X Window程序可以非常方便地移植到嵌入式版本。但是該系統(tǒng)不是開放源碼的,如果你要使用這個庫,可能需要支付昂貴的授權(quán)費用。 96 Linux下的 GUI – MiniGUI uClinux上的圖形系統(tǒng) ? MiniGUI是一種面向嵌入式系統(tǒng)或者實時系統(tǒng)的圖形用戶界面支持系統(tǒng)。它主要運行于 Linux控制臺,實際可以運行在任何一種具有 POSIX線程支持的 POSIX兼容系統(tǒng)上。 ? MiniGUI同時也是國內(nèi)最早出現(xiàn)的幾個自由軟件項目之一。是由中國人開發(fā)的 GUI。 97 MiniGUI主要特色 1 uClinux上的圖形系統(tǒng) ? 遵循 LGPL 條款的純自由軟件 ? 提供了完備的多窗口機制。這包括:多個單獨線程中運行的多窗口、單個線程中主窗口的附屬 ? 對話框和預(yù)定義的控件類(按鈕、單行和多行編輯框、列表框、進度條、工具欄等) ? 消息傳遞機制 ? 多字符集和多字體支持,目前支持 ISO8859 GB231Big5 等字符集,并且支持各種光柵字體和 TrueType、 Type 1 等矢量字體 ? 全拼、五筆等漢字輸入法支持 ? BMP、 GIF、 JPEG、 PCX、 TGA 等常見圖像文件的支持 ? Windows的資源文件支持,如位圖、圖標、光標等 98 MiniGUI主要特色 2 uClinux上的圖形系統(tǒng) ? 插入符、定時器、加速鍵等 ? 其他( Beep、 ETC/INI 文件操作等) ? 小巧。包含全部功能的庫文件大小為 300 K左右 ? 可配置。可根據(jù)項目需求進行定制配置和編譯 ? 高穩(wěn)定性和高性能。 ? 可移植性好。目前, MiniGUI可以在 X Window和 Linux控制臺上運行。 99 MiniGUI – 多線程和多窗口 uClinux上的圖形系統(tǒng) ? MiniGUI中的窗口基本分四類,分別為主窗口、對話框、控件和主窗口中的子窗口。 ? MiniGUI中的主窗口和 Windows應(yīng)用程序的主窗口概念類似,但有一些重要的不同, MiniGUI中的每個主窗口及其附屬主窗口對應(yīng)于一個單獨的線程,通過函數(shù)調(diào)用可建立主窗口以及對應(yīng)的線程。每個線程有一個消息隊列,屬于同一線程的所有主窗口從這一消息隊列中獲取消息并由窗口過程(回調(diào)函數(shù))進行處理。 100 MiniGUI – 對話框和標準控件 uClinux上的圖形系統(tǒng) ? MiniGUI中的對話框是一種特殊的窗口,對話框一般和控件一起使用,這兩個概念和 Windows或 X Window中的相關(guān)概念是類似的。 ? MiniGUI支持的控件類型有: ?靜態(tài)框:文本、圖標或矩形框等。 ?文本框:單行或多行的文本編輯框。 ?按鈕:單選鈕、復(fù)選框和一般按鈕等。 ?列表框。 ?進度條。 ?工具欄。 101 MiniGUI – 其它 GUI元素 uClinux上的圖形系統(tǒng) ? MiniGUI還支持彈出式菜單、插入符、定時器、光標、快捷鍵等常見的 GUI元素 102 MiniGUI – 消息和消息循環(huán) uClinux上的圖形系統(tǒng) ? 在任何 GUI系統(tǒng)中,均有事件或消息驅(qū)動的概念。 MiniGUI使用 消息驅(qū)動 作為應(yīng)用程序的創(chuàng)建構(gòu)架。 ? 在消息驅(qū)動的應(yīng)用程序中,計算機外設(shè)發(fā)生的事件,例如鍵盤鍵的敲擊、鼠標鍵的按擊等,都由支持系統(tǒng)收集,將其以事先的約定格式翻譯為特定的消息。應(yīng)用程序一般包含有自己的消息隊列,系統(tǒng)將消息發(fā)送到應(yīng)用程序的消息隊列中。應(yīng)用程序可以建立一個循環(huán),在這個循環(huán)中讀取消息并處理消息,直到特定的消息傳來為止。這樣的循環(huán)稱為消息循環(huán)。一般地,消息由代表消息的一個整型數(shù)和消息的附加參數(shù)組成。 ? 應(yīng)用程序一般要提供一個處理消息的標準函數(shù)。在消息循環(huán)中,系統(tǒng)可以調(diào)用此函數(shù),應(yīng)用程序在此函數(shù)中處理相應(yīng)的消息。 103 MiniGUI – 圖形和輸入抽象層 uClinux上的圖形系統(tǒng) ? 在 MiniGUI中引入了圖形和輸入抽象層( Graphics and Input Abstract Layer, GAL 和 IAL)的概念。抽象層的概念類似 Linux內(nèi)核虛擬文件系統(tǒng)的概念。 ? 它定義了一組不依賴于任何特殊硬件的抽象接口,所有頂層的圖形操作和輸入處理都建立在抽象接口之上。而用于實現(xiàn)這一抽象接口的底層代碼稱為 “ 圖形引擎 ” 或 “ 輸入引擎 ” ,類似操作系統(tǒng)中的驅(qū)動程序。這實際是一種面向?qū)ο蟮某绦蚪Y(jié)構(gòu)。 ? 利用 GAL和 IAL, MiniGUI可以在許多圖形引擎上運行,比如SVGALib和 LibGGI,并且可以非常方便地將 MiniGUI移植到其他POSIX系統(tǒng)上,只需要根據(jù)其抽象層接口實現(xiàn)新的圖形引擎即可。GAL和 IAL的實現(xiàn),大大提高了 MiniGUI 的可移植性。用戶不需要對 MiniGUI 的上層代碼進行絲毫修改,只需實現(xiàn)新的 GAL和IAL 引擎,就可以讓 MiniGUI運行在其他基于不同硬件的嵌入式Linux系統(tǒng)上。 104 MiniGUI – 多字體和多字符集支持 uClinux上的圖形系統(tǒng) ? MiniGUI在處理字體和字符集的模塊當中引入了邏輯字體的概念。 ? 邏輯字體是 MiniGUI用來處理文本(包括文本輸出和文本分析)的頂層接口。邏輯字體接口將各種不同的字體(比如宋體、黑體和揩體)和字體格式(比如等寬字體、變寬字體等光柵字體和 TrueType、 Type1 等矢量字體),以及各種不同字符集( ISO885 GB231 Big UNICODE等)綜合起來,從而可以通過統(tǒng)一的接口顯示不同字符集的不同字體的文本,并且還可以分析各種字符集文本的組成,比如字符、單詞等。 ? 在多字體和多字符集的支持中, MiniGUI也采用了面向?qū)ο蟮能浖夹g(shù),使得添加新的字體支持和新的字符集支持非常方便。 105 MiniGUI圖形應(yīng)用程序編程 uClinux上的圖形系統(tǒng) ? MiniGUI采用 事件驅(qū)動編程 。 ? 鍵盤和鼠標動作產(chǎn)生由應(yīng)用程序不斷輪詢的事件。這些事件被發(fā)送到具有焦點的窗口,而 應(yīng)用程序 把這些事件交由和該窗口相關(guān)聯(lián)的例程來處理。這些窗口例程通常是由應(yīng)用程序定義的,或者是某些標準例程中的一個。 ? 操作系統(tǒng)、其他窗口的事件處理例程和應(yīng)用程序代碼都可以產(chǎn)生事件。 ? 用于處理事件的窗口例程通常標志了某一個 “ 窗口類 ” ,具有相同窗口例程的窗口實例被認為是屬于同一窗口類。 106 MiniGUI架構(gòu) uClinux上的圖形系統(tǒng) ? MiniGUIThreads版 ?MiniGUi的早期版本(即 MiniGUIThreads版)采用基于POSIX線程的消息傳遞和窗口管理機制,這種實現(xiàn)提供最大程度上的數(shù)據(jù)共享,但同時造成了 MiniGUI體系結(jié)構(gòu)上的脆弱。如果某個線程因為非法的數(shù)據(jù)訪問而終止運行,則整個系統(tǒng)都將受到影響。 ? MiniGUiLite版 ?MiniGUI從 Lite版本。 Lite版本的 MiniGUi使用進程機制,拋棄了 pthread庫,從而使得 MiniGUI更穩(wěn)定和更高效率。 107 MiniGUI Lite版 uClinux上的圖形系統(tǒng) ? MiniGUI Lite區(qū)別于 MiniGUIThreads的最大不同在于我們可以在 MiniGUILite程序中創(chuàng)建多個窗口,但不能啟動新的線程建立窗口。除此之外,其他幾乎所有的 API都和 MiniGUI原有版本是兼容的。 ? JX44B0使用的是 MiniGUILite版本。 ? MiniGUI提供類 Win32的 API,熟悉 Win32編程的讀者可以很快地掌握 MiniGUI編程的基本方法和各個 API接口函數(shù)。 108 MiniGUI應(yīng)用程序 helloworld示例 uClinux上的圖形系統(tǒng) ? 頭文件 ? 程序入口點 ? 設(shè)置顯示區(qū)域 ? 創(chuàng)建和顯示主窗口 ? 消息循環(huán) ? 窗口過程函數(shù) ? 屏幕輸出 ? 退出 109 Helloworld示例 1 uClinux上的圖形系統(tǒng) MiniGUI包含頭文件 110 Helloworld示例 – 2 uClinux上的圖形系統(tǒng) 設(shè)置顯示區(qū)域 MiniGUI C程序入口點 設(shè)置窗口屬性 創(chuàng)建和顯示主窗口 開始消息循環(huán) 程序的退出 111 Helloworld示例 3 uClinux上的圖形系統(tǒng) 窗口過程函數(shù) 退出消息 屏幕輸出 112 基于 ARM和 uClinux的開發(fā) 謝謝!
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1