?? rfc105.txt
字號(hào):
有如下格式:
1 1 80
+-------+-------+ / +--------------------+ \
| | | / | | \
| x'00' | x'C0' | \ | card image | / ...
+-------+-------+ \ +--------------------+ /
這里每一個(gè)字段的長(zhǎng)度都已經(jīng)在字節(jié)中加以說(shuō)明。 括號(hào)[尖括號(hào)]中的零或具體數(shù)字可
以在聯(lián)接被用戶關(guān)閉之前發(fā)送。
二、 遠(yuǎn)程輸出返回(RJOR)
只要當(dāng)任務(wù)提交后,任務(wù)卡片上記數(shù)參數(shù)的第八位為字符'T',則來(lái)自由RJE提交的,
在UCSB處批處理的任務(wù)的A類SYSOUT輸出總可以通過(guò)與點(diǎn)三的套接字x'300'聯(lián)系來(lái)獲取。
輸出根據(jù)請(qǐng)求進(jìn)行檢索,并通過(guò)其后的一個(gè)編址為套接字x'300'的稱為RJOR的進(jìn)程向網(wǎng)絡(luò)
用戶轉(zhuǎn)播。 RJOR可以通過(guò)日志記錄器觸發(fā)。 本節(jié)旨在為程序員提供與RJOR通訊的必要信
息。
RJOR依據(jù)1970年8月3日的主機(jī)-主機(jī)傳輸協(xié)議,通過(guò)網(wǎng)絡(luò)控制程序傳遞全部的網(wǎng)絡(luò)
報(bào)文。 RJOR期待第一個(gè)接收到的消息報(bào)文是類型0,丟棄第一位并假定它為零,并且在其
后的連接期限內(nèi)不考慮IMP消息報(bào)文的邊界。 同樣地,RJOR發(fā)送的第一個(gè)消息報(bào)文類型為
0:第一個(gè)字節(jié)由零組成,并且其后該聯(lián)接周期內(nèi),IMP消息報(bào)文邊界不是重要的。
2.1 RJOR登入
為了從批模式任務(wù)中獲得計(jì)算輸出,網(wǎng)絡(luò)用戶必須建立一個(gè)與RJOR之間全雙工的聯(lián)接。
RJOR僅當(dāng)使用時(shí)存在于核心存儲(chǔ)器常駐區(qū)(即當(dāng)一個(gè)用戶正在接收或發(fā)送控制信息或一個(gè)
文檔時(shí),或當(dāng)RJOR等待之前的一個(gè)被請(qǐng)求的輸出文檔(或一些文檔)時(shí))。 其他時(shí)間里,
它保存在直接存取存儲(chǔ)器,并必須由日志記錄器觸發(fā)。 一個(gè)登錄序列總可以通過(guò)向套接字
x'300'發(fā)送聯(lián)接請(qǐng)求報(bào)文來(lái)初始化。 如果當(dāng)另一個(gè)用戶正在登錄時(shí)想套接字發(fā)送一個(gè)連接
申請(qǐng),則網(wǎng)絡(luò)控制程序?qū)⒃撔畔⑴抨?duì)。 在當(dāng)前聯(lián)接終止之后,RJOR將監(jiān)聽并接受它的信息
隊(duì)列中的下一個(gè)請(qǐng)求報(bào)文(如果有的話);如果信息隊(duì)列中沒(méi)有它的請(qǐng)求報(bào)文,并且它已經(jīng)
完成了它所有的輸出文件請(qǐng)求報(bào)文,則它就會(huì)終止執(zhí)行、釋放它占領(lǐng)的主存儲(chǔ)器。 當(dāng)RJOR
不在內(nèi)核中的時(shí)候,日志記錄器監(jiān)聽從套接字x'300',剔除它收到的第一個(gè)調(diào)用,將RJOR
讀入內(nèi)核,并停止監(jiān)聽從,由RJOR繼續(xù)在該套接字上監(jiān)聽從。 因此要初始化一個(gè)登錄序列,
用戶向套接字x'300'發(fā)送聯(lián)接請(qǐng)求。 如果請(qǐng)求被接受,則他就與RJOR建立了聯(lián)系。 如果
請(qǐng)求被拒絕,則他應(yīng)該重新發(fā)送發(fā)連接請(qǐng)求;一旦請(qǐng)求被接受,他將被連接到RJOR。 再次
拒絕意味著網(wǎng)絡(luò)控制程序的資源告罄。 一旦被請(qǐng)求的雙工連接的前半部分被建立,RJOR就
認(rèn)為該用戶已經(jīng)登錄。
在第一個(gè)聯(lián)接中(此后稱為輸入聯(lián)接),用戶發(fā)送標(biāo)記指定由RJOR執(zhí)行的函數(shù),同時(shí)
函數(shù)要應(yīng)用的任務(wù)名也被指定。 RJOR隨后關(guān)閉這個(gè)聯(lián)接。 RJOR發(fā)送控制信息,對(duì)用戶請(qǐng)
求報(bào)文的配置和涉及位于點(diǎn)三、號(hào)碼為x'301'的RJOR套接字的輔助聯(lián)接的輸出文件加以說(shuō)
明。同時(shí)還對(duì)用戶方套接字號(hào)碼比與該用戶連接的RJOR套接字號(hào)碼小一的那些套接字進(jìn)行
說(shuō)明。 用戶的請(qǐng)求報(bào)文不一定被立即執(zhí)行。 如果是前一種情況,RJOR則向指定隨用戶接
收套接字發(fā)出一個(gè)聯(lián)接請(qǐng)求,并如果需要的話,可以當(dāng)聯(lián)接建立起來(lái)以后,與用戶輸出一同
發(fā)送任何適當(dāng)?shù)目刂菩畔ⅰH缓驲JOR關(guān)閉該聯(lián)接并且認(rèn)為該用戶已經(jīng)注銷。 如果該用戶的
請(qǐng)求報(bào)文不能被立刻滿足(例如,所尋找的任務(wù)輸出尚未提交或還沒(méi)有結(jié)束執(zhí)行),則由
RJOR創(chuàng)建第二個(gè)足夠長(zhǎng)的聯(lián)接,向該用戶通知延遲信息,并隨即關(guān)閉。 然后當(dāng)請(qǐng)求報(bào)文可
用時(shí),該聯(lián)接被重新開放,發(fā)送所需數(shù)據(jù),然后關(guān)閉該聯(lián)接。用戶即被認(rèn)為已經(jīng)注銷。
為了防止RJOR被單個(gè)用戶壟斷,在軟件中做了規(guī)定:如果該連接用戶請(qǐng)求關(guān)閉,或者
一個(gè)RJOR等待的時(shí)間超過(guò) 傳輸完成的時(shí)限一定量時(shí),則終止該聯(lián)接。 現(xiàn)在,這一時(shí)間極
限已經(jīng)被定為每個(gè)記錄一分鐘,但其可以在將來(lái)根據(jù)需要被縮短或延長(zhǎng)。
2.2 輸入聯(lián)接
RJOR期待它收到的來(lái)自輸入聯(lián)接的數(shù)據(jù)的第一個(gè)字節(jié)的為0,即標(biāo)記消息類型0;它將
這個(gè)字節(jié)丟棄而不去檢驗(yàn),并隨后在IMP消息報(bào)文邊界無(wú)效數(shù)字。 接收到數(shù)據(jù)的第二個(gè)字
節(jié)被解釋為說(shuō)明待執(zhí)行函數(shù)的標(biāo)識(shí)。 遵循該標(biāo)記字節(jié),RJOR期望一個(gè)八字節(jié)擴(kuò)充的二進(jìn)制
--十進(jìn)制交換碼任務(wù)名,并在必要時(shí)在右方填補(bǔ)空白字符。 標(biāo)記字節(jié)翻譯如下:
Bit 0 = 1: 發(fā)送由指定任務(wù)生成的輸出。
Bit 1 = 1: 清除指定任務(wù)創(chuàng)建的輸出文檔。
Bit 2 = 1: 根據(jù)需要延遲,以執(zhí)行于0-1位上標(biāo)明的函數(shù)。
= 0: 如果0-1位上標(biāo)明的函數(shù)不能被立刻執(zhí)行,返回一簡(jiǎn)單消息,對(duì)該情況加
以說(shuō)明。
Bit 3 = 1: 早前的一個(gè)屬于指定任務(wù)的具有等待輸出(位2)選項(xiàng)的請(qǐng)求將被取消。
Bits 4-7: 為檢驗(yàn),應(yīng)為零。
0-2位的任一組合都是允許的。 如果第三位為1,則不繼續(xù)檢驗(yàn)其它數(shù)位。 如果第零
位等于1且第一位也等于一,則輸出文檔在發(fā)送,然后再將其清除。 如果二個(gè)同名的任務(wù)
順次執(zhí)行,則來(lái)自第二個(gè)任務(wù)的輸出將會(huì)覆蓋由第一個(gè)任務(wù)生產(chǎn)的輸出。 在這種情況下,
用戶應(yīng)該在第一個(gè)任務(wù)發(fā)送完畢之后將輸出從任務(wù)中清除,以使得來(lái)自第二個(gè)任務(wù)的請(qǐng)求不
會(huì)僅簡(jiǎn)單地返回第一個(gè)任務(wù)輸出的另一份拷貝。
2.3 輸出聯(lián)接
RJOR可以開啟輸出聯(lián)接一或兩次,作為輸出聯(lián)接中的單個(gè)傳輸?shù)慕Y(jié)果。 在這兩中情
況中的任意一種中,傳輸?shù)牡谝粋€(gè)字節(jié)將由零組成,用以表明消息類型0,
并且其后該聯(lián)接周期內(nèi),IMP消息報(bào)文邊界不是重要的。 遵循第一個(gè)字節(jié)、RJOR將向
那些適用的響應(yīng)發(fā)送任務(wù)名。 與用戶通過(guò)輸入聯(lián)接所提供的一致,該任務(wù)名將存在與一個(gè)
8字節(jié)數(shù)字段內(nèi)。 遵循該任務(wù)名,RJOR將發(fā)送可變長(zhǎng)度的邏輯記錄。<*每一個(gè)照理應(yīng)該由
一個(gè)單字節(jié)操作碼、一個(gè)說(shuō)明隨后的可變長(zhǎng)度正文字段的無(wú)符號(hào)長(zhǎng)度位的雙字節(jié)長(zhǎng)度字段組
成。正文字段的長(zhǎng)度應(yīng)為零或正字節(jié)數(shù);該長(zhǎng)度字段應(yīng)該包含一個(gè)8的倍數(shù)的整數(shù)。
當(dāng)前定義的操作碼如圖1所示。位于x'01'的一個(gè)操作碼表明該正文字段包含一個(gè)由被
請(qǐng)求輸出的任務(wù)創(chuàng)建的SYSOUT數(shù)據(jù)集之一的記錄。 所有具有操作碼x'01'的邏輯記錄的字
段長(zhǎng)度都是相同的。 對(duì)于那些記錄長(zhǎng)度不同于這一值的數(shù)據(jù)集,則在其標(biāo)準(zhǔn)記錄長(zhǎng)度右邊
填補(bǔ)空字符或進(jìn)行截取以滿足要求。 通常出現(xiàn)在第一列的用于指定打印機(jī)的計(jì)算輸出已被
丟棄而不復(fù)出現(xiàn)。記錄按照它們?cè)诖蛴C(jī)上打印同樣的順序被傳輸?shù)接脩簟?偲饋?lái)說(shuō),這些
記錄包括了所有可能出現(xiàn)在打印輸出中的信息,HASP分隔表單除外。
除了具有操作碼x'01'之外的所有邏輯記錄中,長(zhǎng)度字段包含值零,并且該操作碼傳達(dá)
該邏輯記錄的全部信息。*
操作碼(十六進(jìn)制數(shù)) 名 稱 解 釋
----------------- ------------ -------------------------------
00 文檔末尾 所有來(lái)自該任務(wù)的輸出都已發(fā)送(最后是一個(gè)操
作碼為x'01'的邏輯記錄)。
01 輸 出 文本字段包含一個(gè)由該任務(wù)生成的SYSOUT數(shù)據(jù)
記錄。
02 輸出文檔已清除。 來(lái)自該任務(wù)的輸出已經(jīng)按照請(qǐng)求被清除。
03 緩沖區(qū)內(nèi)核空間不足。 用于傳送該任務(wù)的輸出的主存儲(chǔ)空間不足。傳
送任務(wù)被取消,并禁止任何清除請(qǐng)求。
04 文件I/O錯(cuò)誤。 在讀輸出文檔時(shí)遇到了一個(gè)不可恢復(fù)的I/O錯(cuò)
誤。傳送任務(wù)被取消,并禁止任何清除請(qǐng)求。
05 清除文件I/O錯(cuò)誤。 在清除輸出文檔時(shí)出現(xiàn)了一個(gè)不可恢復(fù)的I/O
錯(cuò)誤。傳送任務(wù)被取消,并禁止任何清除請(qǐng)求。
06 請(qǐng)求隊(duì)列空間已滿。 來(lái)自任務(wù)的輸出不存在,并已指定等待輸出選
項(xiàng),但RJOR的請(qǐng)求隊(duì)列空間已滿,已被禁止。
07 等候輸出。 來(lái)自任務(wù)的輸出不存在,并已指定等待輸出選
項(xiàng),RJOR在等候任務(wù)輸出。
08 未發(fā)現(xiàn)被取消的請(qǐng)求 用戶請(qǐng)求取消之前發(fā)送的指定等候輸出選項(xiàng)的
請(qǐng)求命令。但RJOR未發(fā)現(xiàn)這樣的請(qǐng)求。
09 請(qǐng)求被取消。 根據(jù)用戶的請(qǐng)求,之前發(fā)送的指定等候輸出選
項(xiàng)的請(qǐng)求命令被取消。
0A 搜索文檔I/O錯(cuò)誤。 試圖定位任務(wù)的輸出文檔時(shí)發(fā)生了一個(gè)不可恢
復(fù)的I/O錯(cuò)誤。用戶請(qǐng)求被取消。
0B 未找到輸出。 未找到來(lái)自該任務(wù)的輸出。用戶未指定等候輸
出選項(xiàng)。
圖 1. 輸出聯(lián)接操作碼
[ 本RFC文檔由Randy Dunlap于97年4月 ]
[ 編為機(jī)器可讀形式錄入RFC在線檔案 ]
*本限制僅是暫時(shí)的,我們正在進(jìn)行補(bǔ)丁工作。該補(bǔ)丁不久將發(fā)布。
RFC105——Network Specifications for Remote Job Entry andRemote Job Output Retrieval at UCSB
通過(guò) UCSB 進(jìn)行遠(yuǎn)程登錄和遠(yuǎn)程輸出返回的網(wǎng)絡(luò)說(shuō)明書
1
RFC文檔中文翻譯計(jì)劃
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -