專利名稱:數(shù)據(jù)內容代碼網(wǎng)絡選擇廣播信息的制作方法
技術領域:
本發(fā)明涉及在具有多個主處理機的分布式處理系統(tǒng)中如何選擇要被其中每個主處理機接收的信息,這些主處理機是通過一個網(wǎng)絡連接在一起的。
一個具有一組主處理機的分布式處理系統(tǒng)中,主處理機執(zhí)行程序處理并通過網(wǎng)絡連在一起。系統(tǒng)中有這樣一種方法,它不使用指示目的地的地址,而代之以指示數(shù)據(jù)內容的代碼,該代碼稱作“內容代碼(contentcode)”,它被加到向網(wǎng)絡中播發(fā)的信息中。這一方法由美國專利4,366,479號披露,公布于1982年12月28日。
每個主處理機將信息內容代碼與該主處理機中存儲的已登錄內容代碼進行比較,從而決定是否接收在網(wǎng)絡上的一條信息。結果,每個主處理機可以發(fā)送一條信息而不必知道在該系統(tǒng)中其他主處理機是什么;它也能從網(wǎng)絡上流動的信息中接收一條并未特別指定發(fā)送給它的信息,這樣便改善了系統(tǒng)的靈活性。
本發(fā)明的目的之一是分析和解決先有技術中存在的問題。前述的先有技術的方法沒有考慮帶有分級設置域的內容代碼,也未考慮在多種處理機之間傳輸?shù)膬热荽a。本發(fā)明考慮了前一種情況,其中,是否接收該內容代碼可以只是通過判斷內容代碼中的一部分來確定,也考慮了后一種情況,從而能擴展應用內容代碼進行傳輸?shù)姆秶?br>
本發(fā)明包括業(yè)已描述過的分析,而且還有一個目的是提供有效且靈活的選擇信息方法,它超越前述先有技術的改進之處在于它能應用于帶有分級設置域的內容代碼及在多種主處理機之間傳輸?shù)膬热荽a。
前述先有技術的選擇方法是由單個主處理機完成,以及由加到該單個主處理機上的傳輸控制用處理機完成。當只用主處理機來選擇內容代碼時,這些主處理機則負擔嚴重。當只由傳輸控制用處理機來選擇內容代碼時,這些傳輸控制用控制處理機則負擔嚴重。本發(fā)明給出了減輕這些負擔的答案。
有一個包括一組主處理機(也許還包括控制處理機)的系統(tǒng),其中的主處理機由公共的傳輸介質相連,介質中載有帶內容代碼的信息。在這樣的系統(tǒng)中,每個處理機根據(jù)內容代碼中任意部分的內容來判斷是否接收這條信息。為敘述方便,當在討論中提到一個正在判斷是否接收一條信息或進行其他動作的處理機時,這個處理機將被稱為“自處理機”,它可以是一個控制處理機或一個主處理機。
本發(fā)明給構成前述分布式處理系統(tǒng)的每個處理機裝備如下(1)判斷邏輯(硬件邏輯電路和/或軟件),將內容代碼部分分成若干個域,并從登錄域中為首的一個開始連續(xù)判斷,確定一個信息域的值是否已在該自處理器中登錄;和/或(2)判斷邏輯,將內容代碼部分分成若干個域,并確定一個域的值是否是獨立于其他域的值而在該自處理機中登錄,以此方法進行判斷。
(3)在發(fā)送一條信息時,向該信息增加一個指示發(fā)送處理機種類的代碼并將其發(fā)送出動的功能;和/或(4)在接收該信息時,根據(jù)指示發(fā)送處理機種類的代碼,在接收處理機中轉換內容代碼形式的功能;和/或(5)由傳輸控制用處理機部分地判斷一個信息內容代碼的簡單邏輯。
由前述特征(1)或(2)使每個處理機能夠通過部分地判斷內容代碼來鑒別要接收的信息內容代碼,從而能有效地判斷內容代碼。
由于前述特征(3)和(4),當發(fā)送和接收處理機種類不同時,每個處理機能識別出產生信息的處理機種類,并將該信息中的內容代碼轉換成它本身能識別的形式,從而使內容代碼能在多種處理機之間通訊。
由于前述特征(5),對內容代碼的判斷能在傳輸控制用控制處理機和執(zhí)行程序用主處理機之間有效地分擔,從而能有效地完成對內容代碼的判斷處理,而不使其中任何一個處理機負擔過重。
下面將參考附科詳細描述本發(fā)明的實施例。
由下文中對圖件的詳細描述,將使本發(fā)明的其他目的、特征及優(yōu)點更加清楚,其中
圖1是根據(jù)本發(fā)明的系統(tǒng)整體結構圖;
圖2是本發(fā)明的處理機內部結構圖;
圖3是本發(fā)明的信息格式;
圖4是解釋本發(fā)明發(fā)送處理過程的流程圖;
圖5A是解釋本發(fā)明接收處理過程的流程圖;
圖5B是圖2中信息代碼表的結構圖;
圖6是根據(jù)本發(fā)明的系統(tǒng)的總體結構圖,其中不帶有圖1所示的分組;
圖7是根據(jù)本發(fā)明并用比圖3中更一般性的術語表示的信息格式;
圖8A給出圖6所示系統(tǒng)中使用的內容代碼表結構;
圖8B用于解釋本發(fā)明的信息流;
圖9是具有本發(fā)明最佳實施例第三特征的系統(tǒng)的總體結構圖;
圖10給出根據(jù)本發(fā)明第三特征的信息格式;
圖11是解釋本發(fā)明第三特征的流程圖;
圖12給出用于解釋本發(fā)明最佳實施例第四特征的主要部分的結構;
圖13是圖5A中步驟501的更詳細的流程圖;
圖14是步驟501的流程圖,作為圖13的一個變體;
圖15是步驟501的流程圖,作為圖14的一個變體。
圖1給出根據(jù)本發(fā)明的一個系統(tǒng)的總體結構圖。圖中,主處理機11至16有內部存儲器用于存儲數(shù)據(jù)和應用程序AP,而且這些主處理機能執(zhí)行應用程序AT??偩€網(wǎng)絡1連接單個主處理機11至16。LAN適配器21至26為控制處理機,用于控制主處理機和總線網(wǎng)絡1之間的信息發(fā)送/接收。主處理機11至16通過LAN適配器21至26與總線網(wǎng)絡1發(fā)送和接收信息。雖然LAN適配器完成與總線網(wǎng)絡的接口控制,但單個主處理機11至16本身也可以完成接口控制??偩€網(wǎng)絡在其兩端帶有適當?shù)慕K止端T。
最好是對單個主處理機11至16進行邏輯分組。在圖1中,主處理機11和12屬于A組(110);主處理機13和14屬于B組(120);主處理機15和16屬于C組(130),但可以實現(xiàn)任何任意的分組。主處理機
1至16中每一個都在其存儲器內登錄一個分組標識(GID),標識出該處理機在A-C組中所屬相應組。屬于A組的主處理機11和12登錄的分組標識為GID=A,屬于B組的主處理機13和14登錄的分組標識為GID=B,屬于C組的主處理機15和16登錄的分組標識GID=C。
圖2是圖1中的主處理機11的內部結構圖。其他主處理機12至16具有與此完全相同的結構。接口201控制與LAN適配器的數(shù)據(jù)傳送。信息接收緩存區(qū)203暫時存儲來自總線網(wǎng)絡1的每條信息。信息發(fā)送緩存區(qū)204存儲要向總線網(wǎng)絡1發(fā)送的一條信息。SA(自地址(selfaddress))存儲區(qū)205存儲賦予自處理機11的一個地址。這個自處理機地址是在啟動處理機11時自動從只讀存儲器(ROM)或磁盤或其他類似介質中讀出存儲于SA存儲區(qū)205的。
內容代碼表206存儲一個或多個與自處理機11要接收的信息有關的內容代碼。在下文中將描述內容代碼。自組標識存儲區(qū)207是用于存儲自處理機11所屬小組的GID的一個區(qū)域。內容代表表206和自組標識存儲區(qū)207將它們的內容存儲于一個可隨機存取的、最好是不消失的存儲介質中,例如存在磁盤中,其內容可以在啟動處理機11時送入較高速存儲器,例如隨機存儲器(RAM)中。上述存儲介質中的內容可以在處理機11運行過程中由命令或其他類似方式加以改變。
應用數(shù)據(jù)緩存區(qū)208作為與自處理機11中要執(zhí)行的應用程序AP的接口。輸入數(shù)據(jù)緩存區(qū)2081存儲從信息接收緩存區(qū)203有選擇接收的數(shù)據(jù)(在緩存區(qū)208中),這些數(shù)據(jù)是在自處理11中執(zhí)行應用程序AP所必須的。由自處理機11執(zhí)行的每個應用程序AP將其輸出數(shù)據(jù)連同指示輸出數(shù)據(jù)內容的內容代碼一起存入輸出數(shù)據(jù)緩存區(qū)2082。
處理機單元202具有中央處理單元(CPU)寄存順及其他類似部件,它利用前述各種緩存區(qū)203、204、208、區(qū)域205、207及表206,完成由處理機11執(zhí)行的執(zhí)行程序。接收處理2021(圖5A)和發(fā)送處理2022(圖4)是用于本發(fā)明的在存儲器中的兩個處理過程,將在下文中描述。
圖3是在圖1所示總線網(wǎng)絡1上流動的一條信息的格式,該信息是自動保持在圖2所示信息接收緩存區(qū)203中的。圖3中略去了信息傳輸所必須的控制代碼或其他類似代碼。DA部301是指示一條信息的目的地的目標地址。在本發(fā)明中信息在總線網(wǎng)絡1上流動,在信息中的DA部301被設置的地址指示出本發(fā)明中可以利用的廣播方式(broadcastmode),這不同于地址方式(addressmode)中使用的特定目標地址,這種地址方式是不能應用于本發(fā)明的。SA部302是指示發(fā)送者地址的區(qū)域,該發(fā)送者地址來自處理機11-16中一個已產生并發(fā)送信息的處理機中的SA存儲區(qū)205。
數(shù)據(jù)部304是存儲要由本條信息發(fā)送的數(shù)據(jù)的區(qū)域。再有,CC部303被設置內容代碼,用以指示數(shù)據(jù)部304中存儲數(shù)據(jù)的內容?;谶@一代碼CC,每個處理機判斷是否接收在總線網(wǎng)絡1上流動的這條廣播信息,也就是判斷是否將這條信息從接收緩存區(qū)203傳送到輸入數(shù)據(jù)緩存區(qū)2081。CC部303由組標識(GID)3031和一個本地內容代碼(LCC)3032組成。
圖2所示發(fā)送處理過程2022和接收處理過程2021的內容將分別參考圖4和圖5A來描述。
圖4是說明發(fā)送處理過程2022的流程圖。在這個發(fā)送過程2022中,應用程序AP的輸出數(shù)據(jù)(它存儲于圖1所示應用數(shù)據(jù)緩存區(qū)208的輸出數(shù)據(jù)緩存區(qū)2082中)在步驟401被取出,并在步驟402和403被編排成圖3所示的格式。然后被存儲在發(fā)送緩存區(qū)204。具體地說,在步驟401,從輸出數(shù)據(jù)緩存區(qū)8082取出的應用程序輸出數(shù)據(jù)被置于圖3所示格式中的數(shù)據(jù)部304,指示數(shù)據(jù)內容的信息代碼CC被置入圖3所示信息格式中的LCC部3032。
接著,在步驟402,自組標識碼存儲區(qū)207的內容被置入圖3格式中的GID部3031。在步驟403,指示廣播方式的地址被置于圖3格式的DA部301,SA存儲區(qū)205的內容被置于圖3格式的SA部302。在此之后,在步驟404,圖3所示信息被存于發(fā)送緩存區(qū)204。作為發(fā)送處理過程的結尾,發(fā)送緩存區(qū)的內容經(jīng)由接口201和LAN適配器21被送出到總線網(wǎng)絡1。
這里,被送出(廣播)到總線網(wǎng)絡1上的信息被所有的LAN適配器22-26(產生信息的LAN適配器21除外)接收到信息接收緩存區(qū)203,因為在信息目標地址DA部設置了廣播方式。
圖5A和5B解釋圖2所示接收處理過程2021。圖5A是接收處理過程2021流程圖。在接收處理過程2021中,在步驟501和502,通過檢驗圖3中的內容代碼部CC來判斷存儲于接收緩存區(qū)203的信息(見圖3)是否要被接收到自處理機(例如12-16中的每一個)的輸入數(shù)據(jù)緩存區(qū)2081中。在判斷為不接收該信息時,則在步驟504放棄該信息,例如清除信息接收緩存區(qū)203,并以此結束接收處理過程2021。在判定為要接收該信息的情況下,在步驟503將該信息(圖3)的CC部303和數(shù)據(jù)部304的內容送入圖2所示應用數(shù)據(jù)緩存區(qū)208的輸入數(shù)據(jù)緩存區(qū)2081中。通過使用該輸入數(shù)據(jù)緩存區(qū)2081中的數(shù)據(jù),應用程序AP得到處理。
下面將參考圖5B詳細描述本接收處理過程2081中判斷內容代碼CC部的步驟501。圖5B給出圖2所示內容代碼表206的結構。通過比較自處理機內容代碼表206與信息接收緩存區(qū)303中的信息CC部303,實現(xiàn)了步驟501中對內容代碼CC303的判斷。內容代碼表206由GID表2051及LCC表2052組成。GID表有行20511用于登錄自組(self group)ID。其他單個組的識別碼(ID)被登錄在行205
¨2051n。
GID表的第1行20511總是登錄該自處理機所屬組的自組標識碼GID1。這是因為與該自處理機屬于同一組的一個處理機所產生的信息將總是被接收。LCC表2052是一組與GID表2051的每一行相對應的子表。具體地說,存在一個LCC了表20521對應于GID表第1行20511;存在一個LCC了表20522對應于GID表中的第2行20512;存在一個LCC子表20523對應于GID表中的第3行20513,等等。
在每個LCC子表20521-2052n中登錄著由GID表中登錄的相應組產生的各條信息的內容代碼LCC1…LCCm。如果GID表2051中的一個GID與信息區(qū)3031中登錄的GID相匹配,那么自處理機便取出與該GID相對應的LCC表2052中的一個子表。這里,將該LCC子表中登錄的內容代碼LCC逐個與圖3所示信息格式的CC部303中的LCC部3032進行比較。利用這個內容代碼表206,根據(jù)圖13流程圖中所示過程,在步驟501完成了判斷內容代碼的處理過程。
由圖13的步驟5011,從信息接收緩存區(qū)203取出圖3所示的信息LCC3032和GID3031,在步驟5012判斷從信息接收緩存區(qū)203取出信息的GID部/區(qū)域(part/area)3031(圖3)是否在GID表2051中登錄。如果判斷結果為“否”(NOT),則在步驟5013產生一個不接收那條信息的信號并轉到步驟502,以此結束判斷內容代碼的處理步驟501。如果判斷結果為“是(YES)”,則在步驟5014存儲GID表2051中被登錄行所在的行。這里,假定信息GID區(qū)3031被登錄在第n行2051n,于是在步驟5014從LCC表2052取出相應的子表2052n。在步驟5015,判斷從接收緩存區(qū)203取出的信息LCC部3032(圖3)內容是否已作為LCC1…LCCn之一登錄在與GID表2051的第n行2051n相對應的子表2052n中。如果判斷結果為“否”(NOT),則在步驟5013產生一個不接收那條信息的信號并轉到步驟502,以此結束判斷代碼內容303的處理步驟501。如果判斷結果為“是”(YES),則在步驟5015產生一個接收該條信息的信號并轉到步驟502的處理,以此結束判斷內容代碼303的步驟。
根據(jù)到此所描述的實施例,在一個將單個處理機分組的系統(tǒng)(如圖1所示)中,每個處理機要預先判斷是否接收在總線網(wǎng)絡1上流動的廣播信息,其做法是在步驟5012判斷產生那條信息的處理機所在組別,從而使判斷不接收該條信息的過程能高效率地完成。簡單地說,每個處理機只需從那條信息的GID部內容便可以判定不接收來自與它本身無關的組中的信息,而不必檢查LCC部。
根據(jù)目前按本實施例描述的方法,還允許各組之間內容代碼的重疊。所以,在應用中可以對每個單獨組獨立地設置內容代碼LCC。就是說,兩個組可以為不同目的設置相同的內容代碼而不發(fā)生混淆。
根據(jù)目前按本實施例描述的方法,由屬于另一個相關組(即在GID表2051中)的處理機所產生的廣播信息能被方便地從信息接收緩存區(qū)203中取出并傳送到輸入數(shù)據(jù)緩存區(qū)2081。
接下來,將參考圖6和圖7來描述本發(fā)明。圖6所示系統(tǒng)結構與圖1所示結構絕對相同,只是在圖1中的單個處理機被分組而在圖6中不分組。換句話說,圖6是關于更帶普遍性的結構,在這種結構中不是必須對每個處理機11-16都賦予一個組標識碼GID。再有,圖6中的每個處理機11016的內部結構與圖2所示結構完全相同。然而,盡管如此,當信息中不存GID或沒有設置GID時,可以棄置自組標識存儲區(qū)207或者簡單地不使用它就是了。
圖7給出在圖6所示網(wǎng)絡1上流動的廣播信息的格式。這里,DA部301、SA部302及數(shù)據(jù)部304的內容與圖3所示完全相同。CC部303是類似的內容代碼,指示存于數(shù)據(jù)部的數(shù)據(jù)的內容,但比圖3中的CC部303更具有一般性。內容代碼部由一組區(qū)域組成,至少有兩個區(qū)域。內容代碼部303由第一區(qū)6031和第二區(qū)6032組成,但內容代碼部可由更多區(qū)域組成。要存儲在單個區(qū)域6031和6032中的內容代碼將稱作“部分內容代碼(partialcontentcode)”。在圖3中,第一區(qū)6031被特別指定為GID區(qū)3031,而第二區(qū)6032被特別指定為LCC區(qū)3032。
在圖6中的處理機結構安排中,單個處理機完成下述發(fā)送處理過程2022(1)在每個處理機11-16中執(zhí)行的應用程序AP將它自己的輸出數(shù)據(jù)置入數(shù)據(jù)區(qū)304,并將相應于該輸出數(shù)據(jù)的內容代碼置入?yún)^(qū)303,構成圖2所示輸出數(shù)據(jù)緩存區(qū)2082中的信息。在此時,置入兩個部分內容代碼6031和6032作為內容代碼。這些部分內容代碼按下述三種方式之一被置入(a)這兩個部分內容代碼都被置入,例如圖3所示,作為GID和LCC;
(b)只置入第一部分內容代碼6031;以及(c)只置入第二部分內容代碼6032。
(2)圖2所示處理機單元202,根據(jù)前述處理過程(1)中存于輸出數(shù)據(jù)緩存區(qū)2082的應用程序AP輸出數(shù)據(jù),產生具有圖7所示格式的一條信息,并將該信息存于圖2所示信息輸出緩存區(qū)204。具體地說,應用程序AP的輸出數(shù)據(jù)放置于以數(shù)據(jù)部304存放數(shù)據(jù)的輸出數(shù)據(jù)緩存區(qū)2082的信息的區(qū)域304。兩個部分內容代碼分別級置入第一區(qū)6031和第二區(qū)6032。其他部分301、304的設置與結合圖4所作的描述相似。然后,該信息被置入信息發(fā)送緩存區(qū)204。
(3)信息發(fā)送緩存區(qū)204的內容經(jīng)由LAX適配器21-26被送出到總線網(wǎng)絡1。
通過到此為止所描述的處理過程2022,在所有在總線網(wǎng)絡中的廣播信息(也就是將DA置成廣播方式的那些特定信息)都被LAN適配置21-26收到,然后每個處理機11-16根據(jù)圖5A所示流程圖判斷是否將這條廣播信息接收到輸入數(shù)據(jù)緩存區(qū)2081。與圖6有關的接收處理過程2021不同于圖5A的步驟501所進行的判斷內容代碼過程。用于圖6的判斷內容代碼的方法步驟501將在下文中參考圖8A和圖8B進行描述。
圖8A給出圖6所示不分組系統(tǒng)的內容代碼表(見圖2)的結構2051。圖8B給出在圖6中的一部分內特定信息的流動。在圖8A所示內容代碼表結構2051中,單個行20511′、20512′、20513′、2051n′中登錄了將被它們的自處理機11-16接收的信息的內容代碼。再有,這些行(20511′等)中的每一行由第一區(qū)2051A和第二區(qū)2051B構成,它們被分別登錄對應于一條信息的區(qū)域6031和6032的部分內容代碼。
下面將參考圖14描述根據(jù)圖8A所示表判斷內容代碼的處理過程,對于每一行2051(1)在第一區(qū)和第二區(qū)(2051A和2051B)都被置入部分內容代碼(例如在行20511′中那樣)的情況下在步驟5011A取出信息接收緩存取203中的信息。如果在步驟5012A判定接收信息CC部303中的第一和第二區(qū)6031和6032分別內容代碼表206的第一和第二區(qū)2051A和2051B的內容(例如X和Y)完全相同,則在步驟5013A將一個“接收”信號從步驟5013A傳送到步驟502。否則,流程轉向步驟5014A,而且,如果區(qū)2051A和2051B都被置值,則在步驟5016A產生一個信號并傳送給步驟502,從而使該條信息不被接收。
(2)在只有第一區(qū)2051A被置入部分內容代碼(例如在圖8A中行20512′中那樣)的情況下在步驟5011A取出接收緩存區(qū)203中的信息并且流程轉向步驟5014A。如果接收信息CC部303中第一區(qū)6031的內容與內容代碼表2051中某一行(例如20512′)的第一區(qū)2051A的內容完全相同,則步驟5014A將流程轉向5013A以產生一個“接收”信號,然后流程進行到步驟502。如果在步驟5014B判定第二區(qū)6032的內容等于區(qū)2051B的內容,則在步驟5013A產生“接收”信號并使流程轉向步驟502。否則,轉向步驟5016A,從而不接收該條信息。換句話說,不管被接收信息CC部的第二區(qū)6032的內容是什么,凡第一區(qū)6031的內容與第一區(qū)2051A內容完全相同的各條信息均從信息接收緩存區(qū)203取出并送到輸入數(shù)據(jù)緩存區(qū)2081;以及(3)在只有第二區(qū)2051B被置入部分內容代碼(例如在行20513′中那樣)的情況下,如果根據(jù)步驟5014B判定被接收信息CC部303的第二區(qū)6032內容與內容代碼表第二區(qū)2051B內容完全相同,則取出該條信息并送入輸入數(shù)據(jù)緩存區(qū)2081。否則,該條信息不被接收。換句話說,不管被接收信息CC部的第一區(qū)內容是什么,凡第二區(qū)6032與第二區(qū)2051B內容全同的各條信息均被取出并送入輸入數(shù)據(jù)緩存區(qū)2081。對表中的每一行重復圖14所示處理過程。
圖15是步驟501的過程流程圖,作為圖14中過程的另一種形式。在步驟6001,在緩存區(qū)203中的信息的CC部303被取出,并置變量i為1。在步驟6002,如果i等于或小于CC部303中的區(qū)數(shù)n,則處理過程進入步驟6003;否則,在轉入步驟502之前,進入步驟6007以產生一個“接收”信號。如果CC表當前行的第i區(qū)被置值,則處理轉向步驟6055;否則,處理轉向步驟6004,變量i被增加1,并返回步驟6002。在步驟6005,如果CC表當前行的第i區(qū)等于被接收信息CC部303的第i區(qū),則過程轉向步驟6004,否則,過程轉向步驟6006。在步驟6006產生一個“不接收該信息”的信號,進而過程轉向步驟502。
根據(jù)到現(xiàn)在所描述的本發(fā)明,可以利用整個內容代碼CC303的一部分來完成根據(jù)內容代碼判定是否接收該條信息的處理過程(而在先有技術中總是使用整個內容代碼)。在本發(fā)明中,判斷內容代碼中的任意部分(對于發(fā)送者是任意的),從而能更靈活、更省時地選擇信息,并使額外開銷較小,從而提高了效率。
下面將參考圖8B來描述由本發(fā)明完成的信息選擇的一個實例。圖8B給出與圖6相同的系統(tǒng)結構,但表示出信息和表的實例。
這里,處理機11-13根據(jù)它們的AP(應用程序)分別完成對內容為X的數(shù)據(jù)的一系列處理過程。處理機11發(fā)出一條信息710。它與內容為X的數(shù)據(jù)的一項(item)Y相關聯(lián)。處理機12取出信息710,產生并向網(wǎng)絡發(fā)出一條信息720,它與內容為X的數(shù)據(jù)的一項W相關聯(lián)。
為了實現(xiàn)前述的一系列處理過程,在信息710中置入內容代碼7101(使其第一區(qū)6031置入X,使其第二區(qū)6032置入Y),并在信息720置入內容代碼7201(使其第一區(qū)6031置入X,使其第二區(qū)6032置入W)。處理機12有內容代碼表206,其部分702被置入內容代碼CC(使其第一區(qū)2051A置入X,使其第二區(qū)2051B置入Y),于是處理機12將接收該信息710,送入其輸入數(shù)據(jù)緩存區(qū)2081。處理機13的內容代碼表206的部分703被置入內容代碼CC(使其第一區(qū)2051A置入X,使其第二區(qū)2051B置入W),于是第二處理機13將接收信息710,將它放入輸入數(shù)據(jù)緩存區(qū)2081。
通過將內容代碼CC(使第一區(qū)2051A置X,而第二區(qū)2051B作為不使用區(qū))登錄到例如處理機14的內容代碼表部分704,則在處理機11至13中處理內容為X的數(shù)據(jù)所產生的全部信息(710和720)將被容易地取來并存入處理機14的輸入數(shù)據(jù)緩存區(qū)2081。
下面將結合圖9至11來描述本發(fā)明。
圖9給出的系統(tǒng)總體結構圖用于說明該最佳實施例的第三特點。在圖9中,處理機11-16能將應用程序AP存于各自的內存儲器中并執(zhí)行它,而且總線型網(wǎng)絡1將這些處理機連在一起??刂铺幚砥?即“LAN適配器”)21-26用于控制與網(wǎng)絡的信息傳送。處理機11-16通過LAN適配器21-26在網(wǎng)絡內傳送信息。
根據(jù)圖9構成的系統(tǒng)有多種處理機11-16。在圖9中,多種處理機11-16共同存在于一種通用LAN1上,處理機11和12屬于處理機種類/類型A,處理機13和14屬于處理機種類B,處理機15和16屬于處理機種類C。每臺處理機在區(qū)域207內登錄一個處理機種類代碼,用于指示自己的種類。例如,如果是處理機的操作系統(tǒng)種類不同,那么它們的信息語法結構便互不兼容,于是由一種處理機寫成并發(fā)出的一條信息便不能由另一種處理機讀和使用,除非進行某種形式的轉換或翻譯。
圖9中的每個處理機11-16的結構與圖2中所示結構相同。然而,在內存區(qū)207中設置的內容不是指定給該處理機的自組標識碼,而是處理機種類,即A、B、C之一。
圖10給出在圖9所示網(wǎng)絡上流動的一條信息的格式。這里,DA部301、SA部302及數(shù)據(jù)部304的內容與圖3所示相應部分完全相同。在CC部303中置入代碼CC,指明存于數(shù)據(jù)部304中的數(shù)據(jù)的內容,這與圖3或圖7的CC部303相同,但圖10中的代碼CC有三個區(qū)域。在圖10中,CC部303由代碼分類信息第一區(qū)9031、LCC第二區(qū)9032及處理機屬性第三區(qū)9033組成。
代碼分類信息第一區(qū)9031、LCC第二區(qū)9032及處理機屬性信息第三區(qū)9033的內容是在信息從單個處理機11-16中發(fā)出時被設置的。具體地說,代碼分類信息第一區(qū)9031設置來自圖2所示存儲區(qū)207的自處理機代碼(例如操作系統(tǒng)標識碼),LCC第二區(qū)9032設置由應用程序置入輸出數(shù)據(jù)緩存區(qū)(即圖2的2082)的內容代碼。處理機屬性信息第三區(qū)9033用于存儲與發(fā)送處理機的屬性有關的信息。只在其他區(qū)中的信息不足時才使用,它也可以一自存儲區(qū)207。例如,在這個9033區(qū)置入AP文件的文件格式之類的信息(例如TIFF),在該AP文件中已由AP(應用程序)存入了數(shù)據(jù)部304中的數(shù)據(jù)。
與LCC區(qū)9032相對應的值已登錄在每個處理機的內容代碼表(圖2中的206)中。
該信息在網(wǎng)絡1上廣播,從而被每個處理機11-16接收。圖5中的過程用作為接收過程2021,下面將參考圖11(它與圖5相似)描述在每個處理機11-16接收信息時判斷內容代碼的步驟501。
圖11是本發(fā)明的接收處理過程2021(圖2)的流程圖。經(jīng)LAN適配器21-26將圖10所示信息送入信息接收緩存區(qū)203的每個處理機11016,根據(jù)所接收信息的CC部303內容及處理機的內容代碼表206,判斷是否接收在輸入數(shù)據(jù)緩存區(qū)2081中的這條信息。首先,在步驟910,根據(jù)信息接收緩存區(qū)203中信息的CC部303中的代碼分類信息9031,將LCC部9032的內容轉換成能被接收自處理機11-16解碼的代碼。這是打算用于多種處理機有不同的代碼系統(tǒng)的情況。附帶說明,進行這種轉換所必須的轉換表(圖中未畫出)事先置入每個處理機的存儲內,該轉換表將網(wǎng)絡代碼系統(tǒng)轉換成接收處理機代碼系統(tǒng),并在發(fā)送時反過來將處理機代碼系統(tǒng)轉換成網(wǎng)絡代碼系統(tǒng)。
接下來,在步驟911,判斷轉換結果的LCC區(qū)內容是否作為LCC1-LCCn登錄在該自處理機的內容代碼子表2052中。如果“否”(NOT),則產生一個“不接收”信息,將控制轉到步驟912,并在步驟504,根據(jù)內容代碼判定為不接收(即步驟910-912比步驟501-502更詳細)而放棄該條信息,并以此結束接收處理過程。如果“是”(YES),則與步驟912相反,在步驟913判斷被接收信息CC步303的處理機屬性信息部9033的內容。
這里,在步驟913,判斷在處理機屬性信息區(qū)9033中登錄的內容是否能被該自處理機處理。例如,決定在處理機屬性信息部9033中登錄的文件格式是否被自處理機生成系統(tǒng)所支持。如果在步驟914判定為“否”(NOT),則在步驟504根據(jù)不接收該條信息的內容代碼放棄該信息,并以此結束接收處理過程。如果在步驟914判定為“是”(YES),則在步驟503,根據(jù)判定內容代碼CC為接收該條信息,于是將該條信息存于輸入數(shù)據(jù)緩存區(qū)2081,并以此結束該處理過程。
即使在系統(tǒng)中存在多種處理機的情況下,每個處理機只要知道它自己的種類便可以向網(wǎng)絡發(fā)出一條信息,而不必知道該信息被發(fā)往的目標處理機的種類。再有,每個處理機都能判斷在網(wǎng)絡上一條信息的內容代碼,即使它接收的信息是由另一種類的一個處理機產生的也能接收,于是,在多種處理機之間對輸入數(shù)據(jù)緩存區(qū)2081的選擇性接收處理也能生效。
再有,在網(wǎng)絡的接收一側能判斷從另一處理機接收的信息是否能被該自處理機的支持功能來處理,于是能防止將不可處理的數(shù)據(jù)送入應用程序的輸入數(shù)據(jù)緩存區(qū)。簡言之,根據(jù)本發(fā)明,能在多種處理機之間實現(xiàn)內容代碼信息的傳送。
前述實施例的目標是使用多種處理機。本發(fā)明能應用于下述情況(1)網(wǎng)絡上同種處理機11-16中間使用不同種操作系統(tǒng)的情況下,這種情況的解決辦法是在處理機屬性區(qū)9033置入操作系統(tǒng)屬性信息以指出OS(操作系統(tǒng))的屬性;以及(2)多種處理器和多種操作系統(tǒng)的情況下,這種情況的解決辦法是在處理機屬性信息部9033置入處理機屬性和操作系統(tǒng)屬性信息。
圖12是根據(jù)本發(fā)明的LAN適配器21(圖1、6、7、8B及9)的結構圖,這里,前述步驟501中的判斷過程一部分是在LAN適配器21中進行的,一部分是在處理機11中進行的。其余LAN適配器的結構也與圖10所示相同。在LAN適配置21中置入了與網(wǎng)絡1的接口處理過程,還置入了判斷處理過程250所必須的判斷內容代碼250與內容代碼表251的處理過程或邏輯。下面將描述在LAN適配器中判斷內容代碼的處理過程250。
判斷內容代碼的處理過程250的基本概念如下(1)在LAN適配器21中完成不完全的但快速的內容代碼CC判斷過程,從而在各條信息進入自處理機11之前便排除了大多數(shù)將不被接收的那些條信息;以及(2)在處理機11一側,完成所規(guī)定的精確判斷過程,以排除在LAN適配器21中的判斷不能檢測出來的剩余的不被接收信息。
為了理解上述概念,例如,在LAN適配器中完成下述判斷內容代碼CC的判斷過程之中的一個或多個。
(1)對要判斷的內容代碼部的一部分完成判斷過程。LAN21的邏輯舉例說明如下(a)在內容代碼表中登錄自處理機必須的內容代碼CC的一部分,例如頭兩上字節(jié),被登錄在LAN適配器21的內容代碼表251中;以及(b)判斷內容代碼過程LAN適配器的邏輯250判斷從網(wǎng)絡接收的信息的內容代碼CC部303中頭兩個字節(jié)是否被登錄在內容代碼表251中,并且只將登錄的接收信息發(fā)送到自處理。
(2)通過將要判斷的內容代碼加以轉換來實現(xiàn)是否接收的判斷。該邏輯舉例說明下(a)在內容代碼表中登錄定義一個將內容代碼值轉換成LAN適配器內容代碼表區(qū)地址的一個轉換公式,并預先將該公式置入每個LAN適配器21-26。每個LAN適配器21-26根據(jù)該轉換公式將要在它那里登錄的內容代碼CC轉換成內容代碼表區(qū)地址,并在那個地址區(qū)置“1”。這時假定在啟動LAN適配器時該內容代碼表區(qū)已被清零;以及(b)判斷內容代碼邏輯LAN適配器21-26用上述轉換公式將從網(wǎng)絡接收的信息的CC部轉換成內容代碼表區(qū)地址,如果該區(qū)被置“1”則將所接收的這條信息送給自處理機11-16。在其他情況下,LAN適配器則放棄一些不能被接收的信息。
(3)本邏輯是第一和第二邏輯過程的結合。將被判斷的內容代碼部的一部分進行轉換,從而可以判斷它是否被接收。本邏輯舉例說明如下(a)登錄于內容代碼表定義一個將內容代碼值的一部分,例如頭兩個字節(jié),轉換成LAN適配器內容代碼表區(qū)地址的轉換公式并預先置于每個LAN適與器中。在每個LAN適配器中,要在它那里登錄的內容代碼的頭兩個字節(jié)被利用該轉換公式轉換成內容代碼表區(qū)地址,并將訪問(access)區(qū)置“1”。在啟動LAN適配器時該內容代碼表區(qū)是被清成“0”的;以及(b)內容代碼決策在LAN適配器中,從網(wǎng)絡接收的信息的CC部頭兩個字節(jié)被利用前述轉換公式轉換成內容代碼表區(qū)地址。如果那個區(qū)被置“1”,則所接受信息被送到自處理機。在其他情況下,所接收的信息被放棄。
于是,在LAN適配器中能完成一種雖不很精確但是迅速的判斷內容代碼過程,從而使大多數(shù)不被接收到輸入數(shù)據(jù)緩存區(qū)2081的信息能被排除而不必使用接收處理機11-16。這樣,在每個處理機11-16中對內容代碼進行精確判斷的次數(shù)可被減小,從而減輕了在每個處理機中的接收處理過程2021的負擔。
先有技術的只有LAN適配器進行精確判斷內容代碼的過程伴隨的問題是LAN適配器負擔過大,但根據(jù)本發(fā)明能解決這一問題。再有,先有技術的只用處理機進行精確判定內容代碼的過程伴隨的問題是處理機負擔過大,但根據(jù)本發(fā)明這一問題也能解決。
已經(jīng)使用了總線型網(wǎng)絡,但本發(fā)明應不限于總線型網(wǎng)絡,它也能應用于任意類型的網(wǎng)絡,例如環(huán)形、或星型、或矩陣型、或交叉(crossbar)型。再有,在網(wǎng)絡上的信息的目標地址(DA)是用于指明為廣播方式,但即使使用一個”組地址(groupaddress)”或“一對一地址(onetooneaddress)”(也就是使用一個特定地址)作為DA,也可以實現(xiàn)本發(fā)明。
如前面已詳細描述過的那樣,根據(jù)本發(fā)明,內容代碼CC可以分組以避免各組之間的重疊,即使它們是在單個組中由應用程序獨立設置的,這種設置也能容易地做到。再有,根據(jù)本發(fā)明,基于內容代碼來判斷是否接收一條信息的處理步驟501可以只使用內容代碼CC的一部分(例如內容代碼CC的任意一部分)來實現(xiàn),而不必象先有技術那樣使用全部內容代碼CC。這樣,本發(fā)明能實現(xiàn)一種顯著的效能,即能夠靈活而有效地完成對待接收信息的選擇。
根據(jù)本發(fā)明,即使在網(wǎng)絡中共存多種處理機11-16,也能在多咱處理機11-16之間完成內容代碼信息的通信。
根據(jù)本發(fā)明,能在控制處理機LAN適配器21-26中完成快速的對內容代碼的部分判斷或者說預判斷過程,以排除大部分要接收到輸入數(shù)據(jù)緩存區(qū)2082的信息,從而減輕了在單個主處理機11-16中接收處理過程2021的負擔。這樣,便能得到另一個顯著的效果,即能夠實現(xiàn)有效的判斷內容代碼過程。
盡管已經(jīng)提出了一個最佳實施例,并伴隨多種修改和變體,以詳細說明本發(fā)明的具體優(yōu)點,但是,在由所附權利要求的精神和范圍所展示的本發(fā)明的更廣泛內容之內,其他實施例、修改及變體是可以預期到的。
權利要求
1.在一個由一組處理機連成網(wǎng)絡所構成的系統(tǒng)中,網(wǎng)絡上流動的一條信息帶有內容代碼以指示該信息的內容,每個處理機根據(jù)該內容代碼判斷是否接收該條信息,所作的改進包括每個處理機具有只根據(jù)內容代碼的一個區(qū)域來預判斷不接收一條信息的手段,從而能快速和有效地選擇一些不被接收的信息;以及根據(jù)內容代碼的其余部分來判斷是否接收其余信息的后(post)判斷手段。
2.如權利要求1提出的系統(tǒng),其中一條信息的內容代碼被分成若干區(qū)域;每個所述處理機有一邏輯手段來判斷所述各分區(qū)中的每一個,從而根據(jù)所述邏輯手段來判定是否接收一條信息。
3.如權利要求1提出的系統(tǒng),其中一條信息的內容代碼被分成若干區(qū)域;每個處理機根據(jù)預先確定的順序對所述分區(qū)中的每一個判斷是否拉收一條信息。
4.如權利要求1提出的系統(tǒng),其中每個處理機向網(wǎng)絡上發(fā)出的一條信息中帶有關于該信息發(fā)送機情況的發(fā)送機信息(sender information)作為所述內容代碼的一部分;每個處理機根據(jù)發(fā)送機信息來判斷是否接收所述信息。
5.如權利要求4提出的系統(tǒng),其中所述發(fā)送機信息至少包含關于發(fā)送處理機的信息。
6.如權利要求1提出的系統(tǒng),其中每個處理機向網(wǎng)絡上發(fā)出的一條信息中所帶有的內容代碼中含有發(fā)送機代碼分類信息;以及每個處理機根據(jù)所述分類信息將預判斷是否接收的一條信息的內容代碼轉換成新的代碼。
7.如權利要求1提出的系統(tǒng),其中每個所述處理機包括一個主處理機和一個用于對所述網(wǎng)絡和所述主處理機之間發(fā)送/接收進行傳輸控制的網(wǎng)絡適配器處理機;所述網(wǎng)絡適配器處理機具有所述判斷是否接收的手段,所述主處理機具有所述后判斷手段。
8.如權利要求7提出的系統(tǒng),其中一條信息的內容代碼被分成若干區(qū)域;每個所述處理機具有判斷每個所述分區(qū)的邏輯手段,從而根據(jù)所述邏輯手段來作出是否接收一條信息的決斷。
9.如權利要求7提出的系統(tǒng),其中一條信息的內容代碼被分成若干區(qū)域;每個所述處理機根據(jù)預先確定的順序對每個所述分區(qū)來判斷是否接收一條信息。
10.如權利要求7提出的系統(tǒng),其中每個處理機向網(wǎng)絡上發(fā)出的一條信息中帶有關于該信息發(fā)送機情況的發(fā)送機信息作為所述內容代碼的一部分;每個處理機根據(jù)發(fā)送機信息來判斷是否接收所述信息。
11.如權利要求7提出的系統(tǒng),其中所述發(fā)送機信息至少包含關于發(fā)送處理機的信息。
12.如權利要求7提出的系統(tǒng),其中每個處理機向網(wǎng)絡上發(fā)出的一條信息中所帶有的內容代碼中含有發(fā)送機代碼分類信息;以及每個處理機根據(jù)所述分類信息將預判斷是否接收的一條信息的內容代碼轉換成新的代碼。
全文摘要
在一個使用廣播方式通信的分布式處理系統(tǒng)中,一組處理機用公共傳輸介質連接在一起,在其中流動的信息帶有內容代碼。每個處理機根據(jù)存儲被判斷信息內容代碼的區(qū)域中的任意部分的內容代碼來判斷是否接收該條信息。
文檔編號G06F13/00GK1070498SQ9211056
公開日1993年3月31日 申請日期1992年9月12日 優(yōu)先權日1991年9月13日
發(fā)明者織茂昌之, 森欣司, 平澤茂樹, 藤瀨洋, 竹內增幸, 鈴木仁 申請人:株式會社日立制作所