TW448407B - Hardware accelerator for an object-oriented programming language - Google Patents

Hardware accelerator for an object-oriented programming language Download PDF

Info

Publication number
TW448407B
TW448407B TW88120193A TW88120193A TW448407B TW 448407 B TW448407 B TW 448407B TW 88120193 A TW88120193 A TW 88120193A TW 88120193 A TW88120193 A TW 88120193A TW 448407 B TW448407 B TW 448407B
Authority
TW
Taiwan
Prior art keywords
java
application
hardware
scope
window
Prior art date
Application number
TW88120193A
Other languages
Chinese (zh)
Inventor
John Shigeto Minami
Ryo Koyama
Thomas C Poff
Original Assignee
Iready Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Iready Corp filed Critical Iready Corp
Priority to TW88120193A priority Critical patent/TW448407B/en
Application granted granted Critical
Publication of TW448407B publication Critical patent/TW448407B/en

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

A method and apparatus for accelerating an object-oriented programming language are provided at a hardware gate level. In a Java-compliant embodiment, a Java Application framework is implemented in hardware. The Java. AWT, Java. NET, and Java. IO application frameworks are supported in the preferred embodiment of the invention. Application framework classes are stored as libraries in a shared memory. Instances and methods of supported application framework classes that are executed by a Java program are offloaded to a hardware object management system. A software stub is provided as an interface between the hardware object management system and the central processing unit. Additional application frameworks can be supported by modifying or replacing the software stub. Hardware object management system requests are executed by an application framework-specific hardware accelerator. Application framework classes are retrieved from the shared memory as needed, and executed instructions are stored to the shared memory to be accessed by the central processing unit. Central processing unit processing of non-supported application framework instructions is continued during hardware accelerator execution of hardware object management system requests.

Description

五、發明說明(i) 發明背景 技術領域 本發明涉及物件導向程式語言。更確切地說,本發明 涉及一種適用於物件導向程式語言的硬體加速器。 先前技術的描述 物件導向程式(OOP)是基於11物件”概念的一種程式語 言和技術的分類名稱。一個物件是在程式中有特定作用的 獨立組元。OOP語言包括C++,以及由美國昇陽電腦公司 (Sun Microsystems, Inc.)開發的Java(爪。圭)語言。僅僅 為了討論的目的,本文中述及的OOP語言指的是Java。 OOP定義了物件的等級。11等級"(class)是一個物件或 一組共享公共組織和特徵的物件集合的原型。物件也稱為 ”實例",是等級的特定表示法。等級的每一實例根據它們 的特定屬性加以區分。這些屬性由"實例變數"予以定義。 在等級中定義這些實例變數的類型和名稱。然而,實例變 數的數值卻是在物件中設定和變換的。 等級的特徵決定該等級的實例如何操作。等級的特徵 是由與所述等級有關的,被稱為”方法"的一組例行程式確 定的 在物件上的操作是應用方法來完成的。方法對一特 定等級的所有實例是共用的。 等級是分層次排列的。在層次中每一等級可以有一個 等級置於該層之上,稱之為11超等級”(s u p e r c 1 a s s ),或有5. Description of the Invention (i) Background of the Invention The present invention relates to an object-oriented programming language. More specifically, the present invention relates to a hardware accelerator suitable for an object-oriented programming language. Description of the prior art Object-oriented programming (OOP) is a classification name for a programming language and technology based on the 11-object concept. An object is an independent component that has a specific role in the program. OOP languages include C ++, and are used by the US Computer (Sun Microsystems, Inc.) developed the Java language (Jaw. Gui). For discussion purposes only, the OOP language mentioned in this article refers to Java. OOP defines the level of objects. 11 levels " (class ) Is the prototype of an object or a collection of objects that share a common organization and characteristics. An object, also called an "instance", is a specific representation of a hierarchy. Each instance of the hierarchy is distinguished according to their specific attributes. These attributes are defined by " instance variables ". The types and names of these instance variables are defined in the hierarchy. However, the values of instance variables are set and transformed in the object. The characteristics of a level determine how instances of that level operate. The characteristics of a grade are determined by a set of routines related to the grade, called "methods". The operations on objects are done using methods. Methods are common to all instances of a particular grade The levels are arranged in layers. In the level, each level can have a level above the level, which is called 11 super-levels (superc 1 ass), or there are

4^84〇7 五、發明說明(2) 一個類置於其 們的超等級中 必對在超等級 中接受方法和 在OOP中 指定方法並可 時,物件的等 定物件上完成 物件的等級, 等級的整個層 就是再沒有更 程序呼叫 約定確定特定 或進入暫存器 藉助σ乎叫 其他服務被稱 心 J a v a APIS 它必須受到電 J a v a支援 式亦稱為小程 程式,這些程 網絡的實例包 之為内網路。 能連結網際網 下,稱為"子等級11 ( s u b c 1 a s s )。子等級從它 "繼承"屬性和特徵。這樣’一個子等級就不 中定義的特徵重新定義,但卻能夠從超等級 變數。 ,程序呼叫係以訊息傳送術語來描述。訊息 任選地包括其他參數。當將訊息發送到物件 級尋求其中指定的方法,從而確定如何在給 所請求的操作。若該方法未被定義用於上述 則搜索該物件的超等級。該程序要貫穿所述 次,一直持續到若不是找到上述方法定義, 高層的超等級可找為止。 參數的排列由一呼叫約定加以確定。該呼叫 的指令,按這些指令,將參數推向儲存堆疊 ,同樣它還擔負消除上述參數。 約定或介面程式,應用程式存取操作系統和 為應用程序程式介面(API )。在Java中,核 義最小的功能集,而考慮到J a va的順應性, 腦糸統基礎技術的支援。 獨立的程式,亦稱之為應用程式,獨立的程 式。J a va小應用程式是通過電子網絡傳輸的 式由接收裝置上的應用程式執行。上述電子 括網際網路和局部區域網路系統,在此處稱 接收裝置包括電腦,個人資料處理器,以及 路的電話。4 ^ 84〇7 V. Description of the invention (2) A class placed in their superclass must accept the method in the superclass and specify the method in OOP, and when the class of the object is complete, the level of the object is completed. The whole layer of the level is that there is no more program call agreement to determine the specific or access to the register. With the help of σ or other services, it is satisfied J ava APIS. It must be supported by electricity. J ava support is also called small program. These examples of network programs Including the intranet. It can connect to the Internet and is called " sub-level 11 (s u b c 1 a s s). Sub-levels " inherit " attributes and characteristics from it. In this way, the features defined in a sub-level are not redefined, but can be changed from super-level. Program calls are described in messaging terms. The message optionally includes other parameters. When sending a message to the object level, it seeks the methods specified therein to determine how to give the requested operation. If the method is not defined for the above, search the object's super level. This procedure is to be carried out for the above-mentioned times, and if the above-mentioned method definitions are not found, the super-levels of high-level can be found. The arrangement of parameters is determined by a calling convention. The calling command, according to these commands, pushes the parameters to the storage stack, and it is also responsible for eliminating the above parameters. An agreement or interface program, an application program accesses the operating system, and is an application program interface (API). In Java, the smallest feature set is cored, and in view of the compliance of Java, the basic technology of the brain system is supported. Independent programs, also known as applications, are independent programs. The Java applet is transmitted via an electronic network and executed by an application on the receiving device. The above-mentioned electronics include the Internet and local area network systems, which are referred to herein as receiving devices including computers, personal data processors, and telephones.

4 48 4 五、發明說明(3) 此處為了討論起見,假設一個Java小應用程式將通過 網際網路傳送到接收的電腦’以能於顯示在全球資訊網網 頁中運用。一個Java應用程式是可獨立應用的程式,並不 需要藉助一個應用程式來執行’例如,在接收的電腦上設 置一個網頁瀏覽器。 又4 48 4 V. Description of the Invention (3) For the purpose of discussion here, it is assumed that a Java applet will be transmitted to the receiving computer through the Internet 'for display on the World Wide Web page. A Java application is a stand-alone application that does not need to be run with an application ’, for example, setting up a web browser on the receiving computer. also

Java是獨立的電腦平台語言,能夠靠任何Java應允的 電腦系統操作。Java開發環境包括—Java編譯程式和— Java解釋程式。該java編譯程式從—Java程式中生成位 元組碼。Java位元組碼是機器指令而不是特別的電腦平 台 0 將一個特別的電腦平台位元組碼翻譯器用於執行 Java程式。該位元組碼翻譯器被稱為Java虛擬機幕:適用 於小應用程式,把上述位元組碼翻譯器裝入一啟動以” 的網頁劉覽器内部。Java虛擬機和它的支援代碼統稱為 J a v a操作系統。Java is an independent computer platform language, and can be operated by any computer system that Java allows. The Java development environment includes —Java compiler and —Java interpreter. The java compiler generates byte codes from a Java program. Java byte codes are machine instructions rather than special computer platforms. 0 A special computer platform byte code translator is used to run Java programs. The byte code translator is called the Java virtual machine screen: It is suitable for small applications, and the above byte code translator is loaded into a web browser that starts with "Java Virtual Machine and its supporting code. Collectively referred to as the Java operating system.

Java虛擬機包括位元組碼指令集,一組暫存哭,— 用以儲存方法的區域’堆疊和—垃圾收集堆 (garbage-collected heap) Qjava 虛擬機暫存器暫時保 表示機器狀態的數據。上述暫存器對機器操作產生反應子 在執行每個位元組碼以後進行更新數據。上述方法區^蚀 存Java位元組碼,它們執行Java系統中的大部分方法 儲存堆疊用於為位元級碼和方法組供應參數,並收^ 它們的結果。堆疊封包含用认女士也& A 仪回 3用於方法呼叫的局部蠻, 行環境,以及其操作數堆叠 具執 五、發明說明(4) 所述堆疊是儲存單元’從储存單元中重新產生的實例 予以保留。貫例會自動地在J a V a中被Μ垃圾收集堆Π。垃圾 收集程式是一種程式設計子例程’將它設計成能追蹤每個 被建立的實例’並在對上述實例的最終訪問已消失後,釋 放儲存一個實例的記憶體。 在Java中’把在不同程式中打算反複重新使用的物 件/等級作為一個”等級程式庫"加以儲存。一組等級之實 際工作以解決許多相關問題的抽象設計,通常稱為可重用 基本設計組織。儲存在上述java等級程式庫中的核心應用 .可重用基本設計組織包括Java.Lang,Java.Util,The Java virtual machine includes a byte code instruction set, a set of temporary crying,-the area used to store the method's stack, and-the garbage-collected heap. . The above-mentioned register generates a responder to the operation of the machine to update the data after executing each byte code. The above method areas store Java byte codes, which execute most of the methods in the Java system. The storage stack is used to supply parameters for bit-level codes and method groups, and receive their results. The stacking cover contains the local and ambiguity of the method call and the method used in the method call. The operating environment, and its operand stacking tool. 5. Description of the invention (4) The stack is a storage unit. The resulting instances are retained. The routine will be automatically collected by the M garbage collection heap in JaVa. The garbage collection program is a programming subroutine 'designed to track each created instance' and release the memory that stores an instance after the final access to the above instance has disappeared. In Java, 'objects / levels that are intended to be reused repeatedly in different programs are stored as a "level library". An abstract design of a set of levels that actually works to solve many related problems is often referred to as a reusable basic design Organizations. Core applications stored in the above-mentioned java-level libraries. Reusable basic design organizations include Java.Lang, Java.Util,

Java. Applet ’Java· 10,JavajET,以及java.AWT。Java. Applet ‘Java · 10, JavajET, and java.AWT.

Java· Lang包括把數據類型和系統權能添加到語言本 身的等級,而J a v a. U t U包含實用程式等級和簡單收集等 級。Java. Applet包含用以執行java小應用程式的等級。 J a v a. I 0包含從串流中寫入和讀出的輸入和輸出等 級,例如,標準的輸入和輸出。Java. 1〇還包括適用於處 理文件的輸入和輸出等級。 J a v a N E T包含網路支援等級。該等級包括按照比如標 準全球資訊網協定’例如TCP/IP和IP,用以連接和檢索文 件的那些等級’以及用以建立網絡介面比如那些用在 U N I X 的應用程式的那些等級。Java. Lang includes levels that add data types and system capabilities to the language itself, while Ja v a. U t U includes utility levels and simple collection levels. Java. Applet contains a level for running Java applets. J a v a. I 0 contains input and output levels written to and read from the stream, for example, standard input and output. Java. 10 also includes input and output levels suitable for processing files. J a v a N E T includes network support levels. The levels include those used to connect and retrieve files according to, for example, the standard World Wide Web Protocols, such as TCP / IP and IP, and those used to establish network interfaces such as those used by UNIX applications.

Java抽象視窗工具箱(java.AWT)提供用以建立基於圖 形使用者介面(GU I )小應用程式和應用程式的等級和特 徵。例如上述Java. AWT能夠用在螢幕繪圖’建立視窗、按The Java Abstract Window Toolbox (java.AWT) provides levels and features for creating applets and applications based on graphical user interface (GUI). For example, the above Java. AWT can be used for screen drawing ’to create a window, click

第9’頁 44^4〇 j 五、發明說明(5) 细、選項攔、滑動區塊區和其他使用者介面元素。 J a v a. A W T還能用於管理使用者輸入,例如滑鼠點選和按 鍵。 物件導向軟體基本設計組織一般是使用電腦的隨機存 取記憶體(R A Μ ) ’唯讀記憶體(R 〇 Μ )或虛擬記憶體(v Μ)來執 行的。例如在電腦上啟動Java應用程式或小應用程式 時’首先執行的一項操作是建立圖形使用者介面(GUI)。 雖然,因為以軟體為架構之工具正被應用,是能夠要 求電腦操作系統處理能力的有效百分率來實際生成並顯示 所述GUI的。但因此當GUI元素正呈現 外 候,由上述操作系統處理的並他在』不权備上的^ 來。另外,在顯示正進行更新就會刪放慢下 盤事件,Java操作可能進入一手倘右發生滑鼠或鍵 生的同時,系統也正嘗試處理待=鎖狀態,在更新事件發 後操作系統不能在合理的時間矿的滑氣或鍵盤事件。最 件。直到最終使用者程式出現中圍内抓起並處理所有的事 步的命令和輸入。 止工作’明顯地拒絕進— a v α 、二干7L/多緒机一/ 援許多程式,以及同時執行許夕 行糸統。因而,它支 的處理過程。分緒是執行^些二^自在其自己地址空間内 列。因此,Java程式環境和:過程中之一的代碼序 行體系組織。 ’、糸統兩者都有一個多緒執 在一個J a v a的多块也^ 夕 ''者執行程式φ 分緒可能會被阻塞,直到 ’插作Java程式的—個 固視窗被杈下。此外,任Page 9 ’44 ^ 4〇 j V. Description of the invention (5) Details, option blocks, sliding blocks and other user interface elements. J a v a. A W T can also be used to manage user input, such as mouse clicks and keys. The basic design organization of object-oriented software is generally implemented using a computer's random access memory (RAM) 's read-only memory (ROM) or virtual memory (vM). For example, when you launch a Java application or applet on your computer, one of the first things you do is create a graphical user interface (GUI). Although, because software-based tools are being used, an effective percentage of the processing power of a computer operating system can be required to actually generate and display the GUI. However, when the GUI elements are being displayed, they are handled by the operating system mentioned above and he is not entitled to ^. In addition, when the display is being updated, the slow down event will be deleted. The Java operation may enter into one hand. If the mouse or key is generated on the right, the system is also trying to handle the pending state. The operating system cannot Mine skimming or keyboard events at a reasonable time. The most pieces. Until the end-user program appears, grab and process all the commands and inputs. Stop work ’obviously refused to enter — a v α, Ergan 7L / multi-threaded machine / support many programs, and execute Xu Xi line system at the same time. Therefore, it supports the process. The threading is to perform some operations in its own address space. Therefore, the Java programming environment and the code sequence structure of one of the processes are organized. ’And the system both have a multi-threaded implementation. A multi-block implementation of a Jav a may also block the execution of the program φ thread may be blocked until’ inserted as a Java program-a fixed window is blocked. In addition, any

48 4 Ο 7 — ___… 五、發明說明(6) 何依賴於該分緒執行的其他分緒也可能被阻塞。舉例來 說’通過網絡傳輸信息,阻塞能夠約束或延遲。阻塞就這 樣被定義為’一個J a ν a分緒在重新開始執行之前等待任務 完成的能力。 Λ48 4 Ο 7 — ___… 5. Description of the invention (6) Other threads that depend on the execution of this thread may also be blocked. For example, ‘blocking can be constrained or delayed by transmitting information over the network. Blocking is thus defined as the 'a Ja v a thread's ability to wait for the task to complete before restarting execution. Λ

往往希望是作為嵌入式環境的一部分來操作】a v a程 式,例如’在諸如能連結網際網路的電話機那樣的設備上 操作J a v a應用程式和小應用程式。然而,需要j a v a代碼和 —快速位元組碼處理器來使上述設備與J a va相容。可是這 會顯著增加製作和操作該設備的成本。 S 因此若能減少性能的降低而提供一種方法和設備則將 是一個優點。如果這種方法和設備允許物件導向的程式既 能有效應用於嵌入式環境又能有效應用於桌面環境中 將是另一個優點。 、 概要 、 本發明提供一種使物件導向的程式語言得以加速的方 法和設備。本發明的最佳實施例是配置成與—Java相容 處理器一起使用,配合Java程式語言和標準;3”物件導向 的基本設計組織。然而,本發明的另一些實施例適合於鱼 任何物件導向程式語言—起應用。本發明的另一些實施^ 還適合於與其它基於物件的组織—起應用,例如, =的”開放式步驟"(0pen step)結構或微軟電腦公司電 於物件的AFC程式庫。 & 本發明提供一種硬體加速器,它包含執行一種或多種It is often desired to operate as part of an embedded environment] av a program, for example, 'operating Jav a application and applet on a device such as a telephone connected to the Internet. However, a JAVA code and a fast byte code processor are required to make the above devices compatible with JAVA. However, this can significantly increase the cost of making and operating the equipment. It would therefore be an advantage to provide a method and equipment that would reduce the degradation in performance. It would be another advantage if this method and device allowed object-oriented programs to be effectively used in both embedded and desktop environments. SUMMARY OF THE INVENTION The present invention provides a method and apparatus for accelerating object-oriented programming languages. The preferred embodiment of the present invention is configured for use with a Java-compatible processor, compatible with the Java programming language and standards; 3 "object-oriented basic design organization. However, other embodiments of the present invention are suitable for any object Oriented programming languages—apply. Other implementations of the present invention are also suitable for application with other object-based organizations, such as the “open step” structure of = or Microsoft Computer Corporation for objects AFC library. & The present invention provides a hardware accelerator, which comprises executing one or more

(4484〇7(4484〇7

五、發明說明(7) ___V. Description of Invention (7) ___

Java應用程式結構的 中,將加速器構成作為:個士本發明目前最佳的實施例 部分。上述加速器勺^ 一 式特定積體電路(ASiC)的一 以及分f…^ P匕括硬體物件管理系統,它管理實例 以及刀派給貫例的數值的狀態。 于 本發明的最佳實施例勃 (AWT),java NET,以及執仃jaVa抽象視窗工具箱 卜,。果需要的話,本發明還能夠支援另組織。 # aVS操作系統既官理硬體物件管理系統又管理軟體物 g里系、’先上述軟體物件管理系統可以完全用軟體方式 來70成’或既用軟體又用硬體來完成。 …由Java如式執行的,支援Java應用程式组織等級的 實,和方法被卸載到硬體物件管理系統。於是,在本發明 的最佳實施例中,在上述硬體對象管理系統管理 Java. AWT和Java. NET請求的同時,中央處理單元(CPU )仍 能繼續處理指令。 本發明儲存應用程式組織等級作為在共用記憶體中的 等級資料庫。然而’每一支援應用程式組織是分別加以管 理的。一項請求被分配到特定應用程式結構的硬體控制 器*共享之記憶依其所需而被存取。 —軟體占位程式(software stub)被提供作為硬體物 件管理系統和CPU之間的一個介面。上述軟體占位程式 (s 〇 f t w a r e s t u b )能夠進行修改和替換’以允許本發明可 與任何兼容的OOP語言一起應用。 硬體物件管理系統包括一個用以接收和儲存物件+青東In the Java application program structure, the accelerator is constituted as a part of the presently preferred embodiment of the present invention. The above accelerator spoon ^ is a part of the specific integrated circuit (ASiC) and the f ... ^ P is a hardware object management system, which manages the instance and the state of the value assigned to the routine by the knife. Based on the preferred embodiment of the present invention (AWT), java NET, and the jaVa abstract window toolbox. The invention can also support other organizations if needed. # aVS operating system not only manages hardware object management system but also manages software objects. “First, the above software object management system can be completed 70% by software” or both software and hardware. … Run by Java, support Java application organization level implementations, and methods are offloaded to the hardware object management system. Therefore, in the preferred embodiment of the present invention, while the hardware object management system manages Java. AWT and Java. NET requests, the central processing unit (CPU) can continue to process instructions. The present invention stores application organization levels as a level database in shared memory. However, 'each supporting application organization is managed separately. A request is allocated to a hardware controller of a specific application structure * shared memory is accessed as needed. — A software stub is provided as an interface between the hardware object management system and the CPU. The above software placeholder program (s0 f t w a r s t u b) can be modified and replaced 'to allow the present invention to be applied with any compatible OOP language. Hardware object management system includes one to receive and store objects + Qingdong

第12頁 4484〇 γ 五、發明說明(8) 的輸入/輸出請求佇列。當工作處理器為物件指定記憶體 時,就把它從彳宁列中除去。工作物件列表追蹤J a ν a虛擬機 t的引用計數數到一實例。當到實例的引用計數為零時, 則藉由一垃圾收集堆收集程式釋放儲存於上述物件的記憶 體。 在本發明目前最佳的實施例中,Java. AWT硬體工具包 含一個視窗/顯示系統和一光影追縱引擎。一個圖形的 J a v a程式構成有如一個分層的叙套式包容文件和組元。合 成文件管理稱之為組元的可視物件的收集。組元表示在螢 幕上顯示的可視功能性,例如,選項欄、按鈕、可編輯文 字區和文字區段。合成文件本身可以相互間分層嵌套,並 可與另一個合成文件保持父子關係。對一給定的應用程式 來說,在視窗層的頂部有一合成文件視窗,它是藉助一視 窗糸統(A W T.圖文框)物件呈現的。A W T.圖文框把本機視 窗定義為獨特的電腦平台(如WindowsTMSolarisTM)。 此外,還能夠把合成文件看成是特定等級之組元,它 有容納其它一些組元的能力。這是因為從功能性來看合成 文件等級為組元的子等級。版面是在一應用程式或小應用 程式範圍以内可被顯示在一螢幕上的合成文件。圖文框是 帶有標題和選項欄的視窗,同時還是另一種組元/合成文 件的類型。共享等級特徵意味著所有這些等級允許它們共 享各種特性,並能夠良好地整合在一起。Java. AWT硬體工 具經由通信的有效進行和增加顯示合成文件之效率,在不 同的組元物件變型之間影響這些共享功能。Page 12 4484〇 γ 5. The input / output request queue of the invention description (8). When the task processor assigns memory to an object, it is removed from the Suining column. The work item list tracks the reference count of the virtual machine t to an instance. When the reference count to the instance is zero, the memory stored in the above objects is released by a garbage collection heap collector. In the presently preferred embodiment of the invention, the Java. AWT hardware toolkit includes a window / display system and a light and shadow tracking engine. A graphical JAVA program is structured as a layered narrative containing document and components. Synthetic files manage the collection of visual objects called components. Components represent the visual functionality displayed on the screen, such as option bars, buttons, editable text areas, and text sections. The composition files themselves can be nested hierarchically within each other and can maintain parent-child relationships with another composition file. For a given application, there is a synthetic document window on top of the window layer, which is presented by means of a window system (AW T. frame) object. A W T. Frame defines the native window as a unique computer platform (such as WindowsTM SolarisTM). In addition, the synthetic file can be regarded as a component of a specific level, and it has the ability to accommodate other components. This is because from a functional point of view, the composite file level is a sub-level of the component. A layout is a composite document that can be displayed on a screen within the scope of an application or applet. A frame is a window with a title and an option bar. It is also another type of component / composite file. Shared level features mean that all of these levels allow them to share a variety of characteristics and integrate well together. Java. AWT hardware tools effectively communicate and increase the efficiency of displaying composite files through communication, affecting these sharing functions between different component object variants.

五、發明說明(9) 合成文件是能夠容納其它組元的J a v a · A W Τ模组。版面 是能夠被顯示在螢幕上的一個合成文件,例如一個小應用 程式。圖文框是具有像標題和選項欄這樣一類特徵的視 窗° 視窗/顯示系統包括:一個用以建立圖文框和模組, 並用以把數據傳送到光影追蹤引擎的通用圖形控制器;一 個用以管理圖文框的視窗管理器;一個在圖文框範圍内用 以管理合成文件分層的配置管理器;以及一個在合成文件 範圍内用以管理模組分層的模組管理器。V. Description of the invention (9) The synthesized file is a J a v · A W T module capable of accommodating other components. A layout is a composite document that can be displayed on the screen, such as a small application. Frames are windows with features such as titles and option bars. The window / display system includes: a general-purpose graphics controller for creating frames and modules and transmitting data to the light and shadow tracking engine; A window manager for managing frames; a configuration manager for managing layers of composite files within the frame; and a module manager for managing layers of modules within the range of the composite files.

Java. NET硬體工具包含一個視窗/顯示系統和一個通 聯性驅動程式。上述視窗/顯示系統包括一網路控制器, 它包含用於Java. NET基本設計組織等價的微代碼。一網路 查詢機制執行DNS查尋並把報告結果傳到上述網路控制 器,一網路介面管理器管理由應用程式使用的網路介面, 以及一串流管理器用於通過由網路協定支援的連結往返空 間輸入和輸出數據。 因此,本發明提供一種硬體工具,它藉著支援應用程 式組織的協同指令用以減少阻塞。Java處理過程由此得以 加速。 附圖的簡要說明: 圖1是顯示按照本發明的硬體加速器1 0組織性綜述 的圖形; 圖2是按照本發明的Java加速器的示意圖形;The Java. NET hardware tools include a window / display system and a connectivity driver. The above-mentioned window / display system includes a network controller containing microcode equivalent to the basic design organization of Java. NET. A network query mechanism performs DNS lookups and transmits the report results to the above network controller, a network interface manager manages the network interface used by the application, and a stream manager is used to pass the Link round-trip space input and output data. Accordingly, the present invention provides a hardware tool to reduce blocking by cooperative instructions that support application organization. Java processing is thereby accelerated. Brief description of the drawings: FIG. 1 is a diagram showing an organized overview of a hardware accelerator 10 according to the present invention; FIG. 2 is a schematic diagram of a Java accelerator according to the present invention;

第14頁 44Q4〇7 五、發明說明(10) 圖3是按照本發明在物件實例化和刪除以後的物件目 錄表; 圖4是按照本發明的合成文件與其内部模組實例連接 序列的圖形; ' 圖5是按照本發明的工作物件數據清單的圖形; 圖6是按照本發明的硬體加速器的内部功能圖形; 圖7是圖6上示出的Java. AWT加速器的更加詳細的圖 形; 圖8是全部應用本發明同時使用幾個分緒的則的圖 形; 圖9疋按照本發明在硬體中處理m顯示物件 圖; 圖1〇的疋由本發明支援的抽象視窗工具箱物件 圖1 1是按照本發明的java抽象視两 功能框圖; U視函工具相硬體執行的 按照本發明的視窗系統的圖形; 的模組表; 4是按照本 圖15 a + .發明結合處理實例的示意圖. 影追縱引擎的圖形種式節支援的光 圖1 6是翱-, ’ .,、,員不按照本發明的Java· AWT 和物件速益#令孰盯 圖本發明由一光影追縱引擎支援 圖1 7异士 〇 ’ 的功能性說明; 义I發明嵌入AWT程式節中 44840 7 五.發明說明(II) 圖1 8是按照本發明的Java抽象視窗工具箱視窗/合成 文件/檢視實例分層組織的實施例的圖形; 圖1 9是由本發明支援的java. NET物件的圖形; 圖2 0是本發明的j a ν a. νΕΤ加速器的功能圖形;以及 圖2 1疋本發明嵌入n £ τ程式節中的功能性說明。 木發明的詳細描 本發明提供一種用以加速物件導向的程式語言的方法 和6.又備。本發明的最佳貫施例已加以發揮極致可與由美國 昇陽電腦公司(Sun Microsystems, Inc.)開發的java程式 語言,並與Java應用程式介面一起使用。然而,本發明也 容易適合於與任何物件導向的程式語言一起使用,例如 C + +程式設計語言,或甚至可適用於以物件導向形式書寫 的C語言程式。因此,以下論述只是作為例子而提供的, 並不能作為對本發明範圍的限制。 同樣地,與J a v a加速器内部聯結的工具也可應用不同 的應用程式組織,或設定應用程式組織不與昇陽電腦公司 的Java APIS相連。 雖然,本發明的最佳實施例適合用於通過網際網路的 數據傳送,但本發明同樣地哥應用於其他廣域網路或區域 網路。另外,儘管最佳實施例^與桌上型電腦一起應用 的,實際上本發明也可與其他設備一起應用,包括網路伺 服器,個人資料協助處理器’傳真機和能與網際網路網路 的電話。Page 14 44Q4〇7 V. Description of the invention (10) Figure 3 is an object directory table after the object is instantiated and deleted according to the present invention; Figure 4 is a diagram of a connection sequence of a composite file and its internal module instance according to the present invention; 'FIG. 5 is a graphic of a work item data list according to the present invention; FIG. 6 is a graphic of internal functions of a hardware accelerator according to the present invention; FIG. 7 is a more detailed graphic of the Java AWT accelerator shown in FIG. 6; 8 is a diagram of all applications using the present invention while using several threads simultaneously; FIG. 9 图 processing m display object diagram in hardware according to the present invention; FIG. 10 疋 abstract window toolbox object supported by the present invention FIG. 1 1 It is a functional block diagram of the Java abstract video according to the present invention; the graphics of the window system according to the present invention executed by U visual tool hardware; the module table; 4 is a combination of the invention with a processing example according to FIG. 15a +. Schematic. The light type supported by the graphic style section of the shadow chasing engine. Figure 16 is 翱-, '. ,,, and the Java · AWT and the object speed benefit # 令 孰 staring according to the present invention. Longitudinal engine support Figure 1 Functional description of 7 异 士 〇 '; The meaning of the invention is embedded in the AWT program section 44840 7 V. Description of the invention (II) Figure 18 is a layered organization of the Java abstract window toolbox window / composite file / view instance according to the present invention FIG. 19 is a graphic of a java. NET object supported by the present invention; FIG. 20 is a functional graph of the ja ν a. ΝΕΤ accelerator of the present invention; and FIG. 21 is a n £ τ program embedded in the present invention Functional description in section. Detailed Description of the Wood Invention The present invention provides a method for accelerating object-oriented programming languages and 6. The best embodiment of the present invention has been exerted to the extreme, and can be used with the java programming language developed by Sun Microsystems, Inc. of the United States, and used with the Java application programming interface. However, the present invention is also easily adapted for use with any object-oriented programming language, such as a C ++ programming language, or even a C language program written in an object-oriented form. Therefore, the following discussion is provided as an example, and should not be taken as a limitation on the scope of the present invention. Similarly, the tools connected with the Java accelerator can also apply different application organizations, or set the application organizations not to be connected to Sun API's Java APIS. Although the preferred embodiment of the present invention is suitable for data transmission over the Internet, the present invention is equally applicable to other wide area networks or local area networks. In addition, although the preferred embodiment is applied with a desktop computer, the present invention can also be applied with other devices, including a network server, a personal data assist processor, a facsimile machine, and an Internet Road phone.

4484〇7 五、發明說明(12) 以下述及的螢幕和圖形使用者介面的配置組織是按照 本發明目前最佳的實施例配置的。然而’熟悉本技術領域 的人士會理解到,上述螢幕和圖形使用者介面為迎合本發 明另一個實施例的需要,是很容易加以修改的。因此,以 下論述僅僅提供作為本發明的例子,而不能作為對本發明 範圍的限制。 ,f1是按照本發明的硬體加速器1 0組織性綜述的圖 :丄靠電腦的CPU(圖上未出示)操作的Java虛擬機丨6,是 =*電腦系統操作的Java應用裎式1 2用的位元組碼翻譯 ^ 為了 J a v a小應用程式丨4,將上述位元組碼翻譯器構成 可啟動Java的全球資訊網瀏覽器。 硬體物件管理 …7 = V a加速器的記憶體4 0 0 (參見圖2 )的一部分被預先指 疋令納物件描述信息和參數。這些物件空間全都是相等 尺寸的’ ^/日if 各自的格式卻取決於分配給它們的物件類型。 物件彳田述信息的起始點有一個狀態位元組,它指明 寺定物件空間是否是在使用中。 啟動的同時,標諸符號表明為正空閒著。於是軟體 可應'用以下步驟開始建立物件: 氺 將;^ ' * —項命令或任務發佈到AWT命令暫存器4 0 7或NET 命令暫存器413。 木 卜 述命令接著在AWT命令解碼器4 0 8或NET命令解碼器 414進行解碼。 t —曰被八 —蜂定需要有待建立物件的類型,就從空閒物件4484〇5. Description of the invention (12) The following screen and graphic user interface configuration organization is configured according to the presently preferred embodiment of the present invention. However, those skilled in the art will understand that the screen and graphical user interface described above can be easily modified to meet the needs of another embodiment of the present invention. Therefore, the following discussion is provided only as an example of the present invention and not as a limitation on the scope of the present invention. f1 is a diagram of the organizational overview of the hardware accelerator 10 according to the present invention: a Java virtual machine operated by a computer's CPU (not shown in the figure) 6 is a Java application operated by a computer system 1 2 Byte code translation used ^ For the Java applet, the above-mentioned byte code translator is configured as a Java-enabled World Wide Web browser. Hardware object management… 7 = A part of the memory 4 0 0 (see Figure 2) of the accelerator is pre-designated to contain object description information and parameters. These object spaces are all of equal size. ^ / 日 if The respective format depends on the type of object assigned to them. The starting point of the object information is a status byte, which indicates whether the object space is in use or not. At the same time as the start, the symbols indicate that it is idle. The software can then 'create the object using the following steps: 氺 publish; ^' * — issue a command or task to the AWT command register 407 or the NET command register 413. The wood command is then decoded in the AWT command decoder 408 or the NET command decoder 414. t — said to be eight — the type of object to be created is determined by the bee, from the free object

第17頁 44^4〇7 五、發明說明(13) 定位器403獲得下一個可用物件的⑺,並與任何其它 狀態信息一起通過返回操作先進先AnF〇s4〇5或 412回傳,經由數據暫存器4〇6或肫了數據暫存器 4 1 0退出系統的處理器。 ,、要上述空閒物件定位器將其物件的丨D傳回到系 統,它便出去並開始為下—個空閒物件空間輪詢可 用的記憶體4 0 0。 氺 氺 氺 當它發現一個時,它把物件空間的丨D儲存在所述下 一個物件建立命令的預報中。 萬一空閒物件定位器循環通過所有記憶體卻沒有找 到-個可用的物件空間’將會把記憶體超出狀態返 回給糸統。 當系統希望存取-已經建立的特定物件時,它把任 件的I D 一起傳到m命令暫存器4〇7或ΝΕΤ命令 暫存斋413。物件的ID和任務被分列並譯碼,同時上 fID被傳送到物件ID分解器4〇2。該程式區塊接著把 f- r, A ^ L'肢地址,可以用該地址在記憶 ,&塊4 0 0中存取—特定的物件空間。 =系統接收到物件刪除請求’恰當的命令和物件的 八:起;!到命令暫存器。上述任務和ID被譯碼和 :哭i 3广上述ID隨即被傳到物件分解器'。Java加 f器廷%開動並清除在記憶體中該特 =用著的狀態位,這樣它就使空間物件定二 ° ;下個物件建立命令。在空閒物件定位器之 4仏4〇7 五、發明說明(Μ) 前已報告記憶體超出狀態的情況下, 物件的ID被直接儲存在該空間物件定位器進釋放 消除所述定位器循環通過記俛妙显抑L : ’因而 要。 锻+找上述定位的需 氺 該空閒物件定位器具有儲存下—個"〇|,办 IDs的能力。將這種能力應用在每個單 寸很小的場合,某些物件於是就利用,v,物^ ^ 之連接在一起。在這種情況下’第一個物件* 、定 含-個連接域,它指明連續的物件標示儲存^ c 裡。這種在每一逐次物件空間中的連續直到第、 空間為止,它包含一個到第n個物件空間的連紝。在 1組織形式下m物件定位器響應一物件建 令’報告反饋起始物件空間的11}。同樣地,如 果確疋有待建立的物件的類型需要多個物件空間, 量 若有足夠的空閒物件空間可用’那麼該空閒物件定 :立:僅僅報告反饋起始的ID。反之,則返回記憶體 超出狀態信號。在這種情況下,物件空間並非必須 按連續序列,而可以是隨機連接的。該空閒物件定 位器應,能夠儲存” n”空閒物件〖Ds,此處"n„是有待 ,立的最大物件所需要的最大限度的物件空間數 元的 由硬體提供的所述物件丨Ds在長度方面可以是任何位 0 該硬體物件管理器也可在物件I Ds由主機系統提供,Page 17 44 ^ 4〇5. Description of the invention (13) The positioner 403 obtains the next available object, and returns it together with any other status information through the first operation AnF〇s405 or 412. The register 4 06 or the data register 4 10 exits the processor of the system. If the above-mentioned free object locator transfers its object D back to the system, it goes out and starts to poll the available memory 4 0 for the next free object space.氺 氺 氺 When it finds one, it stores the D of the object space in the forecast of the next object creation command. In case the idle object locator loops through all the memory but does not find an available object space ’, it will return the memory to the system. When the system wishes to access a specific object that has been created, it passes the ID of the component to the m command register 407 or the NET command temporary storage module 413 together. The object ID and task are sorted and decoded, and the fID is transmitted to the object ID resolver 402. The program block then puts f-r, A ^ L 'limb address, which can be accessed in memory, & block 4 0-a specific object space. = The system received the object deletion request ’appropriate command and the object Go to the command register. The above-mentioned task and ID are decoded and cry: the above ID is then passed to the object resolver '. Java plus f% starts and clears the special status bits in memory, so it sets the space object to two degrees; the next object creation command. In the case of the free object locator 4 仏 407, when the memory is reported to be out of state before the invention description (M), the ID of the object is directly stored in the space. Remembering Miao Miao Xian Yi L: 'So want. Forging + finding the above positioning needs 定位 The idle object locator has the ability to store the next " 〇 |, and handle IDs. Applying this capability to the occasion where each unit is very small, some objects are then connected with each other by using v, ^^. In this case, the 'first object *' must contain a link field, which indicates that consecutive object labels are stored in ^ c. This continuation in each successive object space up to the first and the third space, it contains a flail to the nth object space. In the 1-organization form, the m-object locator responds to an object creation command 'report and reports 11} of the starting object space. Similarly, if it is determined that the type of the object to be created requires multiple object spaces, if there is enough free object space available, then the free object is determined: only report the ID of the feedback start. Otherwise, it will return the memory out of status signal. In this case, the object space does not have to be in a continuous sequence, but can be randomly connected. The idle object locator should be able to store "n" idle objects [Ds, where " n "is the maximum object space required for the largest object to be established, which is the number of objects provided by the hardware 丨Ds can be any bit 0 in terms of length. The hardware object manager can also provide object I Ds by the host system.

第19頁 4^84〇γ 五、發明說明(15) 而不是由硬體返回的狀態下操作。 個提供的物件ID儲存在—基部引用計:暫:::’將第-述第一空間物件定位相關聯。每個 σ ,並與所 其〖1)都要與所述引用計數暫存;:=生的物件請求, 空間決定在記憶體中的實際物件定:士:,留裝訂 引用字段要與每個物件記錄物件定位。-預定的 預留裝訂空間。預留裝訂空間是二量=== 定位再回卷到起黑卜該系,先也、:::間—會使記憶體 元大於硬體物件ID的狀^=用於系統提供的物賴位 圖3說明了在幾個物件已被實例化和 看來像什麼情況。要注意已刪除的 當:匕 表的首位。當物件數值為零時, I居於柷組連接 沒有0號物件,並且任何對它 a 1表會終止。因此並 仕17對匕的引用都是益效的。 其它物件類型可顯示出鱼 …、 按紐物件類似地引用—字串物目同的功能性。例如-位元。在這種情況下,=二::身=超過3° 會依次指向每個物件按3〇位 ^ ^向—子串物件,後者 由此顯示出組合物件L 度的另-字串物件。 列,且圖4中並不直内部模組實例的連接序 在工作物件列表上:物件出相同的列表。Page 19 4 ^ 84〇γ V. Description of the invention (15) Operate without returning from hardware. The provided object IDs are stored in the base reference: Temporary ::: 'to associate the first-mentioned first spatial object positioning. Each σ, and its 〖1) must be temporarily stored with the reference count;: = raw object request, space determines the actual object in memory. Object records object positioning. -Reserved binding space. The reserved binding space is two volumes === positioning, and then rewinding to the Heibu Department, first also ::::-will make the memory element larger than the state of the hardware object ID ^ = used by the system Bitmap 3 illustrates what happens when several objects have been instantiated. Pay attention to the top of the deleted when: dagger table. When the value of the object is zero, the I-group connection has no object 0, and any a 1 to it will terminate. Therefore, the reference of Dagger 17 to the dagger is effective. Other object types can show fish ..., button objects are similarly referenced—strings have the same functionality. For example-bit. In this case, = two :: body = more than 3 ° will point each object in turn at 30 digits ^ ^ direction—substring object, which in turn displays another-string object that combines the L degree of the object. Column, and the connection order of the internal module instances is not straight in Figure 4. On the work item list: the items are in the same list.

4 4s4〇 7 五、發明說明(16) 圖5是顯; 該工作物件數 表,各自代表 型有與其關聯 標誌描述物件 屬的組織。邊 一組模組的指 面和西面的模 (在圖素中)空 量,引用持有 引用模組物件 一 11類型"值, 按紐' 滑動區 件。它們還包 結。 本發明將 物件依據它們 物件列表上實 實例可以 位元整數或單 參考IDs。 就合成文 物件的請求置 求並建立 七按照本發明的」 據清單包含可能 一個特定物件類 的組織。所有實 類型,操作系統 框配置實例另外 針,有可能物件 組,以及當繪圖 間的數值。合成 該合成文件的接 連接表中第一合 它代表他們 二作物件數據清單的圖形。 有的許多3 0位元區塊的列 型的工作實例。每個物件類 例化的物件都包含標誌,該 的方法選擇程式和物件所歸 還包含給合成文件用以安排 引用到其在北面,南面,東 它們時確定在模組之間離開 文件物件包含封裝模組的數 受實例值的模組物件,以及 成文件物件。模組物件包含 是否應當按壓一按鈕,或根據 塊,文字段或其 含一個通往合成 它視窗小部份類型來處理事 文件中下一個可用模組的連 物件(參照圖5 )處理在小程式區塊中。所述 的大小和覆蓋區看起來總是相同的。在工作 例相互間的區分是其數據組織或實例變數。 是或簡單或複雜的。它們可包含8,1 6,3 2 同布林值。它們還可包含物件對其它物件的 件物件的情況而言。在已經把關於合成文件 於輸入/輸出請求佇列以後,J快速取得該請 固定大小的儲存區塊,以儲存與該合成文件實4 4s4〇 7 V. Description of the Invention (16) Figure 5 shows the number of work items. Each type of work item is associated with a symbol describing the organization to which the item belongs. The edge of the set of modules and the space of the module (in the pixels) of the reference, the reference holds the reference module object-a type 11 value, and the button 'slide area. They also enclose. According to the invention, the objects are based on the real examples on the object list, which can be bit integers or single reference IDs. Request and build a request for a synthetic text object. The "data list" according to the present invention may contain an organization of a particular object class. For all real types, the operating system box configuration examples are additional pins, possible object groups, and values when drawing. Synthesizing the first file in the connection table of the synthesizing file, it represents their two pieces of crop data list graphics. There are many working examples of the 30-bit block array. Each object instantiated by the object class contains a flag. The method selection program and the object returned are included in the synthetic document to arrange references to it in the north, south, and east. When they are determined to leave the document between the modules, the object contains the packaging model. The number of groups is determined by the instance value of the module object, as well as the documented object. The module object contains whether a button should be pressed, or the connected object (see Figure 5) of the next available module in the document is processed according to the block, text field, or a type that contains a small part of the window that composes it. Program block. The size and coverage area always look the same. The distinction between working examples is their data organization or instance variables. It is either simple or complex. They can contain 8, 16, 2, and 2 Bollinger values. They can also include the case of objects versus other objects. After the composition file has been queued in the input / output request, J quickly obtains the requested fixed-size storage block to store the actual file with the composition file.

第2'1頁 4484Qγ 五、發明說明(]7) 例有關的變數。在建立幾個模組物件以後,可將它們加到 忒合成文件上。如果指定一配置管理程式管理分配給合成 文件的物件,這是相應對地完成的。在合成文件與邊框配 f伴隨共生的情況下,可將五個可能的模組直接加到上述 0成文件上。該邊框配置物件於是就被給定最多可引用五 個(北,南,東,西和中)模組,這樣它就知道如何在以後 適當的時間取用並更新這些物件。 工作物件列表包含可能許多個3 0位元組區塊的目錄, 其中每個代表特定對象類型的工作實例。 每個物件類型有一與以下示出的三個物件實例圖中關 聯的組織。 所有實例化的物件都包含描述物件類型的標誌,用於 ::系統的方法選擇程 <,以及物 :置實例:外還包含給合成文件用以安排一組模組的指 有可此物件引用到其在北,東和西的模組, ^會圖它們時確定在模組之間離開(在圖素令)空間的數 合成文件物件包含封裝模組的數量,弓丨用持有 :的接文實例值的模組物#,以及引用模組物件連接^ 中弟一合成文件物件。模組物件包含一"類型”值,它义 他們是否應當按壓按鈕,或根據按鈕,滑動區塊,文〜^ 段或其它視窗小部份類型來處理事件。它們還合成—:= 住合成文件中下一個可用模組的連結。 通 這些物件定義直接映射進入由上述基本設計組Page 2'1 4484Qγ V. Description of the invention (] 7) Example related variables. After creating several module objects, you can add them to the 忒 composite document. If you specify a configuration manager to manage the objects assigned to the composite file, this is done accordingly. In the case where the composition file and the frame are accompanied by f, five possible modules can be directly added to the above-mentioned 0% file. The frame configuration object is then given up to five (North, South, East, West, and Middle) modules, so it knows how to retrieve and update these objects at an appropriate later time. The work item list contains a directory of possibly many 30-byte blocks, each of which represents a work instance of a particular object type. Each object type has an organization associated with the three object instance diagrams shown below. All instantiated objects contain a flag describing the type of the object, which is used for :: system method selection process < and object: set instance: In addition, it also contains a reference to the synthetic file to arrange a set of modules. Referring to its modules in North, East, and West, ^ will figure them out. When you figure them out, the number-composite file object that leaves the space between the modules (in the pixel order) contains the number of encapsulated modules. The module object # following the instance value, and the reference module object connection ^ Zhongyi a synthetic document object. Module objects contain a "type" value, which means whether they should press a button, or handle events based on buttons, sliding blocks, text ~ ^ sections, or other window types. They also synthesize —: = live synthesis Link to the next available module in the document. These object definitions directly map into the basic design group

第22頁 、'呷營 4484〇7 五、發明說明(18) 理的C數據類型組織中(要注意這些是初步的組織,都將會 改變且進一步最佳化)。 類型定義組織1 r ___描述文字_ / /物件的開頭三位元組。 { j位元組組織類型;_ / /組織的特定類型(J a v a. A W T, NET ,IFC,等等) j位元組物件類型;/ /物件的特定類型(圖文框,事 件,合成文件,等等) j位元組方法類型;__//特定物件方法(-圖畫(),等 等) j位元組使用著;___//找出是否有記錄在使用著。 }降序; 類型定義組織i r_合成文件_//提示:每個合成文件必須 引用一個模組組織 { 降序__物件描述文字; j短_ _ η模組;_ „ //合成文件中現有模組數。 矩形__敌入; ____//配置管理程式可以是五個系統設定之一。 j位元組__配置類型;___//代表用於該合成文件的配置類 型。 j介面__配置物件;__/ /配置實例的特定索引。 _ j介面接受模組物件;_/ /我們是模組的子等級所以 我們需要這Page 22, '呷 营 4484〇7, invention description (18) in the C data type organization (note that these are preliminary organizations, will be changed and further optimized). Type definition organization 1 r ___ description text // // the first three bytes of the object. {j byte organization type; _ // specific type of organization (J av a. AWT, NET, IFC, etc.) j byte object type; // specific type of object (frame, event, composition File, etc.) j-byte method type; __ // object-specific method (-picture (), etc.) j-byte method is used; ___ // find out if there are records in use. } Descending order; type definition organization i r_synthetic file _ // note: each composition file must refer to a module organization {descending order __object description text; j short _ _ η module; _ // // existing in the synthesis file Number of modules. Rectangle __ enemy; __ // The configuration management program can be one of five system settings. J byte__ configuration type; ___ // represents the configuration type used for the composite file. J interface_ _Configuration object; __ // The specific index of the configuration instance. _ J interface accepts module objects; _ // We are a sub-level of the module so we need this

44〜〇7 五、發明說明(19) _______/ /對模組組織的索引。 //////////////////////隨變數而定的圖文框-物件。 _ j布林_是可調整大小的;„_//與圖文框物件一起使 用。 > j位元組__游標類型;___/ /游標0 - 1 3與圖文框物件一 起使用。 _無符號短選單攔物件;__//選單欄往往附屬於圖文框 物件。 面 介 模 個 , 一件。 第文稱 成名 合個 } 多 定 節 組 話 對 指 見 起 便 方 為 / / 窗 視 框 文 圖 ______// 一視窗=圖文框=對話=合成文件遠至 ______/ /涉及J傳遞。 類型定義組織i r _模組 {降序物件描述文字; j位元組同層物件類型;__//這是模組的選中物件值 ______/ /例如,按鈕,標號,文字區段,等等。 _無符號短X ; _無符號短Y ; _無符號短寬度; _無符號短高度;44 ~ 〇7 V. Description of the invention (19) _______ // Index to the module organization. /////////////////////// The frame-object that depends on the variable. _ j 布林 _ is resizable; __ // Used with frame object. > j byte__ cursor type; ___ // cursor 0-1 3 Used with frame object. _Unsigned short menu block object; __ // The menu column is often attached to the frame object. Face interface model, one piece. The first article is famous and the other} Multi-segment group words are easy to see when they point to / / Window view frame ______ // One window = frame = dialog = synthesis file as far as ______ // / involving J pass. Type definition organization ir _ module {descending object description text; j byte objects at the same level Type; __ // This is the selected object value of the module ______ / / For example, buttons, labels, text sections, etc. _unsigned short X; _unsigned short Y; _unsigned short width; _ Unsigned short height

第2¾頁 4484〇? 五、發明說明(20) _無符號短父代物件;_/ /對合成文件物件索引。 _無符號短字體物件;_„//對描述由該模組使用著的字 體的物件索引。 _ ..無符號短前景顏色物件;_//對前景顏色物件索引。 _無符號短背景顏色物件;^/ /對背景顏色物件索引。 _無符號短游標物件;___/ /對游標物件索引。 無符號短字串物件;___/ /引用包含字串的物件到 ______/ /設法在模組中上色(可能是0 )。 __ j布林可見的; _ J布林啟動; _ j布林有效; II 範圍最小尺寸;__//模組包含的最小允許尺寸。 // 範圍最佳尺寸;__//模組包含的最佳尺寸。 _ j介面下一個模組節點;__//對在合成文件中下一個已知 模組索引。 }詳細檢查,模組;__//詳細檢查是僅僅用圖晝()方法 的模組^ 類型定義組織i r_邊框配置 {降序物件描述文字; j短h間隔; j短v間隔; j短合成文件;__//索引合成文件的陣列中與我們有關 的。Page 2¾ 4484〇 5. Description of the invention (20) _unsigned short parent object; _ // index to the synthetic file object. _Unsigned short font object; _ „// The index of the object describing the font used by the module. _ .. Unsigned short foreground color object; _ // The index of the foreground color object. _Unsigned short background color Object; ^ // index to the background color object. _Unsigned short cursor object; _ // to the cursor object index. Unsigned short string object; ___ // reference the object containing the string to ______ // Color in the group (may be 0). __J Brin is visible; _ J Brin is active; _ j Brin is valid; II range minimum size; __ // the minimum allowable size of the module. // The range is the best Size; __ // The optimal size of the module. _J interface next module node; __ // The index of the next known module in the synthesis file.} Detailed inspection, module; __ // Detailed inspection It is only a module using the graph day () method ^ type definition organization i r_ border configuration {descending object description text; j short h interval; j short v interval; j short composite file; __ // index in the array of composite files About us.

4<84〇 五、發明說明(21) j短北模組;_//索引模組的陣列中指針指向之處。 j短南模組; j短西模組; j短東模組; j短中模組; }邊框配置; 類型定義組織1 Γ_信息流配置 { 降序物件描述文字; j短h間隔; j短v間隔; j短對準; }信息流配置; 類型定義組織i r _網格配置 { 降序物件描述文字; 無符號短h間隔; 無符號短v間隔; 無符號短行; 無符號短列; }網格配置; 類型定義組織i r_W圖形 {降序物件描述文字;4 &84; V. Description of the invention (21) j short north module; // index of the pointer in the array of the index module. j short south module; j short west module; j short east module; j short middle module;} frame configuration; type definition organization 1 Γ_information flow configuration {descending object description text; j short h interval; j short v interval; j short alignment;} information flow configuration; type definition organization ir _ grid configuration {descending object description text; unsigned short h interval; unsigned short v interval; unsigned short line; unsigned short column;} Grid configuration; type definition organization i r_W graphics {descending object description text;

第頁 44840γPage 44840

高度; 五、發明說明〔22) 無符號短X,γ; 無符號短寬度, 無符號短前景顏色物件:一//對前景顏色物件索引 無符號短X預留裝訂空間,Υ預留裝訂空間.’' 矩形剪輯矩形,·— — //由w圖形:改變剪輯()設定 } W圖形; $他概念 本文中提出的物件定義的要點(與其它本文中未定 在一起)被用於建立實例和保持獨特的實例數值。不=^ 些數據結構’上述在工作物件列表中3 〇位元 ^ . u,、且眭塊將會臺 無思義。應用這些物件組織來識別,設定和存取在特— 象實例範圍内的數值。所述操作系統應用物件實例的$對 從而形成方法執行,對給定的數據集是很有意義的。、集 可以為物件規定在描述信息組織中的方法描述文字, 以便將所述物件傳送到低層次的框格緩衝區執行。該智舞、 型的框格緩衝區接著可讀出所述組織,並以合乎理性的^ 式翻譯一項命令(例如’調整大小或刷新螢幕)。在這時圖 形和換組物件就把它們的組織轉到該智慧型的框格緩 E 區。 ^ Java知作系統18包括java虛擬機以及它的支援代喝。 ava操作系統分列實例化和方法呼叫。在本發明的最佳 κ知例中’該j a v a操作系統管理兩個實例管理程式,—個 更體物件S理系統2 2和一個軟體物件管理系統2 〇。然而,Height; V. Description of the invention [22] Unsigned short X, γ; Unsigned short width, unsigned short foreground color objects: 1 // For foreground color object index, unsigned short X reserves binding space, Υ reserves binding space `` Rectangle clip rectangle, --- // by w graphics: change clip () settings} W graphics; $ other concepts The main points of the object definitions proposed in this article (with other ones not defined in this article) are used to create examples And maintain unique instance values. Don't = ^ some data structures ‘30 bits ^. U in the work item list above, and the block will be meaningless. Use these object organizations to identify, set, and access values within a particular instance. The $ pair of the operating system application object instance forms a method execution, which is very meaningful for a given data set. The set can describe the method in the description information organization for the object, so that the object is transferred to the lower-level sash buffer for execution. The smart dance, sash buffer can then read the tissue and translate a command (such as ‘resize or refresh the screen) in a rational ^ style. At this point, the graphics and grouping objects will transfer their organization to the smart frame E area. ^ The Java Known System 18 includes the Java Virtual Machine and its support for generations. The ava operating system separates instantiations and method calls. In the best example of the present invention, the JaVa operating system manages two instance management programs, a more specific object management system 22 and a software object management system 20. however,

第27頁 _ 五、發明說明(23) 在本發明的另一個實施例中,該j a va操作系統管理兩個以 上實例管理程式。 上述硬體物件管理系統包含支援j av a應用程式組織的 功能。在本發明目前最佳的實施例中,該硬體物件管理系 統執行Java抽象視窗軟體工具箱(AWT)26,和java. NET抽 象視窗軟體工具箱24應用程式組織。java輸入/輸出應用 矛玉式組織(未顯示)也執行支援j a v a j Ε τ功能。上述配件物 件管理系統當需要時可容易地適用於支援另外一些化…組 織。因此,本發明提供一種j a v a應用程序組織硬體工具, 匕對CPU起到一個加速器的作用。該硬體物件管理系統管 ,實例以及分配給實例的數值狀態。在本發明目前最佳的 貫施例中,該硬體物件管理系統全部用匝道加以執行 可外接隨機記憶體(RAM)。 在該貫施 體電路(ASIC) 佳實施例述及 繫’但對熟悉 行是可考慮, 上述軟體 在本發明的另 軟體又用硬體 例是電腦系統 用J ava程 和方法被卸载 例中 硬體 的—部份。 與匝道級工 本技術領域 並加以選擇 物件管理系 一個實施例 元件來執行 的儲存管理 式執行的支 到硬體物件 物件管 應予理 具和特 的人士 的。 統可完 中,該 的。軟 器。 援 J a v a 管理系 解的是,雖然本發明的最 定積體電路(AS 1C)相聯 來說本發明的實際硬體執 全用軟體來執行。然而, 軟體物件管理系統是既用 體對象管理系統的一個實 應用程式組織等級的實例 先。因此,在本發明的最Page 27 _ 5. Description of the invention (23) In another embodiment of the present invention, the JAVA operating system manages two or more instance management programs. The above hardware object management system includes functions that support the organization of application programs. In the presently preferred embodiment of the present invention, the hardware object management system executes the Java Abstract Window Software Toolbox (AWT) 26 and the java. NET Abstraction Window Software Toolbox 24 application organization. Java input / output applications The spear jade organization (not shown) also performs support for a a v a j Ε τ function. The above-mentioned accessory object management system can be easily adapted to support other organizations when needed. Therefore, the present invention provides a jav a application program organization hardware tool, which acts as an accelerator for the CPU. The hardware object management system manages the instance and the numerical status assigned to the instance. In the presently preferred embodiment of the present invention, the hardware object management system is all implemented using ramps and can be connected to a random memory (RAM). In this preferred embodiment of the implementation circuit (ASIC), the system is described, but it is considered to be familiar. The above software is used in another software of the present invention, and the hardware is a computer system using Java programs and methods. Physical-part. And ramp-level engineering in the technical field and select the object management system is an embodiment of the component to perform the storage management of the implementation of the implementation of the support to the hardware objects, the object management should be tools and special persons. The system can be completed. Software. The Jav a management system explains that although the most integrated circuit (AS 1C) of the present invention is connected, the actual hardware implementation of the present invention is executed by software. However, the software object management system is an example of a practical application organization level of an existing object management system. Therefore, in the most aspects of the present invention

4%0 五、發明說明(24) ' ~ ' 佳實施例中’在所述硬體物件管理系統管理Java. AWT和 Java· NET請求的同時,中央處理器cpiJ能夠連續處理指 令。無,什麼時候在所述硬體執行的Java應用程式組織等 級中的貫例和方法正通過一 j a v a程式執行時,上述實例和 方法就被卸載到硬體物件管理系統。這樣,在本發明的最 佳實施例中,該硬體物件管理系統管理靠Java虛擬機操作 的分緒的Java. AWT和Java.NET請求。因此,在所述硬體物 件管理系統管理java_ AWT和Java. NET請求的同時,中央處 理C Ρ ϋ仍可用於連績處理指令和分緒而不取決於卸載的 實例和方法。 打算在不同程式中要反複重新使用的應用程式組織等 級被儲存於J a ν a等級資料庫3 2 (圖1 )中。這些等級可包括4% 0 V. Invention Description (24) '~' In the preferred embodiment, while the hardware object management system manages Java. AWT and Java · NET requests, the central processor cpiJ can continuously process instructions. None, when the routines and methods in the Java application organization level of the hardware execution are being executed by a Java program, the above examples and methods are offloaded to the hardware object management system. Thus, in the most preferred embodiment of the present invention, the hardware object management system manages split Java. AWT and Java.NET requests that operate by the Java virtual machine. Therefore, while the hardware object management system manages java_AWT and Java.NET requests, the central processing CP can still be used to continuously process instructions and threads without depending on the instances and methods of offloading. The application organization levels that are intended to be reused repeatedly in different programs are stored in the Ja a va grade database 3 2 (Figure 1). These levels can include

Java.AWT34,Java,NET36 ’Java.Lang42 ’Java. 1 038 和 J a v a _ U t U 4 4的那些應用程式組織。 上述應用程式組織等級作為等級資料庫被儲存在共享 的記憶體中。儘管,每個支援應用程式組織是各別進行管 理的。將一請求分配給特定應用程式結構的硬體控制器, 而需要時可存取共享的記憶體。 用以完成網路操作的等級和特徵,例如,建立一虛擬 連接埠連接’是藉助Java. NET加速器24來完成的。Java.AWT34, Java, NET36 ’Java.Lang42’ Java. 1 038 and those of J a v a _ U t U 4 4 The above-mentioned application organization levels are stored in shared memory as a level database. Although, each supporting application organization is managed separately. A hardware controller that allocates a request to a specific application program structure and can access shared memory when needed. The level and characteristics used to complete the network operation, for example, the establishment of a virtual port connection 'is done with the help of Java.NET accelerator 24.

Java. NET加速器配置一個介面通往網路TCP/ip儲存堆疊 28。該Java. NET加速器包括一 Java_ NET36網路物件和 Java. 1038輸入/輸出相關物件兩者的硬體執行。這是因為 網路需要含有數據的輸入和輸出。把兩個組織都結合進硬The Java. NET accelerator is configured with an interface to the network TCP / ip storage stack. The Java. NET accelerator includes a hardware implementation of both Java_ NET36 network objects and Java. 1038 input / output related objects. This is because the network needs data input and output. Bringing Both Organizations Into Hard

第29頁 五、發明說明(25) 體内使多餘軟體編碼能顯著減少。 在Java. NET加球哭& & τ。, τ η 的執仃的一個實施例中,應用 J a v a _ I 〇硬體工具在卢料、由上* 仏山,τ I擬連接埠連接期間處理數據輸入和 輸出。在Java. NET加i亲哭占 τ 中’ “▽31[丁和】8¥3.1〇應用程 f組織等級經由繼承方式被約束在—起。這樣,在—個組 、、’中的等級此接文在另—個組織中的功能並增加於其上。Page 29 V. Description of the invention (25) Extra software coding can be significantly reduced in vivo. Crying in Java. NET & & τ. In one embodiment of the implementation of τ η, the hardware tool Jav a _ I 〇 is used to process data input and output during the connection of the data, the CPU, and the τ I virtual port. In Java. NET plus i pro crying account τ '"▽ 31 [丁 和] 8 ¥ 3.1〇 The application organization level is constrained by inheritance. In this way, the level in this group,' The function of the link in another organization is added to it.

Java. AWT加速器完成所述抽象視窗軟體工具箱的等級 和方法(即,特徵)。該j a va抽象視窗軟體工具箱 (Java. AWT)提供用以建立基於圖形使用者介面(GUI )的小 應用程式和應用程式的等級和特徵。這樣的等級包括The Java. AWT accelerator completes the levels and methods (ie, features) of the Abstract Windows Software Toolbox. The Java abstract software toolkit (Java. AWT) provides levels and features for creating applets and applications based on a graphical user interface (GUI). Such levels include

Java. AWT等級32,和任何關聯的繪圖工具,例如,二維繪 圖驅動程式4 0。Java. AWT level 32, and any associated drawing tools, such as 2D drawing driver 40.

Java. AWT加速器可用於繪圖到螢幕上,建立視窗、按 紐、選項攔、滑動區塊區,以及其他使用者介面元素,而 且還能用於處理使用者輸入,例如,滑鼠器點選和擊鍵。 因此,為Java.AWT加速器配置一介面通往上述設備30就可 用作電腦顯示幕、框格緩衝區、鍵盤和滑鼠。 组織上的綜述 圖6和圖7是本發明架構上的概要圖。所述支援應用程 式組織,例如,Java. AWT26(在圖7中相當詳細地顯示), Java.NET24,以及]3乂3.10(圖上未顯示)都被等級整理到 — ASIC中從而構成加速器。對以下討論來說,Java. NET加 速器將假定包括Java. 10的輸入/輸出相關物件°The Java. AWT accelerator can be used to draw to the screen, create windows, buttons, option bars, sliding blocks, and other user interface elements. It can also be used to handle user input, such as mouse clicks and Keystrokes. Therefore, a Java.AWT accelerator configured with an interface to the above device 30 can be used as a computer display, a sash buffer, a keyboard, and a mouse. Organizational Overview Figures 6 and 7 are schematic diagrams of the architecture of the present invention. The supporting application organizations, for example, Java. AWT26 (shown in considerable detail in Figure 7), Java.NET24, and 3] 3.10 (not shown in the figure) are all sorted into ASICs to form accelerators. For the following discussion, the Java. NET accelerator will be assumed to include Java. 10 input / output related objects.

五、發明說明(26) 在本發明的最佳實施例中,硬體物件管理系統2 2也被 等級整理到AS I C中去管理實例和分配給實例的數值狀態α 例如,該硬體物件管理系統儲存數據以追蹤一按鈕是否被 按壓。該硬體物件管理系統還儲存指明物件之間關係的數 據,例如,按紐是特定視窗的一部份。該信息儲存在共享 的記憶體内。 提供軟體占位程式作為每個加速器和操作Java虛擬機 的CPU之間的一個介面。於是’Java.NET加速器與 Java. NET 軟體占位程式(soft ware stub)52 和 Java. 10 軟體 占位程式(software stub)54相關聯,而Java.AWT加速器 與】已乂3,八$丁軟體占位程式(3〇1^心3广6 31:1113)50相關聯。本 發明所涵蓋硬體模組的軟體占位程式是能夠加以修改和替 代的,其允許本發明與任何可相容的OOP語言一起使用。 以上述及的圖2是按照本發明的硬體加速器6 〇的内部 功能圖。提供暫存器介面程式64(406,407,409,410, 413 ’ 415)以監控並同步傳送在主機CPU62與本發明之間的 所有輸入和輸出。V. Description of the Invention (26) In the preferred embodiment of the present invention, the hardware object management system 22 is also hierarchically organized in the AS IC to manage the instance and the numerical state α assigned to the instance. For example, the hardware object management The system stores data to track whether a button is pressed. The hardware object management system also stores data indicating the relationship between objects, for example, buttons are part of a specific window. This information is stored in shared memory. A software placeholder is provided as an interface between each accelerator and the CPU that operates the Java virtual machine. So 'Java.NET accelerator is associated with Java. NET software stub 52 and Java. 10 software stub 54, and Java.AWT accelerator has been $ 3.88 The software placeholder program (301, heart 3, guang 6 31: 1113) 50 is associated. The software placeholders for the hardware modules covered by the present invention can be modified and replaced, which allows the present invention to be used with any compatible OOP language. FIG. 2 above is an internal functional diagram of the hardware accelerator 60 according to the present invention. A register interface program 64 (406, 407, 409, 410, 413 '415) is provided to monitor and synchronize all inputs and outputs between the host CPU 62 and the present invention.

Java附從的主機CPU運轉Java虛擬機,例如來自难讀 記憶體(R 0M)的記憶體8 8,經由物理傳輸9 4傳送到本發明 的Java小應用程式或應用程式,接著經由物理傳輪介"面 86對準主機CPU。AWT命令解碼器4 〇8和NET命令解碼哭414 用於把二進位輸入信息轉換成用二進位代碼表示的’’輸°3出元 素。 上述小應用私式或應用程式以位元組碼形式儲存在纪The host CPU attached to Java runs a Java virtual machine, for example, memory 8 8 from hard-to-read memory (R 0M), and transmits it to the Java applet or application of the present invention via physical transmission 9 4, and then passes the physical transmission wheel The "face 86" is aimed at the host CPU. The AWT command decoder 408 and the NET command decoder 414 are used to convert the binary input information into a '' input ° 3 output element represented by a binary code. The above applet private or application is stored in byte code

第31頁 4β^ο? 五、發明說明(27) ' —— 憶體4 0 0内。必相诸Α ^ π T m ,^ μ, a 4建立一GlH用以顯示小應用程式和庫用浐 二枝:程式靠上述記憶體-開始操作時7構: :+叫,儲存在_中的功能庠,並指示生成⑶丨顯示:成 藉由硬體物件管理系統4〇2,4〇3和軟體占位程 ΓΓ二,r把上述呼叫指向相應 旦織加速,。!例來說’當Java.AWT視窗被請求時,該式 、=AU加速裔建立一視窗物件。圖形命令生成器8〇接 被“指揮圖形控制器82在發幕5〇〇上實際線製耆 Java.NET加速器可包括電子郵件和全球資訊網 應用驅動程式74。於是,舉例來說,應用本發明可網 際網路下載JPFG或GIF影像。此時,上述影像通過網路、周 代?/1?堆疊76被引導到_1{^(;/(;11?解碼器78,並接著導向由 一框格緩衝區管理程式84控制的框格緩衝區器92。從而, 本發明用-硬體工具加速從網上下載的圖形影像的顯示。 圮憶體控制器/仲裁器4 0 1擔任主機C p u和共享主記情 體之間的介面。該記憶體控制器/仲裁器在本發明的: ,模組之間分配和操縱系統儲存胃。上述記憶體管理包括 4記憶體的分配,例如分配給Java, AWT加速器,或為cpu 準備由本發明所建立的物件的儲存單元。 圖8是按照本發明j a v a虛擬機/操作時間的多緒執行操 作的圖形。因為Java有一多緒執行的體系組織,靠Java虛 擬機1 6和操作時間1 8運行的j a v a小應用程式1 2和應用程式 1 4可以是用同時執行的多緒執行丨〇 〇,丨〇 2,丨〇 4,丨〇 6構Page 31 4β ^ ο? V. Description of the invention (27) '—— Memory within 400. All phases Α ^ π T m, ^ μ, a 4 Create a GlH to display applets and libraries with two branches: the program relies on the above memory-7 operations at the beginning of the operation:: + called, stored in _ The function 庠, and instructions to generate ⑶ 丨 shows: through the hardware object management system 402, 403 and the software placeholder ΓΓ2, r to point the above call to the corresponding fabric acceleration. !! For example, when a Java.AWT window is requested, the formula = AU speeds up the creation of a window object. The graphics command generator 80 is actually instructed by the "graphics controller 82 to be implemented on the opening 5000. The Java.NET accelerator may include e-mail and the World Wide Web Application Driver 74. So, for example, applying this It was invented that the JPFG or GIF image can be downloaded on the Internet. At this time, the above image is guided to _1 {^ (; / (; 11? Decoder 78) via the network, Zhou Dynasty? / 1? Stack 76, and then directed to A sash buffer 92 controlled by a sash buffer management program 84. Thus, the present invention uses a hardware tool to accelerate the display of graphic images downloaded from the Internet. The memory controller / arbiter 401 serves as the host Interface between CPU and shared memory. The memory controller / arbiter in the present invention:, the module allocates and manipulates the system to store the stomach. The above memory management includes 4 memory allocations, such as Allocate to Java, AWT accelerator, or prepare storage units for objects created by the present invention for CPUs. Figure 8 is a graph of multi-threaded execution of the Java virtual machine / operation time according to the present invention. Because Java has a multi-threaded execution system Organization, rely on Java virtual The j a v a applet 12 and the application 14 running on the virtual machine 16 and the operating time 18 can be executed in multiple threads simultaneously. 〇〇 〇, 丨 〇 2, 丨 〇 4, 丨 〇 6

448 4 ο 7 五、發明說明(28) 成的。包含一種支援J a v a應用程式組織的等級和方法的八 :’經由硬體物件管理系統被引導到本發明^於是,在二 發明的最佳實施例中,硬體物件管理系統管理靠上述hv 虛擬機操作的分緒“”^討“和^…㈣了以的請求^因9 匕士在硬體物件管理系統管理J a v a . A w τ和J a v a. N E τ請求 同岭,C P U仍能夠不依賴在其上的分緒和指令連續處理。、 圖9是本發明的硬體物件管理系統圖。本發明管理448 4 ο 7 V. The description of the invention (28). Eight of the levels and methods that support Java application organization: 'Guided to the present invention via a hardware object management system ^ Thus, in a preferred embodiment of the two invention, the hardware object management system The machine operation is divided into "^^" and ^ ... 以 以 the request ^ because 9 daggers manage J ava in the hardware object management system. A w τ and Jav a. NE τ request the same ridge, the CPU can still It does not rely on continuous processing of instructions and instructions on it. Figure 9 is a diagram of the hardware object management system of the present invention. Management of the present invention

Java.AWT和java.NET請求,如上所述這些請求是由靠】 =擬機操作的分緒構成的。物件在緩 a 去除保留。 τ攸怵召和 硬體物件管理系統包括用以接收和儲存物件請 入/輸出請求佇列108。上述請求可以包括: 、輪 ~建立一個合成文件110; 一建立—個邊框配置1 1 2 ; 一建立一個版面U4; ~建立—個標識符號1 1 6 ; 一建立一個文字區段丨1 8 ;以及 ''建立—個按鈕120。 立一 ^ ^處理器丨5 〇為—物件分配儲存區時,例如在建 工作物件^ f文件物件1 52之前,該物件從{宁列中移走。 140提供认一二2儲存實例124的目錄。將使用著的標誌 的總數/貫例’以指明在JaVa虛擬機中引用計數126 當給—個實例的引用計數數字為零142時,儲存該物件的 44B4〇7 五 '發明說明(29) 儲存區已通過垃圾收集程式(圖上未顯示)去除保留。該工 作物件列表也將指明所述特定實例並沒有使用丨28。 Λ —個物件的狀態被儲存在一狀態表1 4 4中。所述狀態 可包括該物件是在使用著的丨46 ’或儲存該物件的儲存^ 已被去除保留1 4 8。 圖1 0顯示本發明支援的java抽象視窗工具箱物件的框 圖。AWT快遞組織連接到基於軟體的Java · AWT占位程式。 AWT快遞結構1 5 4本身能夠分解成兩部份。低階執行是必 需把基本的Java命令轉換到我們所顯示的,並允許對滑鼠 /光筆/鍵盤事件的控制以及更新視窗和查看層面。高階執 灯基本上為AWT的剩餘項目加特徵,例如把為u丨元素(按 纽’文子範圍’文字區段)的微細圖畫特徵包含進去。Java.AWT and java.NET requests. As mentioned above, these requests are composed of threads that operate on the basis of pseudo-machine operations. The object is being removed and retained. The Tauer and hardware object management system includes a queue 108 for receiving and storing object input / output requests. The above request may include: 1. Create a composite file 110; 1. Create a frame configuration 1 1 2; 1. Create a layout U4; 2. Create an identifier 1 1 6; 1. Create a text section 丨 1 8; And `` Create-a button 120. Liyi ^ ^ Processor 丨 5 〇 When allocating storage areas for objects, for example, before building work objects ^ f file objects 152, the objects are removed from {ning column. 140 provides a directory for storing instances 124. The total number of tags / instances that will be used 'to indicate the reference count in the JaVa virtual machine 126 When the reference count number for an instance is zero 142, the 44B407 of the object is stored. 5' Description of the invention (29) Storage The zone has been removed by a garbage collector (not shown). The work item list will also indicate that the particular instance is not in use28. Λ —The state of an object is stored in a state table 1 4 4. The status may include whether the object is in use, 46 ′ or the storage where the object is stored ^ has been removed and retained 1 4 8. FIG. 10 shows a block diagram of a java abstract window toolbox object supported by the present invention. The AWT Express organization connects to software-based Java AWT placeholders. The AWT express structure 1 5 4 itself can be broken down into two parts. Low-level execution is necessary to translate basic Java commands into what we display, and allows control of mouse / light pen / keyboard events, as well as updating windows and viewing planes. High-level executive lights are basically the remaining items of AWT plus features, such as including the fine drawing features that are u 丨 elements (buttons 'text sub-range' text section).

Java虛擬機用一組命令(任務)156,1 58發送數據到本 發明’並從本發明接收數據。Java程式語言主要依靠低階 層物件。因此,低階暫存器1 58包括對於Java的執行是極 為重要的物件。 在本發明的一個實施例中,只執行低階執行。該實施 例大大減小尺寸和儲存容量要求,而且對用於嵌入式系 統中是很有利的。 低層^功旎性包括基本視窗控制,影像繪圖,字體控 y. ^ L ^ 。由本發明最佳實施例支援的低階層物 件包括: -彩色模型2 1 〇 ; -模组2 1 2 ;The Java virtual machine sends and receives data to and from the present invention using a set of commands (tasks) 156, 158. The Java programming language mainly relies on low-level objects. Therefore, the low-level register 158 includes objects that are extremely important for the execution of Java. In one embodiment of the invention, only low-level execution is performed. This embodiment greatly reduces the size and storage capacity requirements, and is advantageous for use in embedded systems. Low-level functions include basic window control, image drawing, and font control y. ^ L ^. The low-level objects supported by the preferred embodiment of the present invention include:-color model 2 1 0;-module 2 1 2;

4 ^ S 4 Ο 7 五、發明說明(30) _合成文件2 1 4 ; -影像裁剪篩選216 ; -直接換色模型2 1 8 ; -事件2 2 0 ; -字體222 ; -字體規格224 ; -圖文框2 26 ; -圖形2 2 8 ; -網格包壓縮2 3 0 ; -影像2 3 2 ; -影像篩選234 ; -彩色模型索引236 ; -選項單模組238; -圖素數據採集器2 4 0 ;以及 -RGB影像篩選24 2。 高階層暫存器1 5 6提供能夠任意地在硬體中執行的補 充功能。這些高階層功能包括標準G U I視窗小部份,G U I 配置特徵,以及儲存媒體控制物件。 由本發明的最佳實施例支援的高層物件包括: -邊框配置1 6 0 ; -按鈕1 6 2 ; -詳細檢查1 6 4 ; -卡片配置1 6 6 ;4 ^ S 4 〇 7 V. Description of the invention (30) _ Composite file 2 1 4;-Image cropping filter 216;-Direct color change model 2 1 8;-Event 2 2 0;-Font 222;-Font size 224; -Frame 2 26;-Graphics 2 2 8;-Mesh pack compression 2 3 0;-Image 2 3 2;-Image screening 234;-Color model index 236;-Option module 238;-Pixel data Collector 2 4 0; and -RGB image filtering 24 2. The high-level registers 1 5 6 provide supplementary functions that can be arbitrarily executed in hardware. These high-level functions include a small portion of the standard GUI window, GUI configuration features, and storage media control objects. High-level objects supported by the preferred embodiment of the present invention include:-a border configuration of 160;-a button of 16 2;-a detailed check of 1 64;-a card configuration of 16;

第35頁 ^484〇7 五、發明說明(31) -確認方塊1 6 8 ; _確認方塊組1 7 0 ; -確認方塊選項1 7 2 ; -選擇1 74 ; -對話框1 7 6 ; -信息流配置1 7 8 ; -網格包配置1 8 0 ; -網格配置1 8 2 ; -標識符號184; -目錄1 8 6 ; -媒體追蹤器1 8 8 ; -選單190 ; -選單欄1 9 2 ; -可選項1 9 4 ; -多邊形1 9 6 ; -矩形1 9 8 ; -滾動條2 0 0 ; -文字範圍2 0 2 ; -文字模組2 0 4 ; -文字區段2 0 6 ;以及 -視窗2 0 8。 因為本發明用硬體代表完整的應用程式結構,所以 本發明顯著省略了代碼數量的需要D例如,0 0 P應用程式 結構的某些部份能夠通過常規應用來構成,而其它部份則Page 35 ^ 484〇7 V. Description of the invention (31)-Confirmation block 1 6 8; _Confirmation block group 1 7 0;-Confirmation block option 1 7 2;-Select 1 74;-Dialog box 1 7 6;- Information flow configuration 1 78;-Mesh package configuration 180;-Mesh configuration 1 82;-Identification symbol 184;-Directory 1 8 6;-Media tracker 1 8 8;-Menu 190;-Menu bar 1 9 2;-Option 1 9 4;-Polygon 1 9 6;-Rectangle 1 9 8;-Scroll bar 2 0 0;-Text range 2 0 2;-Text module 2 0 4;-Text section 2 0 6; and-Windows 208. Because the present invention uses hardware to represent the complete application structure, the present invention significantly omits the need for code quantity. For example, 0 0 P. Some parts of the application structure can be constructed by conventional applications, while others

五、發明說明(32) 由於應用程式組織的獨特應用被隱蔽起來。然而,在硬體 執行中,是不需要隱蔽這些組織部份的。省略多餘編碼和 僅執行那些可公開地存取,在硬體匝道陣列範圍内啟動任 務的軟體占位程式(s ◦ f t w a r e s t u b )的功能是更為有用 的0 從而,在本發明中可省略許多Java應用程式組織的物 件和等級。一個被省略等級的例子是美國弄陽電腦公司的 Java. NET.網路界面輸入串流等級。該等級源自Java. 10· 文件輸入串流並只在最初地等級基礎上增加極少量功能。 因此’本發明能夠省略這樣多餘的等級,卻沒有導致重要 功能的流失。 圖11是按照本發明的Ja va抽象視窗工具箱硬體執行的 功能框圖。一個包括java· AWT應用程式組織實例和方法的 分緒’從Java虛擬機16卸載並經由java. AWT軟體占位程式 、sof tware stub)50到達硬體物件管理系統22。 暫存益介面64監控並同步化地傳送在主機與硬 體物件管理系統之間的所有輸入和輸出。 物件請求被接收並儲存,直到在輸入/輸出請求佇列 進行處理。接著任務處理器1 50將每-請求引導到硬 ^,加速益2 5 0 ° "玄加速器包括視窗/顯示系統252和光影 追蹤引擎2 6 0。 ir r ΐ 14視窗//頁示系’统包括帛以管理由本發明生成的圖 二:—視窗官理态254。該配置管理器256管理在每個圖 王乾圍内合成文件的分層,而模組管理器2 5 8則管理在V. Description of the Invention (32) The unique application of the application organization is hidden. However, in hardware implementation, there is no need to hide these organizational parts. It is more useful to omit redundant coding and execute only those software placeholders (s ◦ ftwarestub) that are publicly accessible and start tasks within the hardware ramp array. 0. Therefore, many Javas can be omitted in the present invention. Objects and levels organized by the application. An example of an omitted level is the Java. NET. Web interface input stream level of Nongyang Computer Corporation. This level is derived from Java. 10 · File Input Streams and adds a minimal amount of functionality to the original level. Therefore, the present invention can omit such redundant levels without causing loss of important functions. Figure 11 is a functional block diagram of the hardware implementation of the Java Abstract Window Toolbox according to the present invention. A thread including a java · AWT application organization example and method is uninstalled from the Java virtual machine 16 and reaches the hardware object management system 22 via the java. AWT software placeholder program, sofware stub) 50. The temporary benefit interface 64 monitors and synchronizes all inputs and outputs between the host and the hardware object management system. Object requests are received and stored until processed in the input / output request queue. The task processor 150 then directs each request to the hard drive, accelerating the gain by 250 °, and the Xuan accelerator includes a window / display system 252 and a light and shadow tracking engine 260. ir r ΐ 14 windows // page display system ′ system includes 帛 to manage the figure 2 generated by the present invention:-window official state 254. The configuration manager 256 manages the layering of the composite files in each map, and the module manager 2 5 8 manages the

44840 7 五 '發明說明(33) 每一合成文件内的模組。 上述視窗/顯示系統衰 μ^^s^Λ/" ^82' ^ 通用圖形控制器中完成用於】:到光衫追蹤弓丨擎。在該 等價微碼。由視窗/顯示系、二丨應用程式組織的硬體 相應地作出並執行物件/方法請r杈組和映射驅動裎式 光影追蹤引擎260庵用給=τ曰y t 262,多邊形再規器?以 '、曰圖’、,例如,影像再現器 的物件…本技術^以及字體再現器2 6 6建立所請求 的類型包括;ί=:ϊ:: 士!理解;,卜:述繪圖工具 組”特定需要而加以…按照支援應用程式 螢篡2再現器262接收並還原壓縮影像數據°於是就在 ί = ; 現所述影像。多邊形再二 型,例:::i::像=加速。能夠支援預定製圖類 體再現哭2fi二 條、橢圓形、多邊形和矩形。字 冉見。。2 6 6官理用以顯示文字的請求。 ^物件執粁 擬機服器/視窗系統(參照圖12)出現在離開“虛 轉。它依賴於從物件執行機制(即操作系統) .K'上的"卩令,而從不直接從軟體層接收命令。闲士, 視窗飼服器沒有來自軟體層的直接介面。 這大體上相當於java在!^上操作的方式。—般而士, 建立對等物件以映射從Java處理器到操作系統之又外編。譯’44840 7 Five 'Invention (33) Modules in each synthesis file. The above-mentioned window / display system is degraded μ ^^ s ^ Λ / " ^ 82 '^ It is completed in the general graphics controller]: to the shirt tracking bow. The equivalent microcode. The hardware organized by the window / display system, application software, and the corresponding objects / methods are made and executed accordingly. Please use the set and map-driven mode. The light and shadow tracking engine 260 is used for τ y t 262, polygon reregulator? With ', said picture', for example, the object of the video reproducer ... the present technology ^ and the font reproducer 2 6 6 to create the requested types include; ==: ϊ :: 士! Understand ;, Bu: describe the drawing tool group "special needs and add it ... according to the support application Fireflight 2 Reproducer 262 receives and restores the compressed image data °, so it is here, and the image is now described. Polygonal second type, for example: :: i :: Image = acceleration. It can support the reproduction of pre-defined graphics, 2fi, ellipse, polygon, and rectangle. See the word ... 2 6 6 requests for displaying text. ^ Object execution simulation machine The server / window system (refer to Figure 12) appears after leaving "virtual rotation. It relies on the " commands on .K 'from the object execution mechanism (ie the operating system), and never receives commands directly from the software layer. Leisurely, Windows Feeders have no direct interface from the software layer. This is roughly equivalent to the way Java operates on! ^. —Generally, peer-to-peer objects are created to map external processors from the Java processor to the operating system. Translate

第38’頁 4 4Q 4 Q7 五、發明說明(34) 資源的請求。對Windows’ 9 5/NTTM或任何其它現代操作系 統來說’這意味著作出標準視窗系統不是C就是組合代 碼的呼叫。 用在這些操作系統中的編譯代碼,就這樣對執行系統 視囱清求形成基本的需要。視窗受控於營幕上,往往利用 標準按鈕,滑動區塊和其它基於操作系統的U〖視窗小部份 來簡化編碼’增強性能,並提供與主機本身操作系統配搭 =使用者介面。在美國昇陽電腦公司的Java開發工具中’ 足是應用一個對等介面裎式加以呼叫的,使用一組以軟體 為基本的等級占位程式映射在Java物件與編譯本機碼之間 的功能。 本發明不嚴格地應用對等的概念。無論如何,所述對 等,行完全是在阻道階層執行情況下予以提供的’而且只 有從其匕基於特定積體電路功能(即硬碼】av a物件)才是可 存取的。從許多透視系數中了解到這樣做的意義。 首先’在暫存器定義層可以彳艮容易地把基於對等的繪 圖類型換出,允許常規或多個U丨執行得以建立。其次,在 中能夠適當地將對等間隔成適於硬體的不同區域。 =是硬體與軟體之間的差異。在軟體中要建立邏輯功能組 合,而在AS I Cs則要考慮到效率和減少匝道計數。 工&在軟體中我們可以按順序方式邏輯地組合基於物件的 =能。所有基於檢視的物件可以置於一處··,—個組織中 =作得非常協調。在硬體中卻必須把事情分開來。人們可 u'在視窗伺服器為每個UI物件建立一個物件執行。然而,Page 38 ’4 4Q 4 Q7 V. Description of the invention (34) Request for resources. For Windows ' 9 5 / NTTM or any other modern operating system ' this means writing a standard Windows system that is either a C or a combination code call. The compiled code used in these operating systems forms the basic needs of the execution system. The window is controlled by the camp screen. Standard buttons, sliding blocks, and other operating system-based U windows are often used to simplify coding and enhance performance, and to provide a user interface with the host operating system. In Sun Development Computer's Java development tools, it is a function of calling a peer-to-peer interface, using a set of software-based level placeholders to map the functions between Java objects and compiled native code. . The invention does not strictly apply the concept of equivalence. In any case, the peer-to-peer, row is provided completely in the case of obstruction-level implementation, and is only accessible from its basis based on a specific integrated circuit function (ie, hard-coded) av a object. The significance of this is known from many perspective factors. First of all, in the register definition layer, it is easy to swap out peer-based drawing types, allowing regular or multiple U 丨 execution to be established. Secondly, in can be properly spaced into different regions suitable for hardware. = Is the difference between hardware and software. In software, a combination of logic functions should be established, while in AS I Cs, efficiency and reduction of ramp counts must be considered. In software, we can logically combine object-based = capabilities in a sequential manner. All view-based objects can be placed in one place, one organization = well coordinated. Things must be separated in hardware. One can u 'create an object implementation for each UI object in the window server. however,

五'發明說明(35) 卻發現這既不有效也不合乎需要。而需要指出的是,倘 若可能的話,為使匝道計數減到最低限度應當犧牲精 美,在圖12中作出更有吸引力的方案。 應當指出在這個視窗系統的執行中,只有少數可與標 準J a ν a"對等"物件相比較白勺物件。它們與只用軟體J a v a 執行中的對等有相當的差別,因為它們支援更為抽象的功 能組。一個軟體執行可能把對等分配給每一個U I物件(即 按鈕、滑動區塊、文字模組等等),而本發明採用一個單 一模組對等,處理所有與模組有關的繪圖請求。 如何操作光影追蹤引擎 光影追蹤引擎5 1 1接著壓縮所有現行的繪圖代碼,並 為解釋圖文框5 1 2,圖形5 1 3,模組5 1 4和程式字串5 1 5實例 提供再現器/處理器。該光影追蹤驅動程式一般通過記憶 體引用或經由一固定大小串流(3 0位元組)存取這些實體。 所述實例包含一命令位元組,指導光影追蹤引擎關於該物 件應執行哪一種方法。 當該光影追蹤引擎接收一實例時,它首先對正被發送 到四個支援物件之一的物件類型解碼。一旦釐清了物件類 型,就把適用於該特定物件類型的參數傳送到解碼器。上 述執行方法(例如,模组:圖晝())被確定,同時該方法得 以執行。 繪圖模組實例Five 'invention notes (35) found that this was neither effective nor desirable. It should be noted that, if possible, the fineness should be sacrificed in order to minimize the ramp count, and a more attractive solution is shown in FIG. 12. It should be pointed out that in the implementation of this windowing system, only a few objects can be compared with the standard J a ν a " peer " object. They are quite different from peers in software-only implementations, because they support more abstract functional groups. A software implementation may assign a peer to each UI object (ie, a button, a slide block, a text module, etc.), while the present invention uses a single module peer to handle all module-related drawing requests. How to operate the light and shadow tracking engine The light and shadow tracking engine 5 1 1 then compresses all current drawing codes and provides a reproducer for the explanation of frames 5 1 2, graphics 5 1 3, modules 5 1 4 and program strings 5 1 5 /processor. The light and shadow tracking driver typically accesses these entities through memory references or via a fixed-size stream (30 bytes). The example includes a command byte that instructs the light and shadow tracking engine on which method the object should perform. When the light tracking engine receives an instance, it first decodes the object type being sent to one of the four supported objects. Once the object type is clarified, the parameters applicable to that particular object type are passed to the decoder. The above-mentioned execution method (for example, module: Tuday ()) is determined and the method can be executed at the same time. Drawing module example

第40'頁 以Q4〇7 五、發明說明(36) 就一模組:圖畫()而言,所述物件被進一步詢問以找 出有待顯示模组的類型°光影追蹤引擎目前的模組扇區知 道,該如何再現圖1 3上所顯示的基於顯示的視窗小部份 的類型。 一旦光影追蹤引擎察覺到模組類型是在繪圖,就詢問 實例關於例如視窗小部份儲存單元和尺寸之類的信息。然 後上述模組就在螢幕上再現。 因為物件都是相當小的,不可能在模組實例範圍内傳 送程式字串。情況正是如此,在本發明中一個實例的固定 大小多半是3 0位元組,它可能比程式字串本身的大小更 小。因此,在發送現行模組到光影追蹤引擎之前,先發送 程式字串或至少引用程式字串。 程式字串由光影追蹤引擎累加儲存。串流或引用固定 位元組物件包含字串信息一般被送到光影追蹤引擎。該程 式字串可能後隨另一個包含另一個程式字串的固定程式區 塊。連續傳輪被並置在一程式字串的末端上,直到一模組 實例到達。 一旦所述模組到達,該累加儲存的程式字_與其相關 聯,於是該模組就與其程序字串一起再現。在文字可能有 非常龐大程式字串的情況下,上述的結合特別有必要。 應當指出,在最終AS I C形式中,上述結合處理(參照 圖1 4)包括把指針累加到固定程式區塊,其包含用以再現 的程式字串而不是結合的程式字串本身。 這是很有必要的,因為某些模組可能有很大的文字内Q4〇7 on page 40 'V. Description of the invention (36) For a module: picture (), the object is further interrogated to find the type of module to be displayed The area knows how to reproduce the type of small portion of the display-based window shown in FIG. 13. Once the light tracking engine detects that the module type is drawing, it asks the instance for information such as the window's small storage unit and size. The above modules are then reproduced on the screen. Because the objects are quite small, it is not possible to pass program strings within the scope of a module instance. This is the case. The fixed size of an example in the present invention is mostly 30 bytes, which may be smaller than the size of the program string itself. Therefore, before sending the current module to the light and shadow tracking engine, send the program string or at least quote the program string. The program string is accumulated by the light and shadow tracking engine. Streaming or referencing fixed byte objects containing string information is typically sent to the light tracking engine. The program string may be followed by another fixed program block containing another program string. Continuous passes are juxtaposed on the end of a program string until a module instance arrives. Once the module arrives, the accumulated stored program word _ is associated with it, and the module is then reproduced with its program string. In situations where the text may have very large program strings, the above combination is particularly necessary. It should be noted that in the final AS IC format, the above-mentioned combining process (refer to FIG. 14) includes accumulating pointers to the fixed program block, which contains the program string for reproduction instead of the combined program string itself. This is necessary because some modules may have large text

第41'頁 44Q4〇7 五 '發明說明(37) 容,例如在傳統J a v a上的文字區多半是3 2千位元組或更大 些。一文字區基本上是一文字編輯對象。把本發明的型式 按比例縮小有可能任意分配一最大文字數量,使之能夠保 証有效應用在只有小的儲存所涵蓋區的設備上。 一旦模組與其程式字举得以再現,程式字事本身就被 複位為零,處於為下一個程式字串/模组結合的準備狀 態。 續~圖圖形實例 圖形實例與模組實例有所不同。圖形實例擔負繪圖低 階層圖元,在這方面模組可驅動這圖元或甚至驅動數以百 計的圖元,包括線條,實心區和文字,以便繪圖某些像可 編輯文字區那樣。圖形物件支援基本要素繪圖的通用類 型。圖1 5顯示的繪圖類型是由光影追蹤引擎中的圖形物件 支援的。 圖形對等執行在光影追蹤引擎中看起來是相當複雜 的,但實際上比模組對等要簡單得多。圖形滿足很低層次 的繪圖,而模組通常把一組圖形繪圖特徵組合進如前面段 落所描述的單個宏指令中。 繪圖圖文框實例 圖文框比較直截了當地說就是它們做什麼。當這是圖 文框對等執行的一種等級時,它在一特定類型的螢幕上繪 製視窗。視窗顯示類型可取決於上述執行而改變,並可支Page 41 '44Q4〇5' Description of the invention (37) For example, the text area on the traditional Jav a is mostly 3 2 kilobytes or larger. A text area is basically a text editing object. It is possible to arbitrarily reduce the type of the invention to a maximum number of characters, so that it can be effectively applied to equipment with only a small storage area. Once the module and its program word are reproduced, the program word itself is reset to zero, and it is ready for the next program string / module combination. Continued ~ Figure Graphic Example The graphic example is different from the module example. The graphic example is responsible for drawing low-level graphics primitives. In this respect, the module can drive this graphics primitive or even hundreds of graphics primitives, including lines, solid areas, and text, so that some of the drawings are like editable text areas. Graphic objects support a common type of basic element drawing. The drawing types shown in Figure 15 are supported by graphic objects in the light and shadow tracking engine. Graphical peering looks quite complicated in the light and shadow tracking engine, but it is actually much simpler than module peering. Graphics satisfy very low-level drawing, while modules usually combine a set of graphic drawing features into a single macro instruction as described in the previous paragraph. Drawing Frame Examples Frames are more straightforward to say what they do. When this is a level of frame peering, it draws a window on a particular type of screen. The window display type can be changed depending on the above implementation and can be supported

第42'頁 ^4840 7 五、發明說明(38) 援多種個性類型,情況就是概括驅動程式的全面 關聯 但被 通常,圖文框有一標題欄,一圖標影像^ 一作用 的游標類型。圖文框按模組和圖形相同的方 與其 形成在它們包含的U I後面。 J運轉’ 圖文框在標準Java執行中是合成文件的—種 而,因為這有些像幀元同位體,它與任何其它物麵型。然 接關係。就光影追縱引擎而論,一個視窗僅僅是又有直 集指令的特殊物件,它繪製特定的線條集合,有〜巨 現得與一模組在該層次上的工作方式非常相似 '。等。它表 物件 歹丨j 圖1 6是按照本發明的j a v a. A W T加速器物件其 ^ + . 7丨卞B理的圖Page 42 '^ 4840 7 V. Description of the invention (38) A variety of personality types are supported. The situation is to summarize the overall association of the driver. But usually, the frame has a title bar, an icon image, and a functioning cursor type. The frames are formed in the same way as the modules and graphics behind the U I they contain. The J run frame is a synthetic file in standard Java implementation—it's because it's a bit like a frame element peer, and it's like any other object type. Then connect. As far as the light and shadow tracking engine is concerned, a window is just a special object with a direct set command. It draws a specific set of lines. It is very similar to the way a module works at this level. Wait. It represents the object 歹 丨 j. Figure 16 is a diagram of the ^ +. 7 丨 卞 B principle of the j a v a. A W T accelerator object according to the present invention.

μ求在執行驅動程式2 7 0中排隊等候輪入/於山& M 1〇8等待處理。 w出w求佇 當一個物件開始工作時’它就加入 1 〇 〇 作物件目切· 丄2 2。在圖1 6中,輸入/輸出佇列請求中 綠 建立一個圖文框物件272。當所述圖文框被建立時%未是 274加入到工作物件目錄。下一個物件 、1就把 件物件m’接著就被移向上述輸人二:請事 部°當所述事件被建立時,也把2 7 8加入到工作^列的項 錄。、其剩餘物件工作一直進行到物件Java虛擬機件目 私式引用計數減少到零為止(參照以上圖9 )。此 战回收 時物件可包含相互引用。例如,窗口範圍内的關’,需要 之中的一個按鈕,依據所述按鈕顯示的文字就是由視窗 用加以表明的。 疋由上述?丨 圖〗7是按照本發明在java. AWT加速器令視 m顯示系μ seeks to wait in line in the execution of the driver 270 / Yu Shan & M 108 is waiting for processing. w 出 w 求 伫 When an object starts to work, it adds 1 〇 〇 for the object eye-cutting 丄 2 2. In Figure 16, the input / output queue request is green. A frame object 272 is created. When the frame was created %% 274 was added to the work item directory. The next object, 1 will then move the object m 'to the above input two: the event department. When the event is established, 2 7 8 is also added to the entry in the task ^ column. The remaining object work continues until the private reference count of the object Java virtual machine item is reduced to zero (see Figure 9 above). Objects can contain references to each other during this war. For example, "off" in the window range requires one of the buttons, and the text displayed according to the button is indicated by the window.疋 From the above?丨 Figure 7 is a display system based on java. AWT accelerator in accordance with the present invention.

第43 '頁 4484〇 五、發明說明(39) 統2 5 2功能性的說明。在該通用圖形控制器8 2中完成用於 J a v a. A W T應用程式組織的硬體等價微碼。在本發明的最佳 實施例令,通過上述通用圖形控制器完成的功能包括: -建立圖文框(即視窗); -建立模組(即檢視); -傳送影像數據到影像再現器; -傳送文字到字體再現器; -傳送形狀到多邊形再現器; -允許為圖文框和模組選擇(聚焦); -從螢幕中實際刪除圖文框和模組; -當於檢視中晝圖方法被呼叫時來回移動物件層;及 -通過按下滑鼠器和鍵盤按鈕,藉助圖文框和模組 鏈操縱滑鼠和鍵盤事件。 通過視窗管理器2 5 4完成的功能包括: -利用在多邊形再現器中的多邊形製圖拉出到視窗 上; -管理多個視窗以便它們能夠重疊; -確定圖文框中已發生事件,並通知適當的配置管 理器實例它可能需要進行更新;以及 -在每一個圖文框中監視各分層的合成文件。 視窗/顯示系統還包括一配置管理器2 5 6和一模組 管理器258。上述配置管理器屬於(被引用)一圖文 框,並完成以下功能: -在一個圖文框的範圍内管理各分層的合成文件;及Page 43 '4484〇 5. Description of the invention (39) System 2 5 2 Functional description. The hardware equivalent microcode for the J a v a. A W T application organization is completed in the general graphics controller 82. In the preferred embodiment of the present invention, the functions performed by the general-purpose graphics controller include:-creating a frame (ie, a window);-creating a module (ie, viewing);-transmitting image data to an image reproducer;- Transfer text to the font renderer;-Transfer shapes to the polygon renderer;-Allow selection (focusing) of frames and modules;-Actually delete frames and modules from the screen;-When viewing the daytime map method Move object layers back and forth when called; and-manipulate mouse and keyboard events with frames and module chains by pressing mouse and keyboard buttons. The functions performed by the window manager 2 5 4 include:-drawing to a window using a polygon drawing in a polygon renderer;-managing multiple windows so that they can overlap;-determining that an event has occurred in the frame, and notifying It may need to be updated for the appropriate configuration manager instance; and-monitoring the layered composite files in each frame. The window / display system also includes a configuration manager 256 and a module manager 258. The above-mentioned configuration manager belongs to (referenced) a frame and performs the following functions:-manages various layered composite files within the scope of a frame; and

第44’頁 44&4〇7 ^_________ 五、發明說明(4〇) 一確定合成文件中已發生事件,如有必要,指示合 成文件進行更新。 通過模組管理器完成的功能包括·· -在一個合成文件的範圍内管理各分層的模組;以及 一確定核組中已發生事件,如有必要,指示模組進 行更新。 11 1 8是按照本發明的Java柚象視窗工具箱視窗/合成 文件/顯示實例分層2 9 0的實施例圖形。圖文框2 9 2可包含 一個或多個配置/合成文件294,296。每一合成文件本身 又可包含一個或多個不同類型的模組。 圖1 9疋由本發明支援的J a v a. N E T物件的圖形。可提供 寫作工具以允許使用者從現成NET/10基本設計組織154 中’通過匯編先有模組建立Java.NET和Java. 10基本設計 組織的物件和方法。 在本發明的最佳實施例中支援的Java· NET等級320包 括: 一數據語法分析信息封包324 ; —數據語法分析虛擬連接埠3 2 6 ; _超文字傳輪協定全球資源定位器(HTTPURL)連接 328 ; —網際網路地址3 3 0 ; —多目標信息封包虛擬連接埠3 3 2 ; -伺服器虛擬連接埠3 3 4 ; -虛擬連接埠336;Page 44 ’44 & 4〇7 ^ _________ V. Description of the Invention (4〇) Once it is determined that an event has occurred in the synthesis file, if necessary, instruct the synthesis file to be updated. The functions performed by the module manager include ...-managing layers of modules within the scope of a synthetic file; and-determining that an event has occurred in the core group and instructing the module to update if necessary. 11 1 8 is a figure of an embodiment of a Java grapefruit window toolbox window / compositing file / display example layering 290 according to the present invention. Frames 2 9 2 may contain one or more configuration / composition files 294, 296. Each synthesis file itself can contain one or more different types of modules. Fig. 19: Graphic of a Jav a. N E T object supported by the present invention. Writing tools are available to allow users to build Java.NET and Java. 10 basic design organizations 'objects and methods from existing NET / 10 basic design organizations 154' by assembling pre-existing modules. The Java.NET level 320 supported in the preferred embodiment of the present invention includes: a data parsing information packet 324;-a data parsing virtual port 3 2 6; _ Hypertext Transfer Protocol Global Resource Locator (HTTPURL) Connection 328;-Internet address 3 3 0;-Multi-destination information packet virtual port 3 3 2;-Server virtual port 3 3 4;-Virtual port 336;

第45’頁 44840 7Page 45 ’44840 7

10等級322包括: 五'發明說明(41) -虛擬連接埠執行3 3 8 ; -全球資源定位器(UR L ) 3 4 0 ; -全球資源定位器連接3 4 2 ; -全球資源定位器編碼器3 4 4 ;以及 -全球資源定位器串流處理程式3 2 6。 在本發明的最佳實施例中支援的J a v a. -緩充區輸入串流348 ; -緩充區輸出串流3 5 0 ; -位元組陣列輸出串流3 5 2 ; -資料輸入串流3 5 4 ; -資料輸出串流3 5 6 ; -行輸入串流3 5 8 ; -列印串流3 6 0 ; -〈通用化方法&gt; 3 6 2 ;以及 -〈通用化功能&gt; 3 6 4。 在Java_ NET加速器中省去許多多餘支援物 t 導致損失任何網路連結的功能。 ’並沒有 疋按照本發明的Java. NET加速器的功 包括Java. NET應用程式組織實例和方法的—=圖形。將 Java虛擬機U並通過Java,NET軟體占位程二緒,從Level 10 322 includes: Five 'invention description (41)-Virtual port execution 3 3 8;-Global resource locator (UR L) 3 4 0;-Global resource locator connection 3 4 2;-Global resource locator code器 3 4 4; and-Global Resource Locator Stream Handler 3 2 6. Jav a supported in the preferred embodiment of the present invention.-Slow charge zone input stream 348;-Slow charge zone output stream 3 5 0;-Byte array output stream 3 5 2;-Data input Stream 3 5 4;-Data output stream 3 5 6;-Line input stream 3 5 8;-Print stream 3 6 0;-<Generalization method> 3 6 2; and-<Generalization function &gt; 3 6 4. Eliminating a lot of extra support in the Java_ NET accelerator leads to loss of any network connection functionality. No, the functions of the Java. NET accelerator according to the present invention include the examples and methods of organizing Java. NET applications—graphics. The Java virtual machine U and the Java, NET software placeholder are two threads, from

Stub)52卸載到硬體物件管理系統22。暫存哭^ Ware 監控並同步地傳送到在φ嫵⑺丨丨^七 卄扣&quot;面裎式64 % ^ m yk ^ 在機CPU62與上述硬體物件管理系 规之間的所有輸入和輪出d τStub) 52 is offloaded to the hardware object management system 22. Temporary cry ^ Ware monitors and synchronizes all the inputs and rotations between φCPU 丨 丨 ^ 七 卄 扣 &quot; face 64% ^ m yk ^ on-board CPU62 and the above hardware object management system D τ

Java’ NET物件請求被接收並儲存在輪入/輸出請求佇Java ’NET object requests are received and stored in rotation / output requests 伫

第46 ’頁 44840 7 五,發明說明(42) 列1 0 8中等待處理。接著任務處理器丨5 〇將每一請求引導到 硬體NET加速器3 7 0。該加速器包括網路系統372和連接驅 動程式3 8 2。上述連接驅動程式利用,舉例來說如[p 3 8 4,T C P / I P 3 8 6 ’以及U D P 3 8 8這樣的網路通信協定,執行 請求以建立、保持、或終止網路連接。 在網路控制3 7 4中完成用於J a v a · n £ τ加速器的微 碼。視窗/顯示系統還包括網路查詢機3 7 6,虛擬連接埤管 理器3 7 8和串流管理器3 8 0。 圖21是本發明在java. MET加速器視窗/顯示系統372内 部的功能性說明。網路控制器374的功能包括: -信號D N S查詢; -信號網路界面形成,允許多重同時的網路界面; -執行網路輸入和輸出; -信號關閉網路界面;以及 -以抽象分層形式通過TCP和UDP協定操作。 網路控制器可同步地或非同步地操作。網路查詢機 3 7 6完成D N S查閱並把結果報告到網路控制器^ 網路界面管理器3 7 8管理正由應用程式使用著的網路 界面。4項管理包括打開或終止網路界面的連接。上述網 路界面管理器還確定合成文件中已發生事件,如有必要, 通知合成文件進行更新。當被請求時’將網路界面狀態傳 送到上述網路控制器。 串流管理器380通過TCP/IP或UDP連結穿梭傳送基於字 符/數據流的輪入或輪出。上述串流管理器提供一種不同Page 46 ’44840 7 Fifth, the description of the invention (42) column 108 is waiting for processing. The task processor then directs each request to the hardware NET accelerator 370. The accelerator includes a network system 372 and a connection driver 3 8 2. The above connection driver uses, for example, network communication protocols such as [p 3 8 4, T C P / IP 3 8 6 ′, and U D P 3 8 8 to execute requests to establish, maintain, or terminate network connections. The microcode for the Jav a · n £ τ accelerator is completed in Network Control 3 7 4. The window / display system also includes a network inquiry machine 3 76, a virtual connection manager 3 78 and a stream manager 3 8 0. FIG. 21 is a functional illustration of the present invention inside a java. MET accelerator window / display system 372. FIG. The functions of the network controller 374 include: -Signal DNS query; -Signal network interface formation to allow multiple simultaneous network interfaces; -Perform network input and output; -Signal close network interface; and -Abstract layering The form operates through TCP and UDP protocols. The network controller can operate synchronously or asynchronously. The network query machine 3 7 6 completes the D N S review and reports the results to the network controller ^ The web interface manager 3 7 8 manages the web interface being used by the application. Four management items include opening or closing the connection to the web interface. The above-mentioned network interface manager also determines that an event has occurred in the synthesis file, and if necessary, notifies the synthesis file to update. When requested, ’the network interface status is transmitted to the above network controller. The stream manager 380 shuttles character / data stream-based rotation in or out through a TCP / IP or UDP connection. The above stream manager provides a different

第471 4484〇7 五、發明說明(43) 於應用程式使用的輸入/輸出串流的選擇。此外,當被請 求時,該串流管理器把緩充區轉換到網路控制器。 雖然此中依照最佳實施例描述了本發明,但是熟悉本 技術領域的人士很容易懂得,其它應用可能替代這些陳述 而沒有脫離本發明的實質和範圍。例如,在本發明的最佳 實施例中,不管支援應用程式組織的數量有多少,在AS I C 上只需要一個硬體物件管理系統。然而,在另外一些實施 例中,提供多個硬體物件管理系統。舉例來說,當每個硬 體組件有一特定硬體物件管理系統時,可為每個支援應用 程式組織提供單獨的硬體組件,例如一區塊AS I C。可以將 本發明構成電腦系統的一部份,或者也可以構成可插入的 設備,例如一 P C I卡的一部份。 熟悉本技術領域的人士將能夠很容易地應用眾所周知 的程式技術和設備,來構造本發明所要求的硬體和軟體。 因此,應當僅用以下包含的申請專利範圍來限制本發 明。 元件符號對照說明表: 10 硬體加速器 12 J a v a應用程式 14 Java小應用程式 1 6 J a v a虛擬機 18 J a v a操作系統Article 471 4484〇5. Description of the Invention (43) Selection of input / output streams used by applications. In addition, when requested, the stream manager converts the slow charge zone to a network controller. Although the invention has been described herein in accordance with a preferred embodiment, those skilled in the art will readily appreciate that other applications may replace these statements without departing from the spirit and scope of the invention. For example, in the preferred embodiment of the present invention, regardless of the number of supporting application organizations, only one hardware object management system is required on the AS IC. However, in other embodiments, multiple hardware object management systems are provided. For example, when each hardware component has a specific hardware object management system, a separate hardware component can be provided for each supporting application organization, such as a block AS IC. The invention may be part of a computer system, or it may be part of a pluggable device, such as part of a PCI card. Those skilled in the art will be able to easily apply well-known programming techniques and equipment to construct the hardware and software required by the present invention. Therefore, the scope of the present invention should be limited only by the scope of patent applications contained below. Component symbol comparison table: 10 hardware accelerator 12 J a v a application 14 Java applet 1 6 J a v a virtual machine 18 J a v a operating system

第48’頁 五 '發明說明(44) 20 軟體物件管理系統 22 硬體物件管理系統 24 Java.NET 加速器 26 Java抽象視窗軟體工具箱(AWT) 2 8 TCP/IP儲存堆疊 30 顯示幕/框格緩衝區/鍵盤/滑鼠 3 2 Java等級資料庫Fifty-eighth page of the invention description (44) 20 Software Object Management System 22 Hardware Object Management System 24 Java.NET Accelerator 26 Java Abstract Window Software Toolbox (AWT) 2 8 TCP / IP Storage Stack 30 Display / Frame Buffer / Keyboard / Mouse 3 2 Java Level Library

34 Java.AWT34 Java.AWT

36 Java.NET 3 8 Java. 10 4 0 二維繪圖驅動程式 42 Java.Lang 50 Java. AWT 軟體 S 位程式(software stub) 52 Java. NET軟體占位程式(software stub) 54 Java. 10軟體占位程式(software stub) 60 硬體加速器36 Java.NET 3 8 Java. 10 4 0 2D drawing driver 42 Java.Lang 50 Java. AWT software S stub 52 Java. NET software stub 54 Java. 10 software stub Software stub 60 hardware accelerator

62 主機CPU 6 4 暫存器介面 7 4 應用驅動程式 76 TCP/IP 堆疊 78 JPEG/GIF 解碼器 80 圖形命令生成器 82 圖形控制器 84 框格緩衝區管埋程式62 Host CPU 6 4 Register interface 7 4 Application driver 76 TCP / IP stacking 78 JPEG / GIF decoder 80 Graphics command generator 82 Graphics controller 84 Frame buffer embedded program

第49 '頁 4^S4〇7 五、發明說明(45) 88 記憶體 92 框格缓衝區器 94 物理傳輸 100 多緒執行 102 多緒執行 104 多緒執行 106 多緒執行 108 輸入/輸出請求仔列 122 工作物件目錄 144 狀態 150 處理益' 160 邊框配置 162 按紐 164 詳細檢查 166 卡片配置 168 確認方塊 170 確認方塊组 172 確認方塊選項 174 選擇 176 對話框 178 信息流配置 180 網格包配置 182 網格配置 184 標識符號Page 49 'Page 4 ^ S4〇7 V. Description of the invention (45) 88 Memory 92 Sash buffer 94 Physical transmission 100 Multithreaded execution 102 Multithreaded execution 104 Multithreaded execution 106 Multithreaded execution 108 Input / output request Zai Li 122 Work Item Catalog 144 Status 150 Processing Benefits 160 Frame Configuration 162 Buttons 164 Detailed Inspection 166 Card Configuration 168 Confirm Box 170 Confirm Box Group 172 Confirm Box Options 174 Select 176 Dialog 178 Information Flow Configuration 180 Grid Package Configuration 182 Grid Configuration 184 Logo

第50 I 4484〇γ 五、發明說明(46) 186 目 錄 188 媒 體 追 蹤 器 190 選 單 192 選 早 攔 194 可 選 項 196 多 邊 形 198 矩 形 200 滾 動 條 202 文 字 犯 圍 204 文 字 模 組 206 文 字 區 段 208 視 窗 210 彩 色 模 型 212 模 組 214 合 成 文 件 216 影 像 裁 剪 帥 選 218 直 接 換 色 模 型 220 事 件 222 字 體 224 字 體 規 格 226 圖 文 框 228 圖 形 230 網 格 包 壓 縮 232 影 像Section 50 I 4484〇γ 5. Description of the Invention (46) 186 Table of Contents 188 Media Tracker 190 Menu 192 Select Early Block 194 Optional 196 Polygon 198 Rectangle 200 Scroll Bar 202 Text Violation 204 Text Module 206 Text Section 208 Color model 212 Module 214 Composite file 216 Image cropping selection 218 Direct color change model 220 Event 222 Font 224 Font size 226 Frame 228 Graphic 230 Mesh pack compression 232 image

第51頁 4^84〇7 五、發明說明(47) 2 3 4 影像篩選 2 3 6 彩色模型索引 238 選項單模組 2 4 0 圖素數據採集器 242 RGB影像篩選 2 5 0 硬體AWT加速器 2 5 2 視窗/顯示系統 2 5 4 視窗管理器 2 5 6 配置管理器 258 模組管理器 2 6 0 光影追蹤引擎 2 6 2 影像再現器 2 6 4 多邊形再現器 2 6 6 字體再現器 2 70 驅動程式 2 72 圖文框物件 2 7 6 事件物件 252 視窗/顯示系統 2 54 視窗管理器 2 5 6 配置管理器 2 5 8 模組管理器 2 9 0 視窗/合成文件/顯示實例分層 292 圖文框 2 94 配置/合成文件Page 51 4 ^ 84〇7 V. Description of the invention (47) 2 3 4 Image screening 2 3 6 Color model index 238 Option module 2 4 0 Pixel data collector 242 RGB image screening 2 5 0 Hardware AWT accelerator 2 5 2 Window / Display System 2 5 4 Window Manager 2 5 6 Configuration Manager 258 Module Manager 2 6 0 Light Tracing Engine 2 6 2 Image Reproducer 2 6 4 Polygon Reproducer 2 6 6 Font Reproducer 2 70 Driver 2 72 Frame Object 2 7 6 Event Object 252 Window / Display System 2 54 Window Manager 2 5 6 Configuration Manager 2 5 8 Module Manager 2 9 0 Window / Composite File / Display Instance Hierarchy 292 Figure Box 2 94 Configuration / synthesis file

第52頁 44^4〇7 五、發明說明(48) 2 9 6 配置/合成文件 320 Java. NET 等級 3 2 2 Java. 10 等級 3 2 4 數據語法分析信息封包 3 2 6 數據語法分析虛擬連接璋 3 2 6 全球資源定位器串流處理程式 3 2 8 超文字傳輸協定全球資源定位器(HTTPURL ) 3 3 0 連接網際網路地址 3 3 2 多目標信息封包虛擬連接埠 334 伺服器虛擬連接埠 3 3 6 虛擬連接埠 338 虛擬連接埠執行 3 4 0 全球資源定位器(URL) 3 4 2 全球資源定位器連接 3 4 4 全球資源定位器編碼器 3 4 8 緩充區輸入串流 3 5 0 緩充區輸出串流 3 5 2 位元組陣列輸出串流 3 54 資料輸入串流 3 5 6 資料輸出串流 3 5 8 行輸入串流 3 6 0 列印串流 3 6 2 通用化方法 364 通用化功能Page 52 44 ^ 4〇7 V. Description of the invention (48) 2 9 6 Configuration / synthesis file 320 Java. NET level 3 2 2 Java. 10 level 3 2 4 Data parsing information packet 3 2 6 Data parsing virtual connection璋 3 2 6 Global Resource Locator Stream Handler 3 2 8 Hypertext Transfer Protocol Global Resource Locator (HTTPURL) 3 3 0 Internet address connection 3 3 2 Multi-target message packet virtual port 334 Server virtual port 3 3 6 Virtual Port 338 Virtual Port Execution 3 4 0 Global Resource Locator (URL) 3 4 2 Global Resource Locator Connection 3 4 4 Global Resource Locator Encoder 3 4 8 Slow Charge Zone Input Stream 3 5 0 Slow charge zone output stream 3 5 2 byte array output stream 3 54 data input stream 3 5 6 data output stream 3 5 8 line input stream 3 6 0 print stream 3 6 2 generalization method 364 Generalized functions

第53頁 448407 五、發明說明(49) 370 硬體NET加速器 372 網路糸統 382 連接驅動程式 384 IP 386 TCP/IP 388 UDP 374 網路控制器 376 網路查詢機 378 虛擬連接埠管理器 380 串流管理器 400 記憶體 401 記憶體控制器/仲裁器 402 物件I D分解器 403 物件定位器 405 FIFOs 406 暫存器介面程式 407 暫存器 408 解碼器 409 暫存器介面程式 410 暫存器介面程式 412 FIFOs 413 暫存器 414 解碼器 415 暫存器介面程式 4484 ο 7Page 53 448407 V. Description of the invention (49) 370 Hardware NET accelerator 372 Network system 382 Connection driver 384 IP 386 TCP / IP 388 UDP 374 Network controller 376 Network inquiry machine 378 Virtual port manager 380 Stream manager 400 memory 401 memory controller / arbiter 402 object ID resolver 403 object locator 405 FIFOs 406 register interface program 407 register 408 decoder 409 register interface program 410 register interface Program 412 FIFOs 413 register 414 decoder 415 register interface program 4484 ο 7

第55頁Page 55

Claims (1)

4484 0 7 六、申請專利範圍 申請鼻利範it} 1 _勺=用於逮運行物件導向程式語言處理器的裝置,它 包3 ’用方、元成至少一種所述物件導向程式語言的應用 &amp;式、σ構的硬體加速器;以及用於把所述硬體加速器連 接=所^處理器的軟體占位程式(software stub)。 心…、申β專利範圍1所述的裝置,所述物件導向程式語 言是Java 。 3 ’ ^ ^ S明專利範圍1所述的裝置,係用於管理所述應用 权式、、&quot;構的貫例和分配給所述實例的數值狀態的硬體物 件管理系統。 ' 4 按如、申叫專利範圍1所述的裝置,所述硬體加速器包含: 用於接收和依序地儲存每—待執行指令的所述指令的 輸入/輸出請求佇列; 用於處理所述指令的任務處理器;以及 用於追蹤弓丨用計數數到一實例並用於去除未在使用 實例的現用物件目錄。 ' 5. 按照申請專利範圍1所述的裝置,所述硬體加速器實現 Java· AWT應用程式結構。 6. 按照申請專利範圍5所述的裝置,包含: 一視窗/顯不系統;以及—光影追蹤驅動程式。 7. 按照申請專利範圍6所述的裝置,所述視窗/顯示系統包 含: 用於建立圖文框和模組並用於把數據傳送到所述光影4484 0 7 VI. Scope of application for patent Application for nasal benefits it} 1 _ spoon = device for catching and running an object-oriented programming language processor, which includes 3 'users, yuan, and at least one application of the object-oriented programming language & amp A hardware accelerator of the formula, σ structure; and a software stub for connecting the hardware accelerator to the processor. Mind ... The device described in patent scope 1 of the application, the object-oriented programming language is Java. 3 '^ ^ The device described in Patent Scope 1 is a hardware object management system for managing the application rights, the structured examples, and the numerical status assigned to the examples. '4 According to the device as claimed in Patent Scope 1, the hardware accelerator includes: an input / output request queue for receiving and sequentially storing each of the instructions to be executed; for processing A task processor of the instruction; and a tracker for tracking the bow count to an instance and for removing a list of current objects that are not in use. '5. According to the device described in Patent Scope 1, the hardware accelerator implements a Java · AWT application program structure. 6. The device according to claim 5 includes: a window / display system; and—light and shadow tracking driver. 7. The device according to claim 6, wherein the window / display system includes: for creating frames and modules and for transmitting data to the light and shadow 第57頁 4^〇4〇7 六、申請專利範圍 追蹤驅動程式的一通用圖形控制器; -用於管理所述圖文框的視窗管理器; -用於在所述圖文框之内管理合成文件階層的配置管理 器;以及 -用於在所述合成文件之内管理模組階層的模組管理 器。 8. 按照申請專利範圍1所述的裝置,所述硬體加速器實現 J a v a. N E T和J a v a. I 0應用程式結構。 9. 按照申請專利範圍8所述的裝置,包含: 一視窗/顯示系統;以及一連接驅動程式。 1 0.按照申請專利範圍9所述的裝置,所述視窗/顯示系統 包含: -對所述硬體物件管理系統敏感的網路控制器,所述網 路控制器實現Java. NET結構等價的微代碼,其中所述 網路控制器通過由所述連接驅動程式支持的協定作為 抽象層運行; -用於執行DNS尋找並用於把報告結果傳送到上述網路 控制器的網路查詢機制; -用於管理由應用程式使用的網路介面的網路介面管理 器;以及 -用於通過由網路協定支持的連結往返空間輸入和輸出 數據的串流管理器。 1 1.按照申請專利範圍1所述的裝置,所述硬體加速器構成 作為應用程式特定積體電路的一部份。Page 57 4 ^ 〇4〇6. A general-purpose graphics controller for the patent application tracking driver;-a window manager for managing the frame;-for managing within the frame A configuration manager for a composite document hierarchy; and a module manager for managing a module hierarchy within the composite document. 8. According to the device described in patent application scope 1, the hardware accelerator implements the J a v a. N E T and J a v a. I 0 application program structures. 9. The device according to claim 8 includes: a window / display system; and a connection driver. 10. The device according to claim 9 of the application for patent, the window / display system comprises:-a network controller sensitive to the hardware object management system, the network controller implements a Java. NET structure equivalent Microcode, wherein the network controller operates as an abstraction layer through a protocol supported by the connection driver;-a network query mechanism for performing DNS lookups and for transmitting report results to the network controller; -A network interface manager for managing a network interface used by an application; and-a stream manager for inputting and outputting data to and from a space through a link supported by a network protocol. 1 1. According to the device described in the patent application scope 1, the hardware accelerator is configured as a part of an application specific integrated circuit. 44^4〇 申晴專利範圍 12 含 種用於加速運行Java程式語言的處理器的裝置,包 用於貝現至少一種J a v a應用程式結構的硬體加速器; 、: 應用程式結構的實例和分配給所述實例的數 ^ 2態的硬體物件管理系統,所述硬體物件管理系統 2 3用於接收和依序地儲存每一待執行指令的所述指 令的,入/輸出請求佇列,用於處理所述指令的任務 處理器,以及用於追蹤引用計數數到一實例並用於去 除未在使用實例的現用物件目錄;以及 用於把所述硬體物件管理系統連接到所述處理器的軟 體占位程式。 3. 按照申請專利範圍1 2所述的裝置,所述硬體加速器實 現Java. AWT應用程式結構。 4. 按照申請專利範圍13所述的裝置,包含: 一視窗/顯示系統;以及·一 4^ ^ 'ώ / if 九影追蹤驅動程式。 5. 按照申請專利範圍1 4所述的妒 % …目处 幻冬. 疋的表置,所述視窗/顯示条, -用於在所述合成文件之内 器。 -用於建立圖文框和 追蹤驅動程式的通 _用於管理所述圖文 -用於在所述圖文框 器;以及 模組並用於把數據傳送 用圖形控制器; 框的視窗管理器; 之内管理合成文件階層 管理模組階層的 到所塊光影 的配置管理44 ^ 4〇 Shen Qing Patent Scope 12 Contains a device for accelerating a processor running a Java programming language, including a hardware accelerator for presenting at least one Java application structure; and: an example and allocation of an application structure A hardware object management system with a number of states for the example, the hardware object management system 23 is used to receive and sequentially store each of the instructions of the instruction to be executed, an input / output request queue A task processor for processing the instructions, and a current object directory for tracking reference counts to an instance and for removing unused instances; and for connecting the hardware object management system to the process Software placeholder. 3. According to the device described in the patent application range 12, the hardware accelerator implements a Java. AWT application program structure. 4. The device according to the scope of patent application 13, including: a window / display system; and a 4 ^ ^ 'FREE / if Nine Shadows tracking driver. 5. According to the jealousy% described in the scope of the application for patent 14 ... the magic winter. The display of the ,, the window / display bar,-for the device in the synthetic document. -A link for creating frames and tracking drivers for managing the frames-for the framer; and a module and a graphics controller for transferring data; a window manager for frames ; Within the management of the synthetic document hierarchy management module hierarchy to the light and shadow configuration management 、申靖專利範圍 述硬體加速器實 1 6.按照申請專利範圍1 2所述的誓 現Java. NET和java· 1〇應用衣置’所 1 ?·按照申請專利範圍16所述的&quot;裝式結構。 —視窗/顯示系統;以及一連.置’包含: 1 8.按照申請專利範圍丨7所述的梦區動&amp;式15 包含: 置所述視窗/顯示系統 -對所述硬體物件管理系統敏 路控制器實現Java. NET結構I 1網路控制器’所述網 網路控制器通過由所述遠i :仏的微代碼’其中所述 抽象層運行; 動权式支持的協定作為 -用於執行DNS尋找並用於把報生社 控制器的網路查詢機制; α心果傳送到上述網路 -用於管理由應用程式使用的八 管理器;以及 ”面的網路介面接口 -用於通過由所述協定支持的 數據的串流管理器。 、'Ό γ返空間輸入和輸出 1 9.按照申請專利範圍1 2所述的敦 成作為應用程式特定積體電跟,所述硬體加速器構 %略的—部份。 2〇. —種用於加速運行物件導向 八50 s處理哭的方半, 它包含如下步驟: 里印的万居 一用硬體加速器完成至少一種所述物# β L, · 件¥向應用程式結 構的應用程式結構;以及 -用軟體占位裎式(s〇ft ware s.tub)把所述硬體加速器 連接到所述處理器。2. The application of the hardware accelerator in the scope of Shenjing patent 1 6. According to the oath of application patent scope 12, Java. NET and java · 10 application application 'place 1 · According to the application patent scope 16 &quot; Installed structure. —Window / display system; and a series of devices including: 1 8. According to the dream area described in the scope of the application for patent 7 and formula 15 includes: the window / display system-the hardware object management system Minlu controller implements Java. NET structure I 1 network controller 'the network network controller runs through the micro-code by the remote i: 仏 where the abstraction layer operates; the power-supported protocol is- A network query mechanism for performing DNS lookups and used to report the news agency controller; α heart fruit to the above network-used to manage the eight managers used by applications; and the network interface interface of the- For the streaming manager of data supported by the protocol. Ό Ό 返 Backspace input and output 1 9. According to Duncheng as described in the application patent scope 12 as an application specific integrated electrical follower, the hard The body accelerator structure is slightly-part. 2〇.-A kind of method used to accelerate the operation of the object to process the crying half of the 50 s, it includes the following steps: Li Yin Wan Juyi using a hardware accelerator to complete at least one of the described物 # β L, · item ¥ 向 应Program structure app structure; and - take off clothes with soft placeholder formula (s〇ft ware s.tub) said hardware accelerator coupled to the processor. 第60頁 六、申請專利範圍 2 1.按照申請專利範圍2 ¢)所述的方法,所述物件導向程式 語言是J a v a。 2 2 .按照申請專利範圍2 0所述的方法,包含:用硬體物件管 理系統管理所述應用程式結構的實例和分配給所述實 例的數值狀態的步驟。 2 3.按照申請專利範圍2 0所述的方法,所述實現至少一個 應用程式結構的步驟包含如下步驟: -接收和依序地把所述指令儲存在每一待執行指令的輸 入/輸出請求佇列中; -在任務處理器中處理所述指令;以及 -借助現用物件目錄追蹤引用計數數到一實例並去除未 在使用的實例。 2 4 .按照申請專利範圍2 0所述的方法,所述硬體加速器實 現J a v a. A W T應用程式結構。 2 5 .按照申請專利範圍2 4所述的方法,包含如下步驟: 用視窗/顯示系統建立並顯示視窗和視圖;以及用光影 追蹤驅動程式在顯示螢幕上繪製所述視窗和視圖。 2 6.按照申請專利範圍2 5所述的方法,包含如下步驟: -提供通用圖形控制器用於建立圖文框和模組並用於把 數據傳送到所述光影追蹤驅動程式; -提供視窗管理器用於管理所述圖文框; -提供配置管理器用於在所述圖文框之内管理合成文件 階層;以及 -提供模組管理器用於在所述合成文件之内管理模組階Page 60 6. Scope of patent application 2 1. According to the method described in patent application scope 2 ¢), the object-oriented programming language is J a v a. 2 2. The method according to the scope of patent application 20 includes the steps of managing an instance of the application program structure and a numerical state assigned to the instance using a hardware object management system. 2 3. According to the method described in the scope of patent application 20, the steps of implementing at least one application program structure include the following steps:-receiving and sequentially storing the instructions in the input / output request of each instruction to be executed In the queue;-processing the instructions in the task processor; and-tracking the reference count to an instance with the current object catalog and removing unused instances. 24. According to the method described in the scope of patent application 20, the hardware accelerator implements a J a v a. A W T application program structure. 25. The method according to claim 24 includes the following steps: creating and displaying windows and views with a window / display system; and drawing the windows and views on a display screen with a light and shadow tracking driver. 2 6. The method according to the scope of patent application 25 includes the following steps:-providing a universal graphics controller for creating frames and modules and transmitting data to the light and shadow tracking driver;-providing a window manager For managing the frames;-providing a configuration manager for managing a composite file hierarchy within the frames; and-providing a module manager for managing a module hierarchy within the composite files 第61頁 44&amp;4〇? 六、申請專利範圍 層。 2 7 按照申請專利範圍2 〇所述的方法’所述硬體加速器實 現Java. NET和Java. 10應用程式結構。 2 8.按照申請專利範圍2 7所述的方法’包含如下步鄉. 用視窗/顯示系統建立並顯示視窗和視圖;以及應用連 接觸動程式操縱網路連接。 2 9.按照申請專利範圍2 8所述的方法,包含如下步鄉. -提供對所述硬體物件管理系統敏感的網路控制器,所 述網路控制器實現Java. NET結構等價的微代碼,其中 所述網路控制器通過由所述連接驅動程序支待的協定 作為抽象層運行; -提供網路查詢機制用於執行D N S尋找並用於把報土并 果傳送到所述網路控制器; -用網路介面接口管理器管理由所述應用程式使用的網 路介面;以及 -用串流管理器通過由所述協定支持的連結往返空 入和輸出數據。 雨 30_按照申請專利範圍2〇所述的方法,所述硬體加速哭 構成作為應用裎式特定積體電路的一部份。 ' 勺 3 1.按照申請專利範圍22所述的方法,所述硬體物件管王 系統提供物件I D s返回到σ子叫系統,以及jl中喊★ ί D可能是可變位長度。 初件 3 2.按照申请專利範圍2 2所述的方法,所述硬體物件營玉 系統可接受來自呼叫系統的物件I 以便識別,:严 J 所述物Page 61 44 &amp; 4〇? 6, the scope of patent applications. 27 According to the method described in the scope of patent application 20, the hardware accelerator implements Java. NET and Java. 10 application program structures. 2 8. The method according to the scope of patent application 2 7 includes the following steps. Use a window / display system to create and display windows and views; and use a contact program to manipulate the network connection. 2 9. The method according to the scope of patent application 2 8 includes the following steps.-Provide a network controller that is sensitive to the hardware object management system, and the network controller implements a Java. NET structure equivalent Microcode, in which the network controller operates as an abstraction layer through the protocol supported by the connection driver;-providing a network query mechanism for performing DNS lookups and for transmitting results to the network A controller;-using a network interface interface manager to manage a network interface used by the application; and-using a stream manager to return air-to-air and output data through a link supported by the protocol. Rain 30_ According to the method described in the scope of application patent 20, the hardware accelerated crying constitutes a part of the application-specific integrated circuit. 'Scoop 3 1. According to the method described in the patent application scope 22, the hardware object management system provides the object ID D s to return to the σ sub-calling system, and jl yell may be a variable bit length. Original document 3 2. According to the method described in the scope of patent application 22, the hardware object system can accept the object I from the calling system for identification: Yan J said object 7 // η . 六、申請專利範圍 件識別各物件,所述方法還包含如下步驟: -把基部物件I D儲存在基部引用暫存器中並使所述基部 物件I D與空閒物件定位單元相關聯;以及 -把所有另外的物件I D s引用到所述基部引用暫存器使 所述物件I D與一物件定位單元相關聯。7 // η. 6. The patent application scope identifies each object, the method further includes the following steps:-storing the base object ID in the base reference register and associating the base object ID with the idle object positioning unit ; And-referencing all further object IDs to the base reference register to associate the object ID with an object location unit. 第63頁Page 63
TW88120193A 1999-11-18 1999-11-18 Hardware accelerator for an object-oriented programming language TW448407B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW88120193A TW448407B (en) 1999-11-18 1999-11-18 Hardware accelerator for an object-oriented programming language

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW88120193A TW448407B (en) 1999-11-18 1999-11-18 Hardware accelerator for an object-oriented programming language

Publications (1)

Publication Number Publication Date
TW448407B true TW448407B (en) 2001-08-01

Family

ID=21643074

Family Applications (1)

Application Number Title Priority Date Filing Date
TW88120193A TW448407B (en) 1999-11-18 1999-11-18 Hardware accelerator for an object-oriented programming language

Country Status (1)

Country Link
TW (1) TW448407B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698413B1 (en) 2004-04-12 2010-04-13 Nvidia Corporation Method and apparatus for accessing and maintaining socket control information for high speed network connections
US7957379B2 (en) 2004-10-19 2011-06-07 Nvidia Corporation System and method for processing RX packets in high speed network applications using an RX FIFO buffer
US8065439B1 (en) 2003-12-19 2011-11-22 Nvidia Corporation System and method for using metadata in the context of a transport offload engine
US8135842B1 (en) 1999-08-16 2012-03-13 Nvidia Corporation Internet jack
US8176545B1 (en) 2003-12-19 2012-05-08 Nvidia Corporation Integrated policy checking system and method
US8549170B2 (en) 2003-12-19 2013-10-01 Nvidia Corporation Retransmission system and method for a transport offload engine

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8135842B1 (en) 1999-08-16 2012-03-13 Nvidia Corporation Internet jack
US8065439B1 (en) 2003-12-19 2011-11-22 Nvidia Corporation System and method for using metadata in the context of a transport offload engine
US8176545B1 (en) 2003-12-19 2012-05-08 Nvidia Corporation Integrated policy checking system and method
US8549170B2 (en) 2003-12-19 2013-10-01 Nvidia Corporation Retransmission system and method for a transport offload engine
US7698413B1 (en) 2004-04-12 2010-04-13 Nvidia Corporation Method and apparatus for accessing and maintaining socket control information for high speed network connections
US7957379B2 (en) 2004-10-19 2011-06-07 Nvidia Corporation System and method for processing RX packets in high speed network applications using an RX FIFO buffer

Similar Documents

Publication Publication Date Title
US6983357B2 (en) Hardware accelerator for an object-oriented programming language
US9098297B2 (en) Hardware accelerator for an object-oriented programming language
US6330659B1 (en) Hardware accelerator for an object-oriented programming language
US7426734B2 (en) Facilitating presentation functionality through a programming interface media namespace
Watsen et al. Bamboo-a portable system for dynamically extensible, real-time, networked, virtual environments
US6344855B1 (en) Encapsulated network entity reference of a network component system for integrating object oriented software components
KR101545360B1 (en) Proteins pools and slawx in processing environments
US5852436A (en) Notes facility for receiving notes while the computer system is in a screen mode
JP4165683B2 (en) Generate a persistent representation of a complex data structure
EP0777943B1 (en) Extensible, replaceable network component system
EP1566754B1 (en) Efficient communication in a client-server scene graph system
US5864850A (en) Asynchronous-event opening component of a network component system
US7716685B2 (en) Pluggable window manager architecture using a scene graph system
JPH1091446A (en) Discovery of java base application and usage of distribution object system for down-load
JPH08339355A (en) Method and apparatus for access to processing task executionin distributed system
Scheifler et al. The X window system
US20050268304A1 (en) Persistent representations for complex data structures as interpreted programs
TW448407B (en) Hardware accelerator for an object-oriented programming language
CA3203793C (en) System and method for real-time, dynamic creation, delivery, and use of customizable web applications
Satoh Mobile agent-based compound documents
Dorward et al. Programming in Limbo
Muller et al. The use of multimethods and method combination in a CLOS based window interface
CN117014689A (en) Bullet screen display method and device and electronic equipment
Wang et al. Research on model of dual core aspectual middleware & dynamic weaving technology
Jonnalagadda Design and implementation of an improved remote user query system

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MK4A Expiration of patent term of an invention patent