欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

關(guān)于在分布處理系統(tǒng)中開發(fā)程序的方法

文檔序號(hào):6405300閱讀:204來源:國知局
專利名稱:關(guān)于在分布處理系統(tǒng)中開發(fā)程序的方法
技術(shù)領(lǐng)域
本發(fā)明敘述的是一種在一個(gè)由多個(gè)處理器分別執(zhí)行一系列處理的分布處理系統(tǒng)中開發(fā)程序的方法,在此系統(tǒng)中,用一個(gè)開發(fā)這種程序的開發(fā)處理器開發(fā)將要由各自的處理器執(zhí)行的應(yīng)用程序,並且將已制定好的應(yīng)用程序裝入各自的處理器中。
在分布處理系統(tǒng)中開發(fā)程序,美國專利USP4,627,055中已描述過了。日本專利JP-A-57-146361公開了一種與公共傳輸線相連的各處理器分布地處理一系列任務(wù)的分布處理方法。在此方法中為了執(zhí)行各自的一系列處理中的各程序被分布地存入各自的處理器中,並且,當(dāng)必要的執(zhí)行該程序的數(shù)據(jù)已經(jīng)從傳輸線裝到各自的處理器中時(shí),各自的處理器中的程序被啟動(dòng)。這種方法能夠用各自的處理器分布處理各系列的處理而不需要控制整個(gè)系統(tǒng)的控制處理器。
日本專利JP-A-61-286959公開了一種本身的方法,用來在一條傳輸線上作為一條信息廣播要被各自的處理器執(zhí)行的諸程序本身的方法,因而每一個(gè)處理器接受在傳輸上廣播的一些必要的程序,並將它們存入各自的處理器中。
在過去各程序被共同地開發(fā)。因此,如果一個(gè)程序要被修改和采納以開發(fā)一個(gè)新的程序版本,已開發(fā)的程序的新舊兩個(gè)版本僅僅用增加一串?dāng)?shù)(生成數(shù))就能夠區(qū)別了,這串?dāng)?shù)表示修正原程序的次數(shù)。根據(jù)該數(shù)能夠確定已開發(fā)的程序是否要被進(jìn)一步修正(修改或補(bǔ)充)或者該程序是否能在執(zhí)行計(jì)算機(jī)中使用。
然而,該方法並沒有考慮這種情況,在各獨(dú)立的開發(fā)系統(tǒng)中根據(jù)具有多個(gè)開關(guān)系統(tǒng)的分布處理系統(tǒng)中的一條程序分別地修改或補(bǔ)充各個(gè)程序。
在先前技術(shù)的分布處理系統(tǒng)中,由于程序之間的接口僅僅由程序的輸入/輸出數(shù)據(jù)來確定,因此可以單獨(dú)地開發(fā)各自的程序。然而在先前技術(shù)的方法中,設(shè)有辦法檢查在這些單獨(dú)開發(fā)的程序中或者程序之間是否存在一致性,也沒有辦法為這些程序確定信息。這樣就在開發(fā)該程序中產(chǎn)生了一個(gè)問題。
在先前技術(shù)的方法中,當(dāng)所開發(fā)的程序要裝入各自的處理器中時(shí)必須確定程序的輸入/輸出信息,以便區(qū)別程序的輸入/輸出數(shù)據(jù),如果確定了錯(cuò)誤信息,程序?qū)⒂门c予期的信息完全不同的信息執(zhí)行這個(gè)處理。
本發(fā)明的一個(gè)目的是提供一種關(guān)于在分布處理系統(tǒng)中開發(fā)程序的方法,它能檢查已開發(fā)的程序之間的一致性並且根據(jù)在裝入處理器中的程序?qū)傩孕畔a(chǎn)生對于裝入所必要的信息,以使程序開發(fā)的效率增強(qiáng)。
本發(fā)明的另一個(gè)目的是提供一種在一個(gè)由多個(gè)處理器執(zhí)行一系列處理的分布處理系統(tǒng)中開發(fā)程序的方法,在該方法中,在將要裝入各自的處理器中的程序開發(fā)期間,可以檢測出具有輸入/輸出信息的信息和輸入或輸出這些信息的程序之間的關(guān)系,因此可以了解程序的準(zhǔn)備狀況。
本發(fā)明的另一個(gè)目的是提供一種關(guān)于在分布處理系統(tǒng)中開發(fā)程序的方法,在此方法中在各種程序被裝入各自的處理器、並在那里啟動(dòng)之前就可以得出各程序之間的關(guān)系。並且測檢出這個(gè)關(guān)系中的不正常現(xiàn)象,以便提高軟件可靠性。
本發(fā)明另外一個(gè)目的是提供一種關(guān)于在分布處理系統(tǒng)中開發(fā)程序的方法,在此方法中程序並不是由中央控制功能件開發(fā)的,而是由多個(gè)開發(fā)系統(tǒng)和一個(gè)處理器的組合開發(fā)的,並且,按照每個(gè)處理器的規(guī)定特征信息加到這個(gè)已開發(fā)的程序上,根據(jù)該特征信息,每個(gè)處理器就能確定它是否能夠執(zhí)行該程序。
本發(fā)明另外一個(gè)目的是提供一種分布處理系統(tǒng),在該系統(tǒng)中,合作開發(fā)程序的復(fù)雜開發(fā)系統(tǒng)(例如,開發(fā)系統(tǒng)並行地修改原始程序或者順序地修改不同部分)能夠容易的認(rèn)出程序產(chǎn)生、程序之間的關(guān)系以及由它們自己決定的程序特點(diǎn)。
本發(fā)明另外一個(gè)目的是提供具有多個(gè)處理器的一種分布處理系統(tǒng),它不需要作為集中管理程序的中央控制機(jī)構(gòu),並且能夠合作開發(fā)程序而不受在系統(tǒng)中增加一個(gè)新處理器或者對處理器的維修工作的影響。
實(shí)現(xiàn)本發(fā)明的上述目的方法是在源程序編輯期間把源程序上確定的輸入/輸出信息上的特征信息分開,按照與編輯好的寄存模塊的相應(yīng)關(guān)系將它儲(chǔ)存起來,並且準(zhǔn)備一張根據(jù)特征信息表示程序之間關(guān)系的表格。
在開發(fā)過程中對于每一個(gè)程序建立它的輸入/輸出信息,並且各自的程序的輸入/輸出信息是相互關(guān)連的,為的是在開發(fā)過程中了解程序之間的關(guān)系,並且由此可以檢查一致性。在裝入程序時(shí),自動(dòng)地產(chǎn)包括程序的裝入模塊和輸入/輸出信息的裝入消息。
在分布處理系統(tǒng)中的程序開發(fā)中,程序在傳輸線上不用從正常的數(shù)據(jù)中區(qū)別它們即可廣播,在分布處理系統(tǒng)中程序開發(fā)處理器僅僅根據(jù)表示這些程序的編碼來接納必要的程序,並且把該程序的特征信息和關(guān)于更新過程的信息加起來,以便只用各自處理器的規(guī)定來管理已開發(fā)的程序。程序的特征信息,(即為了辨認(rèn)部分程序的信息,)和程序版本信息被加到這些處理器之中的將要準(zhǔn)備的或者將要修改的程序上並且在公共傳播媒介上廣播它們。各自的開發(fā)處理器,當(dāng)它們從公共傳播媒介中收到信息時(shí),根據(jù)程序的特征信息修改程序並且送它們到傳播媒介上。因此,復(fù)雜的程序開發(fā)系統(tǒng)能夠在合作方式中開發(fā)程序。


圖1表示的是實(shí)現(xiàn)本發(fā)明的程序開發(fā)的例子,在這個(gè)例子中程序被裝入開發(fā)處理器中;
圖2表示的是用本發(fā)明開發(fā)的程序?qū)⒁b入的一個(gè)系統(tǒng);
圖3表示的是源程序的格式的實(shí)例,該源程序是本發(fā)明的程序開發(fā)的課題;
圖4至圖7展示了本發(fā)明;
圖8畫的是依照本發(fā)明的分布處理系統(tǒng)的方塊圖;
圖9顯示了將要通過傳輸媒介發(fā)送和接收的信息的消息格式;
圖10到圖12表示的是程序修改的實(shí)例;
圖13表示的是按照本發(fā)明的處理器中的處理流程圖。
圖2a至圖2c顯示了一個(gè)應(yīng)用本發(fā)明的系統(tǒng)。圖2a表示的是整個(gè)系統(tǒng)的配置。數(shù)字11~14表示處理器,在這些處理器中儲(chǔ)存並執(zhí)行應(yīng)用程序。數(shù)字15表示開發(fā)程序的處理器,它開發(fā)出來的程序由11~14處理器執(zhí)行。磁盤1502和陰極射線管(CRT)終端1501與處理器15相連。所有這些單元一起被稱作為開發(fā)系統(tǒng)。已開發(fā)的程序由執(zhí)行系統(tǒng)執(zhí)行。處理器11~15與網(wǎng)絡(luò)1相連,網(wǎng)絡(luò)1可以是任何形式的。處理器11~14的處理結(jié)果(數(shù)據(jù))送到網(wǎng)絡(luò)1。為了執(zhí)行在它自己的處理器中的程序,每一個(gè)處理器從在網(wǎng)絡(luò)上廣播的消息中接受必要的消息(包括程序和數(shù)據(jù)),當(dāng)所有對于于執(zhí)行所必要的消息都已接受到的時(shí)候就啟動(dòng)程序。已啟動(dòng)的程序執(zhí)行它自己的處理過程並且將結(jié)果輸出。
圖2b表示的是在網(wǎng)絡(luò)1上廣播的消息的格式。每個(gè)處理器根據(jù)表示數(shù)據(jù)內(nèi)容的存數(shù)碼(CC)202來決定從網(wǎng)絡(luò)上收到的消息對它自己的程序是不是必要的。源地址(SA)203是已經(jīng)發(fā)布消息的處理器的地址,C204是一串表示發(fā)送次序的數(shù)。數(shù)據(jù)205表示被程序處理過的結(jié)果內(nèi)容,F(xiàn)CS206是對發(fā)送數(shù)據(jù)的錯(cuò)誤檢查數(shù)據(jù),而F201和F207是指示消息開始和結(jié)束的標(biāo)志位。
圖2C展示了一張表,每個(gè)處理器為了決定它自己的程序啟動(dòng)都有這張表。圖2C的表中行1051、1052、……與各自己程序相對應(yīng)。在第一行中Prog10512是將要被啟動(dòng)的程序的信息儲(chǔ)存區(qū),而IData10511是執(zhí)行從網(wǎng)絡(luò)收到的程序Prog10512所必要的消息的儲(chǔ)存區(qū)域。第二行1052設(shè)計(jì)成這樣只有當(dāng)二個(gè)消息IData-110521和IData-210522已經(jīng)存入時(shí)程序才能執(zhí)行。第三行和以下接著的各行都有類似的結(jié)構(gòu)。對于執(zhí)行程序所必須的消息存數(shù)碼以前就已存入每個(gè)程序的表中IData10511內(nèi)。每個(gè)處理器對從網(wǎng)絡(luò)上收到的消息的CC202與它自己處理器中的表上的存數(shù)碼進(jìn)行比較,並且將該消息存入比較IData區(qū)10511。當(dāng)所有的必要消息已經(jīng)存入IData區(qū)10511時(shí),處理器利用該消息中的數(shù)據(jù)去執(zhí)行該P(yáng)rog區(qū)10512中的程序。當(dāng)所有的必要消息都已存入IData-1和IData-2區(qū)時(shí),Prog區(qū)10521就被執(zhí)行。
參照圖1,圖3,圖4a,圖4b,圖5a,圖5b,圖6a,圖6b,圖6c,圖7a和圖7b,現(xiàn)在詳細(xì)說明關(guān)于用上述系統(tǒng)執(zhí)行的程序的程序開發(fā)系統(tǒng)。
圖1表示了關(guān)于處理在開發(fā)處理器15中的消息的程序。程序15001,15002和15003被裝入處理器15中。這些程序隨著從顯示(CRT)終端1501的輸入而啟動(dòng)。程序15001是特征產(chǎn)生程序,為了指定源程序文件3011,3012,……中的一個(gè),特征產(chǎn)生程序產(chǎn)生裝入模塊文件3501~350n和一個(gè)特征文件。程序15002是廣播程序,它通過裝入模塊文件和特征文件聯(lián)合的方法制定裝入消息,並且在網(wǎng)絡(luò)1上廣播該消息。程序15003是一致性檢查程序,根據(jù)特征文件3500的內(nèi)容它使各程序相關(guān)。下面會(huì)說明這些程序處理的內(nèi)容。首先用圖3和圖4來說明程序15001的處理。圖3表示的是圖1中的源程序3011~301n的內(nèi)容。這些源程序予先已經(jīng)由程序開發(fā)器從CRT終端1501送入。作為本發(fā)明的課題的源程序包括特征部分401和過程部分402。特征部分401包括程序名定義字段4011;輸入消息存數(shù)碼字段4012;輸出消息存數(shù)碼定義字段4013;以及為了測試程序用的信息4014(例如測試輸入的及它的結(jié)果)。過程部分包括編碼程序。
圖4a表示了程序15001的處理流程。當(dāng)由終端1501指定轉(zhuǎn)換到裝入模塊中的源程序文件時(shí),編碼程序15001處理開始。特征產(chǎn)生移序15001把指定的源程序分成特征部分和過程部分(551步)。檢查已分離的特征部分的格式(552步)。在格式檢查中,檢查特征部分的內(nèi)容是否與圖3中的401相等。如果格式檢查的結(jié)果是OK,處理過程繼續(xù)進(jìn)行到554步,而假如結(jié)果不是OK,就產(chǎn)生一個(gè)錯(cuò)誤消息(557步)並且處理過程就終止。在554步中,從551步中分離出來的過程部分被編輯以產(chǎn)生裝入模塊文件。如果編輯正常地終止,處理就繼續(xù)到556步,假如是錯(cuò)誤的終止,就在557步中產(chǎn)生一個(gè)錯(cuò)誤消息,處理被終止,在556步中,已通過格式檢查的特征部分401的條目的右邊被收集來準(zhǔn)備一個(gè)特征文件(圖1中的3500)(556步)。于是,已準(zhǔn)備的特征文件和裝入模塊文件的結(jié)構(gòu)如圖4b所示。特征文件3500包含特征表格35001,35002……,它們與554步中準(zhǔn)備的裝入模塊文件3501,3502,……一一對應(yīng)。表35001包括一個(gè)PN350011區(qū),它包含一個(gè)由圖3中的源程序特征部分401確定的程序名4011;一個(gè)ICC350012區(qū),它包括由特征部分401確定的輸入消息存數(shù)碼4012;一個(gè)OCC350013區(qū),它包含輸出消息存數(shù)碼4013;以及文件指示字FP350014,文件指示字指示從源程序準(zhǔn)備的裝入模塊文件,而源文件是具有PN區(qū),ICC區(qū)和OCC區(qū)特征的。表35002,35003,……具有相同結(jié)構(gòu)。裝入模塊文件3501,3502,……總是通過特征表35001,35002,……取數(shù)。即裝入模塊文件靠程序名來取數(shù)。因此,當(dāng)裝入模塊文件要被刪去時(shí),相應(yīng)的特征表也應(yīng)被刪去。在圖4a的556步中,如果已經(jīng)有一張具有同樣程序名PN的特征表,則原有的特征表和相應(yīng)的裝入模塊文件都被刪除,並且準(zhǔn)備一份特征表。
為了產(chǎn)生裝入到處理器的消息,參照圖5來說明圖1中的裝入程序15002。當(dāng)要裝入的程序的程序名從CRT終端通過網(wǎng)絡(luò)1被指定時(shí),該程序被執(zhí)行。具有與指定的程序名相同的PN字段(圖4b)的特征表從特征文件中找到(581步)。然后,檢索過的特征表和相應(yīng)的裝入模塊相結(jié)合,以準(zhǔn)備要裝入的消息(582步)。在582步中準(zhǔn)備好的要裝入的消息,它的數(shù)據(jù)字段(圖2b中的205)的內(nèi)容如圖5b所示。PN591存的是特征表的程序名PN,而ICC592和OCC593分別存的是特征表的輸入存數(shù)碼ICC和輸出存數(shù)碼OCC。
LM594存的是裝入模塊文件的內(nèi)容。當(dāng)如圖5b和2b所示的消息的制備已經(jīng)完成時(shí),要裝入的消息的CC字段(圖2b中的202)存的是與程序相應(yīng)的存數(shù)碼,廣播程序15002通過網(wǎng)絡(luò)廣播該消息(583步)。由圖5的處理過程制備的並且通過網(wǎng)絡(luò)傳送的消息被與網(wǎng)絡(luò)相連的處理器收到。根據(jù)消息中的CC字段,處理器確定消息中的程序?qū)λ约旱奶幚砥魇欠袷潜匾?,如果是必要的,將收到的消息送入自己的處理器中。?dāng)該處理器接納此消息時(shí),它把消息的數(shù)據(jù)字段的LM內(nèi)容存到處理器的存儲(chǔ)器區(qū)並且根據(jù)消息的數(shù)據(jù)字段中PN,ICC和OCC的內(nèi)容(見圖5b)把已裝入的程序登記到程序登記表上,如圖2C所示。然后,為了用特征信息中的測試信息進(jìn)行測試,已裝入的程序被啟動(dòng),也就是,測試輸入數(shù)據(jù)以確定被程序處理過的輸出數(shù)據(jù)是否與輸入數(shù)據(jù)有予定的關(guān)系。如果測試結(jié)果是OK,程序變?yōu)槁?lián)線。在上述過程中,假定表示被處理器要求的程序的存數(shù)碼已經(jīng)登記在那個(gè)處理器中了。
參照圖6和圖7說明一致性檢查程序15003(圖1)的處理過程,一致性檢查程序根據(jù)特征文件的內(nèi)容使程序之間相互關(guān)連。圖6a表示的是一張表,該表顯示了由程序15003準(zhǔn)備的各輸入/輸出程序之間的關(guān)系。輸入/輸出關(guān)系程序包括行601,602,……與各自的存數(shù)碼相對應(yīng)。第一行601包括一個(gè)儲(chǔ)存存數(shù)碼的CC6011區(qū);一個(gè)儲(chǔ)存程序名的IPROG6012區(qū),該程序輸入具有CC6011區(qū)的存數(shù)碼的消息;以及一個(gè)儲(chǔ)存程序名的OPROG6013區(qū),該程序輸出具有CC6011區(qū)的存數(shù)碼的消息。第二行和接下來的各行具有同樣的結(jié)構(gòu)。
圖6b表示了準(zhǔn)備圖6a中的輸入/輸出關(guān)系表的處理流程圖。首先予置一個(gè)計(jì)數(shù)器變量i(651步)。根據(jù)第i張?zhí)卣鞅淼膬?nèi)容(圖4b),按照圖6b中的流程圖(652步)設(shè)置輸入/輸出關(guān)系表。從輸入/輸出關(guān)系表中,在CC字段中搜索具有存數(shù)碼與設(shè)置在特征表中的ICC字段中的存數(shù)碼相同的一行(681步)。如果相應(yīng)的行存在,特征表的PN字段的內(nèi)容被設(shè)置到那一行的IPROG6012區(qū)(682步)。如果相應(yīng)的行不存在,新的一行被補(bǔ)充到輸入/輸出關(guān)系表中,並且特征表的ICC字段的內(nèi)容和PN字段的內(nèi)容都被分別地設(shè)置到那一行的CC字段和IPROG字段(683步)。然后,從輸入/輸出關(guān)系表中搜索包含的存數(shù)碼包含在特征表OCC字段中的存數(shù)碼相同的一行(684步)。如果存在相應(yīng)的行,特征表的PN字段的內(nèi)容設(shè)置到那一行的輸出程序LOPROG)區(qū)(685步)。如果不存在相應(yīng)的行,圖4的程序名被設(shè)置到輸入/輸出關(guān)系表的新的一行,並且特征表的OCC字段的內(nèi)容和PN字段的內(nèi)容分別被設(shè)置到那原始的CC字段和OPROG字段(686步)。圖6c的處理以后,檢查特征文件中的所有特征表是否都已經(jīng)處理過了(653步),如果它們還沒處理過,計(jì)數(shù)器變量i就增加1(654步)並且處理過程回到652步。
因此,根據(jù)已準(zhǔn)備的輸入/輸出關(guān)系表,能夠了解被具有任一存數(shù)碼的消息啟動(dòng)的程序和了解輸出具有那個(gè)存數(shù)碼的消息的程序。通過搜索一行沒被設(shè)置過的表的IPROG區(qū)或OPROG區(qū)的程序可以檢測出不包含輸出該輸入消息的程序的程序和可以檢測出不包含接納該輸出消息的程序的程序。這是一個(gè)在程序關(guān)系中錯(cuò)誤檢測的例子。用這個(gè)輸入/輸出關(guān)系表,可以檢測出一系列對任一消息所啟動(dòng)的程序。因此,參照圖7a和圖7b來說明處理過程。處理過程被指定的作為觸發(fā)器功能的消息之存數(shù)碼啟動(dòng)。內(nèi)部的計(jì)數(shù)字l置于“0”(700步)。在輸入/輸出關(guān)系表中搜索一個(gè)程序,該程序收到具有指定的存數(shù)碼的消息,存數(shù)碼是由操作員通過終端1501指定的,並且確定該程序?yàn)閘級程序(701步)。對于搜索過的每一個(gè)l級程序,搜索那個(gè)接收它的輸出消息的程序,並且該程序被確定為(l+1)級程序(702步)。用從特征表中對程序檢測該輸出消息的存數(shù)碼和從輸入/輸出關(guān)系表中搜索那個(gè)接收具有該碼的消息的程序就可以獲得這一步。檢查與在702步中搜索過的(l+1)級程序相同的程序是否存在于至今已搜索過的(0-l級程序)程序中,如果它存在,對于循環(huán)檢查(703步)(l+1)級程序是不允許的。這是一個(gè)檢測異常結(jié)構(gòu)的處理過程,如圖7b所示,圖中數(shù)字761和762表示程序,數(shù)字751表示具有存數(shù)碼CC1的消息,而數(shù)字752表示具有存數(shù)碼CC2的消息。這種結(jié)構(gòu)中,用程序762的輸出消息啟動(dòng)程序761的處理流程是循環(huán)的,並且存在程序之間有異常關(guān)系的可能性。因此,703步也是一個(gè)檢測程序之間異常關(guān)系的例子。在704步中,檢查是否存在(l+1)級程序,如果不存在,處理過程就終止。如果存在,內(nèi)部變量 增加1,並且處理過程回到702步。在704步中,對于循環(huán)檢查不允許的程序被處理了,好像不曾存在(l+1)電平程序一樣。
在這種方法中,只需確定與一個(gè)源程序的輸入/輸出消息有關(guān)的信息,就能自動(dòng)產(chǎn)生將該程序裝入執(zhí)行處理器的信息。也能夠了解程序之間的關(guān)系並且檢測出程序之間的任何異常關(guān)系。
在本實(shí)例中,程序的特征表與它的裝入模塊一起產(chǎn)生。另一方面,可以只產(chǎn)生特征表面不產(chǎn)生裝配模塊。甚至當(dāng)只確定了源程序中的特征字段時(shí),就可以檢查程序之間的關(guān)系。在本實(shí)例中,特征表是存在文件里的而不是存在裝入模塊里的。另一方面,裝入模塊和相應(yīng)的特征表可以存在一個(gè)文件里並且處理成一個(gè)單元。
在本實(shí)例中,使用一個(gè)包括多元復(fù)雜處理器的系統(tǒng),雖然本方法同樣適用于包含單一處理器的系統(tǒng)(在這種系統(tǒng)中開發(fā)處理器和執(zhí)行處理器是不分開的)。
在本實(shí)例中,裝有程序的處理器根據(jù)程序特征信息中的測試信息測試程序。在開發(fā)處理器中,根據(jù)程序特征信息自動(dòng)地測試已開發(fā)的程序是可能的。
圖8表示的是實(shí)現(xiàn)本方法的分類處理系統(tǒng)的方塊圖。在本分布處理系統(tǒng)中,幾個(gè)處理器111,112,… 1n彼此通過公共傳輸媒介用與處理器相連的傳輸控制單元121,123…12n互相通訊。每個(gè)處理器能夠修改和產(chǎn)生程序。
圖9表示的是在公共傳輸媒介上傳輸?shù)男畔⒌膫鬏敻袷健T诜植继幚硐到y(tǒng)中,在傳輸媒介傳輸?shù)男畔⒈粋鬏斂刂茊卧邮眨喿x信息的存數(shù)碼200並且確定是否是該處理器所要求的。如果是需要的,信息被傳送到相連的處理器。當(dāng)具有那個(gè)存數(shù)碼的信息已經(jīng)完成收入存在處理器中的程序里,它作為要執(zhí)行的程序之輸入數(shù)據(jù)而被閱讀和處理。(假設(shè)存數(shù)碼已經(jīng)存入傳輸控制單元的存儲(chǔ)器中。)在本例子中,處理過程按存數(shù)碼以數(shù)據(jù)流的形式被分類。在本方法的具體實(shí)例中,信息可以在處理器之間用指派終點(diǎn)的通信協(xié)議互相交換而不必使用存數(shù)碼。
至少由分布處理系統(tǒng)的一個(gè)處理器產(chǎn)生的、通過公共媒介廣播的程序被寫入圖9的數(shù)據(jù)字段220。與寫入該數(shù)據(jù)字段的程序有關(guān)的后面的信息被寫入程序信息字段210。程序信息包括(1)程序內(nèi)容信息,(2)程序產(chǎn)生信息,(3)程序特性信息。
程序內(nèi)容信息描述程序的功能和內(nèi)容。例如,它敘述程序的輸入/輸出關(guān)系。在本具體實(shí)例的程序中,該具體實(shí)例是以數(shù)據(jù)流形式利用存數(shù)碼處理的,輸入/輸出關(guān)系可以包括對于處理所必要的信息的存數(shù)碼和處理后要輸出的信息的存數(shù)碼。
程序產(chǎn)生信息描述由復(fù)雜處理器加到一條程序上的修改過程。在本具體實(shí)例中考慮的分布處理系統(tǒng)中,一條程序通過處理器通過公共傳輸媒介流動(dòng)以及每個(gè)處理器補(bǔ)充、刪除或者置換該程序。程序產(chǎn)生信息用來從修改后的源程序中識(shí)別修改以前的源程序。這個(gè)信息可以用補(bǔ)充上所有修改處理來描述,因而在分布處理系統(tǒng)中程序開發(fā)結(jié)構(gòu)可以被認(rèn)出。換句話說,如圖10所示,處理器所做的每次修改,原始程序的修改次數(shù)可以被計(jì)數(shù)。在此方法中,如圖10所示,如果復(fù)雜處理器單獨(dú)地修改一個(gè)程序A,一個(gè)復(fù)雜的程序A2(這里下標(biāo)2表示程序產(chǎn)生和修改的版本)存在于分布處理系統(tǒng)中。在程序開發(fā)處理的各自的處理器中修改工作已經(jīng)予定和用收集同樣形式的程序使一條源程序?qū)⒁⑵饋淼牡胤娇梢允褂眠@種方法。程序產(chǎn)生信息除了與修改區(qū)有關(guān)的信息外還包括與版本修改次數(shù)有關(guān)的信息。修改區(qū)信息可以用一條程序的語句級指出修改的區(qū)域,或者一個(gè)修改區(qū)域的源模塊級可以被只考慮在一個(gè)源程序中的源程序模塊結(jié)構(gòu)所描述,如圖11所示。在對每個(gè)模塊級開發(fā)程序方面這種方法是足夠的。在圖12中,程序A1被處理器修改。(傳輸控制單元沒有畫出)。A1,A2,A3,……表示修改的次數(shù),而1-1和1-2表示修改的區(qū)域(模塊級)。
程序特性信息敘述程序執(zhí)行中的程序的特性,它包括(1)執(zhí)行時(shí)間,(2)程序長度,和(3)存儲(chǔ)能力。這個(gè)信息被加入處理器中,在處理器中程序已經(jīng)被修改了而且當(dāng)程序被執(zhí)行的時(shí)候就要利用這個(gè)信息了。
上面敘述過的(1)程序內(nèi)容信息,(2)程序產(chǎn)生信息和(3)程序特性信息符合程序的外部技術(shù)要求。在本發(fā)明中,外部的技術(shù)要求被加到程序上並且它們通過公共傳輸媒介被廣播,所以不需要任何中央控制機(jī)構(gòu),按它自己的處理器的決定就可以進(jìn)一步開發(fā)程序和在處理器中執(zhí)行程序。
程序信息字段210(圖9所示)包含信息(1)到(3)的全部或者部分。
圖13表示的是依照本方法的處理器中的處理流程。
如圖13所示,每個(gè)處理器都收到通過公共傳輸媒介送來的源程序(61步),檢查包含在程序中的程序內(nèi)容信息,程序產(chǎn)生信息和程序特性信息,以確定該程序是否要修改(62步和63步)。
如果要修改的並且不需要其他程序(64步),該程序就被修改(65步)以及新的程序內(nèi)容信息、產(chǎn)生信息和特性信息都被加到該程序上(66步),並且通過公共傳輸媒介,它們被傳輸出去(67步)。如果需要其他程序,那個(gè)程序就被儲(chǔ)存起來(68步)。
權(quán)利要求
1.關(guān)于在分類處理系統(tǒng)中至少由一個(gè)處理器為了用程序在由傳輸線內(nèi)部連接的多元復(fù)雜處理器中分別處理一系列步的開發(fā)程序的方法,該方法由包括以下的各步來描述(a)在一個(gè)處理器中,把與一個(gè)程序的輸入/輸出有關(guān)的特征信息加到描述各步的上述程序上;(b)通過所說的傳輸線廣播所說的包含特征信息的程序,為的是用處理器中的一個(gè)裝入它。
2.關(guān)于根據(jù)權(quán)利要求1的一種開發(fā)程序的方法,可以用程序根據(jù)的特征信息,檢查程序的輸入/輸出數(shù)據(jù)關(guān)系這一步來進(jìn)一步的描述。
3.關(guān)于根據(jù)權(quán)利要求1的一種開發(fā)程序的方法中,每一個(gè)處理器根據(jù)通過傳輸線廣播的消息的特征信息,裝入由它自己的處理器需要的消息。
4.關(guān)于根據(jù)權(quán)利要求1的一種開發(fā)程序的方法可以用為了使各程序相關(guān)所以根據(jù)特征信息準(zhǔn)備一份表這一步來更進(jìn)一步的描述。
5.關(guān)于根據(jù)權(quán)利要求1的一種開發(fā)程序的方法中所說的特征信息包括為了測試該程序的信息。
6.關(guān)于根據(jù)權(quán)利要求1的一種開發(fā)程序的方法用以下各步可以再作進(jìn)一步的描述通過所說的傳輸線廣播具有加到那里的程序產(chǎn)生信息、程序內(nèi)容信息和程序修改信息;在每個(gè)處理器內(nèi)根據(jù)已廣播的程序中的信息修改程序,並且按照此修改更新信息的內(nèi)容;通過傳輸線重新廣播修改過的程序。
全文摘要
在分布處理系統(tǒng)中由處理器開發(fā)的程序的特征信息包括為了確定程序的輸入/輸出操作的輸入/輸出數(shù)據(jù),該數(shù)據(jù)在程序描寫形式中已給出了。根據(jù)特征信息的內(nèi)容檢查程序的相互關(guān)系。程序產(chǎn)生信息、程序內(nèi)容信息和程序修改信息共同地加到開發(fā)的程序中并且在開發(fā)過程中修正它們。
文檔編號(hào)G06F9/445GK1035189SQ8810870
公開日1989年8月30日 申請日期1988年12月17日 優(yōu)先權(quán)日1987年12月18日
發(fā)明者茂昌之, 森欣司, 鈴木靖雄, 河野克己, 小泉稔, 中井耕三, 笠広和 申請人:株式會(huì)社日立制作所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
深水埗区| 沿河| 浦北县| 乡城县| 山西省| 景德镇市| 平南县| 安多县| 上犹县| 盱眙县| 天祝| 开远市| 屯昌县| 沂源县| 新宾| 芜湖县| 山丹县| 赣榆县| 彭山县| 东丽区| 大庆市| 广昌县| 华坪县| 江华| 陆川县| 泗阳县| 龙川县| 竹山县| 乡城县| 固安县| 三亚市| 绥化市| 竹溪县| 昭通市| 永昌县| 黄山市| 金溪县| 麻阳| 凤翔县| 安龙县| 海丰县|