本節描述功能管理介面(FMI)的訊息格式。 訊息格式以語言無關的符號表示。 訊息格式符號的細節及訊息格式內容的主要假設如下:
保留表示該欄位由訊息發送者設定為零(數字欄位)或所有空值(名稱)。
未定義表示該欄位的值是不確定的。 該欄位不是由發送者設定,接收者不應檢視。
佔據兩個位元組的欄位,如 Open(PLU) 請求中的 opresid,則以最小位元組位址中算術上最顯著的位元組來表示,無論軟體執行時處理器的正常方向為何。 也就是說,2 位元組的值 0x1234 的位元組 0x12 位於最低的位元組位址。 然而,以下欄位為例外:
緩衝區標頭中的 srci 和 desti 欄位會以指派它們的應用程式本地格式儲存,因為只有指派應用程式需要解讀這些值。
元素中的 起始 欄位與 結束 欄位總是以低位元組、高位元組的排列方式儲存(這是 Intel 處理器的正常方向)。
訊息由緩衝區組成,緩衝區包含一個緩衝區標頭及零個或多個緩衝區元素。 欲了解更多緩衝區格式資訊,請參閱 訊息。
應用程式必須為節點內每個活躍的 LPI 連線分配唯一的索引(I)值。 特別地, Open(SSCP) 請求 必須與它回應 Open(PLU) 時所發送的來源索引不同。 此外,零不應作為 I 值。 I值為零表示訊息發送者邀請訊息接收者賦予I值。
每個元素的 startd 欄位用來表示在trpad 欄位之後該元素中的第一個位元組的偏移量。
對於非邏輯單元應用(LUA)應用, startd 會是 1(資料從 trpad 欄位後的位元組開始)、10( trpad 欄位與資料起始之間包含九位元組的填充)或 13( trpad 欄位與資料起始之間包含 12 位元組的填充)。
對於 LUA 應用, startd 在訊息的第一個元素中為 4( trpad 欄位與資料起始之間有三個位元組的填充),後續元素則有 13(12 位元組的填充)。
本地節點會使用額外的位元組來提供額外的標頭資訊。 這樣可以避免在新增資訊時,必須將資料複製到新的緩衝區。
由於 startd 表示從 1 開始的索引進入 dataru,而非 0,因此有效資料的第一個位元組總是在 dataru[startd–1]。
如果 startd 大於 endd,則訊息中沒有有效資料。
dataru 內的所有欄位皆為 CHAR 類型,除非備註另有說明。
請注意,當緩衝元素的 startd 為 1、10 或 13 時,這只適用於該鏈中的初始元素,而鏈中後續元素的 startd 為 1。 在訊息格式中,具有兩個不同連結元素鏈的訊息(例如 Open(PLU) Request 與 Open(PLU) OK Response),鏈條起始元素的 起始 欄位為訊息格式中給出的值(1、10或13),其他元素的 起始 欄位為 1。
本節中
** 開啟(PLU)成功回應