網路交換處理器之爪哇編譯器 ; Compilers for IXP Network Processor
Saved in:
| Title: | 網路交換處理器之爪哇編譯器 ; Compilers for IXP Network Processor |
|---|---|
| Authors: | 黃智翔, Chih-Hsiang Huang |
| Contributors: | 李政崑, Jenq-Kuen Lee |
| Publication Year: | 2006 |
| Collection: | National Tsing Hua University Institutional Repository (NTHUR) |
| Subject Terms: | 編譯器, 目的機器描述機制, 編譯器移植, 英特爾網路交換處理器, 網路處理器, 程式語言, 爪哇編譯器, compiler system, machine description, compiler porting, Intel IXP, network processor, language, Java compiler |
| Time: | 2 |
| Description: | 碩士 ; 國立清華大學 ; 資訊工程學系 ; GH000934304 ; 隨著網路技術的日新月異,網路的流量已經不是以往的網路設備可以負荷,取而代 之的就是新一代的網路處理器。Intel的網路處理器IXP是新一代解決網路封包處理 的處理器,不僅可以滿足大量的封包處理更表現優秀的處理效能。IXP有許多硬體 上的特色,在程式設計上需要有相當的專業知識才能有效撰寫程式碼。 這篇論文中,目的是要提供在IXP上的Java程式語言,有別於IXP本身提供的程式設 計開發工具,論文中提供還未問世的Java front-end,提供一個有別於以C語言為基 礎的物件導向程式語言,另外,由於Java物件導向語言在處理執行緒的管理以及分 散式的電腦架構下,都有相當便利的程式撰寫環境,因此,在IXP上提供Java的程式 開發設計環境將可以提供網路程式撰寫的另一個替代解決方案。 論文中,我們選用GCC來支援產生IXP上的組合語言程式碼,GCC不僅擁有許多特殊架 構可以讓開發者有效地修改而產生所需的目標機器上的程式碼,更因為他遵守GNU的 授權文件,所以開發者可以因需求任意修改。由於Intel隨機所給予的開發工具程式 不是開放源碼也沒有提供機器碼的文件,所以論文中先將Java程式碼轉換為IXP的組 合語言程式碼,在利用所付的開發工具程式將其轉換為可執行碼到實際機器上去測 試。 在實驗中,我們實做一個以C為主的編譯器,來編譯C程式碼到IXP的組合語言程式碼, 這是因為這樣的流程需要修改machine description檔案,而這個檔案不管GCC所支援 的程式語言為何,都是使用同一份GCC原始碼,如此可以更方便在實做上除錯的時間。 在論文中,將會有範例來展示這個實驗的結果。 ; As huge improvement of internet infrastructure in the recent decade, people gain much more convenience on those high-speed communication and data transformation from internet than in 90’s. Network processor is a new computer architecture which is designed for nowadays high throughput network data processing, which is mainly composed of a core-processor and multiple co-processors with hierarchical memory system. This kind of complex system communicates with variety of memory architecture could make packet processing jobs separated to different mutual exclusive ones and processed by each computing units synchronously and as fast as possible. Each computing unit is supposed to run a component, which we call it PPF (packet processing function) in a packet processing flow to make sure every packet is processed in an efficient way. Intel’s network processor (Internet eXchange Processor, IXP) is the perfect example allows a single stream packet/cell processing problem to be integrated into multiple, sequential, and synchronous tasks that can be linked together easily. It has one XScale processor and multiple RISC processors called “micro-engines” which allows network application processed in simultaneous methods. Network applications shall be separated in several different tasks. In this paper, ... |
| Document Type: | other/unknown material |
| File Description: | 155 bytes; text/html |
| Language: | English Chinese |
| Relation: | [1] Richard M Stallman ”Using and Porting GNU C Compiler”, for GCC 3.1, 22 June 2001. [2] Douglas E. Comer, ”Network System Design using Network Processors”, Prentice Hall ISBN 0-13-141792-4, 2003. [3] Gokhan Memik, William H. Mangione-Smith, ”Design and Evaluation of a Network Processor Accelerator for Layer Seven”, 1998. [4] ”Intel Enhances the Intel IXA Processor Family”, March 2001. ”http://www.intel.com” [5] Erik J. Johnson and Aaron R. Kunze, ”IXP2400 Programming”, Intel Press, Aug. 2004. [6] ”Intel IXP1200 Hardware Reference Manual”, Intel IXA SDK Doc, December 2001. [7] ”Intel IXP1200 Microcode Programmers Reference Manual”, Intel IXA SDK Doc, December 2001 [8] ”Intel IXP2400 Hardware Reference Manual”, Intel IXA SDK Doc, November 2003. [9] Bill Carlson, ”Intel Internet Exchange Architecture and Applications”, May 2003. [10] R. Haas, L. Kencl, A. Kind, B. Metzler, R. Pletka, M. Waldvogel, L. Frelechoux, and P. Droz, IBM Research Clark Jeffries, IBM Corporation, ”Creating Advanced Functions on Network Processors: Experience and Perspectives, ” IEEE Network, July/August 2003. [11] G. Apostolopoulos, D. Aubespin, V. Peris, P. Pradhan, and D. Saha, ”Design, Implementation and Performance of a Content -Based Switch, ” in Proceedings of IEEE Infocom 2000, Mar. 2000. [12] Hans-Peter Nilsson, ”Porting GCC for Dunces ”, (get from ftp://ftp.axis.se/pub/users/hp/pgccfd/). [13] Mike Loukides, Andy Oram, ” Programming with GNU Software ” OREILLY, 1997. [14] Fariza Sabrina, Salil S. Kanhere and Sanjay Jha, ”Implementation and Performance Analysis of a Packet Scheduler on a Programmable Network Processor”, Proceedings of the IEEE th 30th LCN, 2005. [15] Rakesh Kumar, Dean M. Tullsen, Parthasarathy Ranganathan, Norman P. Jouppi, Keith I. Farkas, ”Single-ISA Heterogeneous Multi-Core Architectures for Multithreaded Workload Performance”, Proceedings of the 31st ISCA, 2004. [16] Scott Oaks and Henry Wong, ”Java Threads”, 3rd Edition, O’Relly, ISBN 986- 7794-48-6, 2005. [17] C. W. Fraser and D. R. Hanson, A Retargetable Compiler for ANSI C, SIGPLAN Notices 26, 10 (Oct. 1991), 29-43. [18] IntelWebsite, ”http://www.intel.com/design/network/products/npfamily/ixp2400.htm”. [19] Martin Kalin, ”Object-Oriented Programming in JAVA”, Prentice Hall, ISBN 0-13-019859-5, 2001. [20] Mark Kohler, ”Introduction to Network Processors”, from ”http://www.netrino.com/Articles/NetworkProcessors/index.html”, 2000. [21] Yu-Ting Chen, ”.NET Remoting Switching over Network Processors”, MS thesis, June 2004. [22] J. Kuhfeld, J. Johnson, and M. Thatcher, ”Definitions of Managed Objects for Synchronous Optical Network (SONET) Linear Automatic Protection Switching (APS) Architectures”, ”http://rfc.sunsite.dk/rfc/rfc3498.html”, March 2003. [23] Richard M. Stallman, ”GNU Compiler Collection Internals”, ”http://gcc.gnu.org/onlinedocs/gccint/”, 2002. [24] Radisys Inc., ”Product Data Sheet”, ”http://www.radisys.com/products/”. [25] Dhananjay V. Gadre, ”Programming and Customizing the AVR”, MicroController Pros Corporation, 27 Feb., 2004. [26] MontaVista Linux Website, ”http://www.mvista.com/”. [27] Wind River Website, ”http://www.windriver.com/portal/server.pt”.; http://nthur.lib.nthu.edu.tw/dspace/handle/987654321/34678 |
| Availability: | http://nthur.lib.nthu.edu.tw/dspace/handle/987654321/34678 |
| Accession Number: | edsbas.6E050AC4 |
| Database: | BASE |
| Abstract: | 碩士 ; 國立清華大學 ; 資訊工程學系 ; GH000934304 ; 隨著網路技術的日新月異,網路的流量已經不是以往的網路設備可以負荷,取而代 之的就是新一代的網路處理器。Intel的網路處理器IXP是新一代解決網路封包處理 的處理器,不僅可以滿足大量的封包處理更表現優秀的處理效能。IXP有許多硬體 上的特色,在程式設計上需要有相當的專業知識才能有效撰寫程式碼。 這篇論文中,目的是要提供在IXP上的Java程式語言,有別於IXP本身提供的程式設 計開發工具,論文中提供還未問世的Java front-end,提供一個有別於以C語言為基 礎的物件導向程式語言,另外,由於Java物件導向語言在處理執行緒的管理以及分 散式的電腦架構下,都有相當便利的程式撰寫環境,因此,在IXP上提供Java的程式 開發設計環境將可以提供網路程式撰寫的另一個替代解決方案。 論文中,我們選用GCC來支援產生IXP上的組合語言程式碼,GCC不僅擁有許多特殊架 構可以讓開發者有效地修改而產生所需的目標機器上的程式碼,更因為他遵守GNU的 授權文件,所以開發者可以因需求任意修改。由於Intel隨機所給予的開發工具程式 不是開放源碼也沒有提供機器碼的文件,所以論文中先將Java程式碼轉換為IXP的組 合語言程式碼,在利用所付的開發工具程式將其轉換為可執行碼到實際機器上去測 試。 在實驗中,我們實做一個以C為主的編譯器,來編譯C程式碼到IXP的組合語言程式碼, 這是因為這樣的流程需要修改machine description檔案,而這個檔案不管GCC所支援 的程式語言為何,都是使用同一份GCC原始碼,如此可以更方便在實做上除錯的時間。 在論文中,將會有範例來展示這個實驗的結果。 ; As huge improvement of internet infrastructure in the recent decade, people gain much more convenience on those high-speed communication and data transformation from internet than in 90’s. Network processor is a new computer architecture which is designed for nowadays high throughput network data processing, which is mainly composed of a core-processor and multiple co-processors with hierarchical memory system. This kind of complex system communicates with variety of memory architecture could make packet processing jobs separated to different mutual exclusive ones and processed by each computing units synchronously and as fast as possible. Each computing unit is supposed to run a component, which we call it PPF (packet processing function) in a packet processing flow to make sure every packet is processed in an efficient way. Intel’s network processor (Internet eXchange Processor, IXP) is the perfect example allows a single stream packet/cell processing problem to be integrated into multiple, sequential, and synchronous tasks that can be linked together easily. It has one XScale processor and multiple RISC processors called “micro-engines” which allows network application processed in simultaneous methods. Network applications shall be separated in several different tasks. In this paper, ... |
|---|
Nájsť tento článok vo Web of Science