簡易檢索 / 詳目顯示

研究生: 陳吳俊
Wu-chun Chen
論文名稱: 基於Android核心架構之DVR系統研究
Design of Android-based DVR Systems
指導教授: 陳俊良
Jiann-Liang Chen
口試委員: 吳中實
none
劉馨勤
Hsin-Chin Liu
郭耀煌
none
郭斯彥
none
學位類別: 碩士
Master
系所名稱: 電資學院 - 電機工程系
Department of Electrical Engineering
論文出版年: 2011
畢業學年度: 99
語文別: 中文
論文頁數: 60
中文關鍵詞: Ashmem中介軟體SDKKernelHi3515DVR系統
外文關鍵詞: Ashmem, Middleware, SDK, Kernel, Hi3515, DVR
相關次數: 點閱:309下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報

Android系統是Google為了踏入智慧型手機產業所提供一個開放式軟體平台,近年來,越來越多智慧型手機裝置採用Android為作業系統,代表Android系統的功能特性,已滿足部分人們生活上的需求,使其開放原始碼的特性,也讓開發者有很大的研究發展空間,尤其現在應用於其他非手持裝置產品的嵌入式系統,也漸漸地使用Android系統做為軟體開發的核心。

有別於一般Linux系統架構,Android系統把各個軟體層次結構:如核心層、應用層以及Android系統特有中介軟體層(Middleware)的部份,因此有些硬體平台只支援一般Linux系統架構可能無法展現Android系統特有功能,所以本文選用Hi3515為主要硬體核心架構所組成的嵌入式DVR(Digital Video Recorder)系統,在此DVR平台軟體架構只能支援一般的Linux Kernel系統和硬體核心架構的限制情形下,可能無法納入Android系統內部軟體架構裡所有層次,因此本文在Android系統軟體架構核心(Kernel)程式找出與一般Linux系統核心程式不同之處,做比較與分析該兩者核心程式看有多少功能上差異,然後進行修改程式把Android系統核心部份程式移植到一般Linux Kernel系統裡面,並且執行編譯程式,完成Android核心程式移植到一般Linux核心程式實作。

最後本文將上述兩者核心系統裡面的應用層,建立同樣多媒體應用程式,使DVR具有錄影(REC)跟回放(Playback)的功能,然後在具有Android核心系統的多媒體應用程式中,加入Ashmem功能,同時也將利用Linux系統top指令工具,來分析兩者不同核心系統的整體效能,因此得到分析結論是Android核心系統比一般的Linux系統可節省5%~10%整體系統效能,且維持DVR系統穩定性。


Google builds its smart phone industry by providing an open software platform, Android. Recently, more and more smart phones take Android as their operating system. Android smart phones help people to meet their daily communication and information needs. Being an open source operating system, Android gives developers a great space for research and development. Particularly, Android now is not only used in handheld devices, but also some non-embedded systems.

Unlike ordinary Linux system architecture, Android's architecture is divided into several levels such as the core layer, application layer, middleware layer, and Android system-specific part. So some common hardware platform supporting Linux system may not easily support Android system-specific features. Therefore, we use an embedded DVR (Digital Video Recorder) system with Hi3515 as our main hardware. This DVR architecture easily supports Linux Kernel, but it does not trivially support Android software architecture. This article is to find the differences between Linux, Android, the embedded DVR, and to port Android Kernel onto the embedded DVR.

Finally, for the ported Android and a general Linux Kernel, we build the same multimedia applications, so that the DVR can playback the video, and we also add Ashmem function. We use the Linux system top command tool After analyzing overall performance of two systems, we get a conclusion that the ported Android system is stable and has 5%~10% better performance than the general Linux Kernel.

中文摘要Ⅰ 英文摘要Ⅱ 誌謝Ⅲ 目錄Ⅳ 圖目錄Ⅵ 表目錄VII 第一章 緒論1 1.1 研究動機1 1.2 研究目的2 1.3 章節提要3 第二章 研究背景介紹4 2.1 Hi3515硬體架構介紹4 2.2 DVR功能介紹7 2.3 Android系統介紹12 2.3.1 Android特點12 2.3.2 Android軟體架構介紹12 2.3.3 Android 應用程式框架功能介紹16 第三章 Android核心移植實作17 3.1 Android核心原始碼結構介紹17 3.2 Android核心移植作業要點18 3.3 比對Android系統核心與一般Linux Kernel不同之處19 3.4 Android核心程式移植顯示於一般核心目錄20 3.5 Android核心程式移植過程說明22 3.6 建立多媒體應用程式27 3.7 建立多媒體應用程式過程27 3.7.1 多媒體應用程式建立錄影(REC)功能程式說明30 3.7.2 多媒體應用程式建立圖形化介面功能程式說明33 3.7.3 多媒體應用程式建立回放(Play Back)功能程式說明37 3.8 DVR實現Android核心系統功能40 第四章 兩者核心系統效能評估分析43 4.1 效能評估分析介紹43 4.2 兩者核心系統效能評估測試方法43 4.3 Linux系統測試效能工具介紹43 4.4 使用Ashmem方法導入影像編解碼功能程式46 4.5 兩者核心系統效能評估數據49 4.5.1 兩者核心系統記憶體分析50 4.5.2兩者核心系統CPU負載使用率相關數據50 4.6 兩者核心系統效能CPU負載使用率分析53 第五章 結論與未來展望57 參考文獻58

[1] Welcome to Android Open Source, http://source.android.com/ (last visited April 27, 2011)
[2] Android Developer, http://developer.android.com/ last visited April 10, 2011)
[3] N.Vun, H.F. Hor and J.W. Chao, “Real-time Enhancements for Embedded Linux,”Proceedings of the IEEE International Conference on Parallel and Distributed Systems, pp. 737-739, 2008.
[4] M. Wojtczyk and A. Knoll, “A Cross Platform DevelopmentWorkflow for C/C++ Applications,” Proceedings of the Third International Conference on Software Engineering Advances” pp. 224-228, 2008.
[5] C. Lee, S. H. Baek and K. H. Park, “A Hybrid Flash File System Based on NOR and NAND Flash Memories for Embedded Devices,” Proceedings of the IEEE transactions on computers,” pp. 1002-1008, 2008.
[6] Hi3515 SOC, http://www.hisilicon.com/ (last visited April 6, 2011)
[7] J. Korst, V. Pronk, M. Barbieri, W. Verhaegh and W. Michiels, “Scheduling TV Recordingsfor a Recommender-Based DVR,” Proceedings of the IEEE 14th International Symposium on Consumer Electronics, 2010
[8] H. Jie and G.B.Zhang, “Research Transplanting Method of Embedded Linux Kernel Based on ARM Platform,” Proceedings of the International Conference of Information Science and Management Engineering, pp. 35-38, 2010.
[9] Android open source project, http://android.git.kernel.org (last visited March 9, 2011)
[10] Hi3515 API, “Hi3520/Hi3515 Media Processing Software Development Reference,” pp. 20-363, 2010.
[11] Lei Zhang and Zhengfeng Wang, “Design of Embedded Control System Based on ARM9 Microcontroller,” Proceedings of the International Conference on Electrical and Control Engineering, pp. 3579-3582, 2010.
[12] Alexsandro C. Bonatto, Soares, Andre B.,Susin and A. Altamiro, “Multichannel Sdram Controller Desing For H.264/AVC Video Decoder, ” Proceedings of the VII Southern Conference on Programmable Logic (SPL), 2011, pp. 137-142, 2011.
[13] W. H. Lee and J. H. Kim, “H.264 Implementation with Embedded Reconfigurable Architecture,” Proceedings of the Sixth IEEE International Conference on Computer and Information Technology (CIT'06), pp. 247-252, 2006.
[14] D.T. Vo and T.Q. Nguyen, “Quality Enhancement for Motion JPEG Using Temporal Redundancies,” Proceedings of the IEEE transactions on circuits and systems for video technology, pp. 609-619, 2008.
[15] ITU-R BT.656, http://en.wikipedia.org/wiki/ITU-R_BT.656 (last visited April 7, 2011)
[16] NTSC, http://en.wikipedia.org/wiki/NTSC (last visited April 20, 2011)
[17] PAL, http://en.wikipedia.org/wiki/PAL (last visited April 20, 2011)
[18] F. Zhang and Z. Li, “ The Technical Differences between Serial ATA and Ultra ATA Technology,” Proceedings of the International Forum on Information Technology and Applications, pp. 659-663, 2009.
[19] HTTP-Hypertext Transfer Protocol, http://www.w3.org/Protocols/ (last visited April 12, 2011)
[20] Framebuffer, http://en.wikipedia.org/wiki/Framebuffer (last visited May 3, 2011)
[21] X.W. Su, S.P. Wang, D.M. Zhu and Q. Zhu, “ RS-485 Serial Port Pseudo-full-duplex Communication Research and Application,”Proceedings of the Prognost ics and System Health Management Conference, 2010.
[22] C-W. Chang, C-Y. Lin, C-T. King, Y-F. Chung, S-Y. Tseng, “ Implementation of JVM Tool Interface on Dalvik Virtual Machine,” Proceedings of the International Symposium on VLSI Design Automation and Test (VLSI-DAT), pp. 143-146, 2010.
[23] Y. WU, J. Luo and L. Luo, “ Porting mobile web application engine to the Android platform,” Proceedings of the IEEE International Conference on Computer and Information Technology, pp. 2157-2161, 2010.
[24] Android Architecture | Android Developers http://developer.android.com/guide/basics/what-is-android.html (last visited May 12, 2011)
[25] O. Purdila, L. A. Grijincu and N. Tapus, “LKL: The Linux Kernel Library,” Proceedings of the 9th RoEduNet IEEE International Conference, pp. 328-333, 2010.
[26] N. Kuzmanovic, T. Maruna, M. Savic and G. Miljkovic, “Google’s Android as an application environment for DTV decoder system,” Proceedings of the IEEE 14th International Symposium on Consumer Electronics, pp. 1-5, 2010.
[27] Android Low Memory Killer, http://www.netmite.com/android/mydroid/development/pdk/docs/intro_source_code.html (last visited May 16, 2011)
[28] MemoryFile | Android Developers, http://developer.android.com/reference/android/os/MemoryFile.html (last visited May 2, 2011)
[29] Android-logger, http://code.google.com/p/android-logger/ (last visited May 3, 2011)
[30] Android Linux kernel additions, http://www.lindusembedded.com/blog/2010/12/07/android-linux-kernel-additions/ (last visited May 3, 2011)
[31] The Nano-X Windows System, http://www.microwindows.org/ (last visited April 7 , 2011)
[32] Malloc - a memory allocator, http://pubs.opengroup.org/onlinepubs/009695399/functions/malloc.html (last visited April 11, 2011)
[33] WANG Li –xin, and KANG Jing, “MMAP System Transfer in Linux Virtual Memory Management,” Proceedings of the First International Workshop on Education Technology and Computer Science, pp. 675-679, 2009.
[34]Top (Software), http://en.wikipedia.org/wiki/top_command (last visited April 13, 2011)

無法下載圖示 全文公開日期 2016/07/01 (校內網路)
全文公開日期 本全文未授權公開 (校外網路)
全文公開日期 本全文未授權公開 (國家圖書館:臺灣博碩士論文系統)
QR CODE