簡易檢索 / 詳目顯示

研究生: 吳奕羲
Wu, Yi-Hsia
論文名稱: 組合式元件軟體之元件管理器的設計與實作
The Design and Implement of a Component Manager for a Composite Component-Software System
指導教授: 陳祈男
Chen, Chy-Nan
學位類別: 碩士
Master
系所名稱: 工學院 - 工程科學系
Department of Engineering Science
論文出版年: 2003
畢業學年度: 91
語文別: 中文
論文頁數: 75
中文關鍵詞: 元件元件管理元件庫組合式軟體LINUX 核心元件軟體
外文關鍵詞: component management, composable software, LINUX kernel, component, component software, component repository
相關次數: 點閱:139下載:2
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 依據自己所需的系統功能,量身訂做一套完全屬於自己的軟體,是軟體界的一個夢想。為了達到這個夢想,許多人致力於軟體IC的研究,元件軟體設計準則也因此日漸受到重視。
    以元件為基礎的軟體設計方法,元件的重用性是很重要的一個議題。有了可供利用的元件後,接下來要面對的就是組合元件的問題。要建立一個元件組合的環境,必須先有一個設計藍圖,規劃好如何管理元件、如何組合元件以及如何取得所需元件。
    本論文以一樹狀關係圖 (稱為相依樹) 管理元件,利用樹的特性來表達元件間階層性的相依關係,並設計一套元件管理器系統,提供建立存放元件的元件庫、選取元件以及組合元件等功能。
    要在眾多的元件中找出所需的元件並非易事,論文中提出Recipe方式,將使用者需求具體化,透過各元件特徵的描述,系統自動幫使用者選出符合需求的元件。
    論文最後以近年來越來越熱門的LINUX作業系統核心為範例,將LINUX核心元件加入元件資料庫,供使用者選取,組合出其所需求的最佳核心,量身訂作一套符合功能需求的最佳作業系統核心。

    It’s a goal to design a customized program based on his own requirement. To reach it, many people spent time to research on software IC topic. The design of component software has been pay attention to it.
    The reusability of the component is an important issue for the component-base software design. After well-defined component, here comes the problem of composing components. To build a composite environment, we have to make a plan to manage components, compose components, and get the required component.
    This thesis proposes a dependence tree to manage components. And design a component manager to provide functions of establishing component repository, selecting components, and composing components.
    It’s not a easy case to choose components what we need from manifold components stored in component repository. We propose an easy way,Recipe, to specific requirement. By well-define component attributes, component manager will automatically choose the components fited in with requirement.
    The rest of this thesis gives an example on the hot LINUX kernel code. We add LINUX kernel component to component repository, and provide user to select component by their requirement. Finally, after composing the selected component, user will get the best matching requirement kernel.

    一、緒論 1 二、相關研究 7 2.1 元件軟體 7 2.2 LINUX 核心研究 11 2.2.1 什麼是LINUX作業系統 11 2.2.2 LINUX核心架構 16 三、相依樹的元件管理 22 3.1 相依樹的定義及表示法 22 3.2 元件與節點 23 3.2.1 元件定義 23 3.2.2元件關係 26 3.2.3 節點結構 27 3.3 元件取得與驗證 30 3.3.1 Recipe ─ 需求規格 30 3.3.2 選取流程 31 3.3.3 系統的驗證 32 四、元件管理器的設計與實現 34 4.1 元件庫的建立 34 4.1.1 節點的結構 34 4.1.2 節點的建立 37 4.1.3 元件相依樹的建立 38 4.1.4 元件庫存檔的格式 41 4.2 元件的選取與系統的驗證 44 4.2.1 元件相依樹的重建 45 4.2.2 元件的選取 46 4.2.3 系統驗證 47 4.3 Makefile產生器 47 4.3.1 GNU Makefile 規則 47 4.3.2 利用變數簡化Makefile 50 4.3.3 讓make來推衍command 51 4.3.4 管理器產生的makefile格式 53 五、應用於LINUX核心程式 55 5.1 LINUX核心元件 55 5.1.1 CPU相關元件 55 5.1.2 系統相關元件 56 5.1.3 Virtual File System 56 5.1.4 Network Interface 57 5.1.4 IPC 58 5.2 LINUX核心元件的相依樹的建立 58 5.3 選取範例 65 六、結論與未來展望 72 七、參考文獻 73

    [Awa 01] Awais Rashid,” Aspect-oriented and component-based software engineering”,IEE proc.-Software vol. 148, page 87-89, No. 3, Jun1, 2001
    [Bec 00] Beck, Bohme, Dziadzka, Kunitz, Magnus, Verworner, “LINUX Kernel Internals”,Pearsoned Publishing Company,2000
    [Ber 96] Lodewijk M.J.Bergmans, “Composability: Why,what, and How”, Position paper for the ECOOP’96 adaptability in OO software development workshop, 1996
    [Dav 01] David A Rusling, “The LINUX Kernel ”, URL http://www.tldp.org/LDP/tlk/tlk.html , 2001
    [Ehi 99] Ehikioya, S.A. , “A formal model for the reuse of software specifications” Electrical and Computer Engineering, 1999 IEEE Canadian Conference on On page(s):283-299 vol.1 9-12 May 1999
    [Gar 02] Gary Lawrence Murphy, “The LINUX Kernel – Blueprints for World Domination”, URL http://kernelbook.sourceforge.net/, 2002
    [Gir 97] Grimm, R. ; Bershad, B.N. “ Security for extensible systems”, Operating System, 1997. ,The Sixth Workshop on hot Topics in 0n page(s) : 62-66 5-6 May 1997
    [Gnu 02] GNU , “GNU make Manual”, URL http:// www.gnu.org/manual/make/html_chapter/make.html , 08 Jul,2002
    [Guo 00] Guo, J. ; Luqi, “A survey of software reuse repositories”, Engineering of Computer Based system, 2000. (ECBS 2000) Proceedings. Seventh IEEE International conference and Workshop on the 0n page(s) : 92-100
    [Iva 98] Ivan Bowman, ” Conceptual Architecture of the LINUX Kernel”,URL http://www.grad.math.uwaterloo.ca/~itbowman/CS746G/a1/
    [Kar 96] Even-Andre Karlsson, “Software Reuse : A Holistic Approach”, Addison-Wesley Publishing Company,Mar. 1996
    [Lar 00] Larsson, M. ; Crnkovic, I. “Development experiences of a component-based system” engineering of Computer Based System, 2000. (ECBS 2000) Proceedings. Seventh IEEE International Conference and Workshop on the 0n page(s) : 85-91
    [Liu 97] 劉省吾,”組合式元件庫的設計與應用”,國立成功大學工程科學研究所碩士論文,Jun 1997
    [Liu 97] 柳宏昌,“元件式軟體開發流程”,URL http://www.cisanet、rg.tw/softcom/User/ComIntro/technol/3_1_2.htm,1997
    [Mel 00] Meling, R. ; Montgomery, E.J. ; Sudha Ponnusamy, P.; Wong,E.B. ; Mehandjiska. D. “ Storing and retrieving software components : a component description manager ” SoftwareEngineering conference, 2000. Proceedings. 2000 Australian.
    [Nin 96] Jim Q. Ning.” A Component-based Software Development Model”, IEEE Software, 1996
    [Pou 96] Jeffrey S. Poulin, “Measuring Software Reuse : Principles, Practices, and Economic Models”, Addison-Wesley Publishing Company, Nov. 1996.
    [Ras 01] U.Rastofer, F. Bellosa, “Component-based software engineering for distributed embedded real-time systems”, IEE Proc-Software , vol. 148. No.3 , page 99-103, June, 2001
    [Rum 91] James Rumbaugh and Michael Blaha and William Premerlani and Frederick Eddy and William Lorense,”Object-Oriented Modeling and Design”,Prentice Hall Publishing Company,1991.
    [Tig 02] Tigran Aivazian, “LINUX Kernel 2.4 Internals”,URL http://www.moses.ukLINUX.net/patches/lki.html , 7 August,2002
    [Yan 02] 楊仁達,”元件式企業軟體技術與趨勢”,URL http://www.cisanet.org.tw/softcom/User/ComIntro/technol/1_1.htm, 2002
    [Zhe 01] 鄭文治,”組合嵌入式系統軟體組件管理器設計”,國立成功大學工程科學研究所碩士論文,Jul 2001

    下載圖示
    2003-09-01公開
    QR CODE