Responsive image
博碩士論文 etd-0210106-162536 詳細資訊
Title page for etd-0210106-162536
論文名稱
Title
Qt/Embedded之移植及其與OpenGL ES之整合研究
On the Porting of Qt/Embedded and Its Integration with OpenGL ES
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
58
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2006-01-13
繳交日期
Date of Submission
2006-02-10
關鍵字
Keywords
嵌入式系統、視窗系統
Qt/Embedded, Window System, OpenGL ES, Linux, Embedded System, EGL, GLUT
統計
Statistics
本論文已被瀏覽 5689 次,被下載 0
The thesis/dissertation has been browsed 5689 times, has been downloaded 0 times.
中文摘要
  隨著近幾年來快速發展,現今的嵌入式系統嚴然就像是一台小型電腦,不僅僅包含了作業系統和圖形視窗介面,更在各個平台上發展了所需的套件軟體,提供使用者更好的使用性及更強大的功能,視窗系統 Qt/Embedded 和 3D 繪圖的軟體介面OpenGL ES 便是針對嵌入式系統所發展的軟體之一 。本論文是針對在發展平台 Versatile PB 926EJ-S 上,進行 Qt/Embedded 和 OpenGL ES 的整合以及做效能上的評估和問題的探討。

  雖然在發展平台上所使用的晶片ARM926EJ-S有包含VFP9向量浮點輔助處理器,但考慮到在沒有支援浮點運器的嵌入式系統運算效能上的考量,將浮點數的運算的部分改為定點數的運算,改善運算效率,以增加其效能。另外,我們必需實作一個由OpenGL ES 裡所定義的平台介面層EGL,EGL介面可以讓OpenGL ES和視窗系統做連接,提供OpenGL ES創建一個可以繪圖的視窗,在這個視窗上完成其想要的動作。為了要達到視窗系統上的平台獨立,不用因為視窗系統的不同而修改程式碼,我們另外設計了一層類似GLUT的GLUT ES介面,透過GLUT ES,可以讓同樣的程式在不同的視窗系統下執行。最後,我們使用了幾個GLUT ES介面和OpenGL ES所撰寫的程式碼來進行效能上的測試。
Abstract
  An embedded system has improved quickly in recent years and now functions like a small computer. Equipped with operating systems (OS), graphic user interfaces (GUI), and software developed for various platforms, an embedded system provides users with services more powerful and friendlier than ever. Qt/Embedded and OpenGL ES are an OS and a GUI developed for embedded systems. In this thesis, We integrated Qt/Embedded with OpenGL ES on a Versatile PB 92EJ-S and conducted various tests.

  The Versatile PB 92EJ-S was equipped with ARM926EJ-S, an onboard chip capable of performing VFP9 vector floating operation. However, not all embedded systems are powered by a floating coprocessor. To make the test results applicable to all systems, We performed only fixed-point operations, a practice also improving the overall performance. In addition, to provide communications between OpenGL ES and Windows and interfaces for OpenGL ES to draw, We implemented EGL, a platform interface layer defined in OpenGL ES. Furthermore, We developed GLUT ES, a modification of GLUT, to make the embedded system compatible with Windows of different versions. Finally, We benchmarked the platform with programs developed by GLUT ES interfaces and OpenGL ES.
目次 Table of Contents
List of Tables iii
List of Figures iv
List of Listings v
Acknowledgments vii
Chapter 1 Introduction 1
1.1 Motivation 1
1.2 Contribution 3
1.3 Organization of the Thesis 3
Chapter 2 RelatedWork 4
2.1 Introduction to Floating-Point and Fixed-Point 4
2.1.1 IEEE Standard 754 Floating-Point 4
2.1.2 Fixed-Point Representation 5
2.1.3 Pros and Cons 5
2.2 Introduction to Qt/Embedded 6
2.3 Introduction to OpenGL ES 8
Chapter 3 Porting Qt/Embedded to Fixed-Point 9
3.1 Macro Definition and Expansion 9
3.2 Operator Overloading and Conversion Operator 10
3.2.1 Operator Overloading 10
3.2.2 Conversion Operator 12
3.3 Implementation of Qt/Embedded for Fixed-Point 13
3.3.1 Introduction to QFixedPoint Class 13
3.3.2 Implementation of QFixedPoint 13
3.3.3 Porting Qt/Embedded to Fixed-Point 20
Chapter 4 Implementation of EGL and GLUT ES 21
4.1 Introduction to GLUT ES 21
4.2 Implementation of EGL 22
4.2.1 eglState Structure 22
4.2.2 Initialization 24
4.2.3 Making Current 24
4.3 Implementation of GLUT ES 25
4.3.1 GlutESCtx t Class and GlutESWindow t Class 25
4.3.2 Initialization 28
4.3.3 Creating Windows 29
4.3.4 Main Event Loop 30
4.4 Integrating OpenGL ES and GLUT ES 30
Chapter 5 Performance Evaluation and Verification 33
5.1 Development Environment 33
5.1.1 Development Platform 33
5.1.2 Setting up the Development Environment 38
5.2 Performance Evaluation 42
5.3 GLUT ES Verification 43
5.3.1 Building GLUT ES Library 43
5.3.2 Experimental Result 44
Chapter 6 Conclusion and FutureWorks 46
6.1 Conclusion 46
6.2 Future Works 47
參考文獻 References
[1] Trolltech, Qt Toolkit—About Qt, http://www.mathematik.uni-ulm.de/help/qt-2.3.1/aboutqt.html.
[2] Trolltech, Company information, http://www.trolltech.com/
[3] Trolltech, Qt Toolkit—Enabling the Linux framebuffer, http://www.mathematik.uniulm.de/help/qt-2.3.1/HOWTO-framebuffer.html.
[4] Bjarne Stroustrup, The C++ Programming Language, Third Edition, Addison Wesley, 1997.
[5] GLUT Reference, http://www.opengl.org/resources/libraries/glut.html
[6] Woo Neider and Davis, OpenGL Programming Guide, Third Edition, Addison Wesley, 1999.
[7] Matthias Kalle Dalheimer, Programming with Qt, O’Reilly, 2000.
[8] Jasmin Blanchette and Mark Summerfield, C++ GUI Programming with Qt3, 2004.
[9] ARM, Versatile Platform Baseboard for ARM926EJ-S User Guide, http://www.arm.com/pdfs/DUI0224B vpb926ejs ug.pdf
[10] K. Yaghmour, Building Embedded Linux Systems, O’Reilly, 2003.
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:校內校外均不公開 not available
開放時間 Available:
校內 Campus:永不公開 not available
校外 Off-campus:永不公開 not available

您的 IP(校外) 位址是 18.224.31.41
論文開放下載的時間是 校外不公開

Your IP address is 18.224.31.41
This thesis will be available to you on Indicate off-campus access is not available.

紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code