函式 0x64:讀取介面記錄

此函式會讀取驅動程式的介面記錄,並將它複製到 SNALink 所傳遞的緩衝區。 在進行此呼叫之前,必須先將緩衝區配置給 SNALink。

參數

IRP。系統緩衝區
介面記錄位址 (在) 中,也就是驅動程式介面記錄區域的32位指標。

介面記錄格式如下所示:

描述 類型
接收的框架 int
傳輸緩衝區空間 int
狀態事件 int
輸入 V. 24 狀態 UCHAR
輸出 v. 24 狀態 UCHAR
統計資料計數器 int [11]
  • 接收的框架是目前在驅動程式接收緩衝區中排入佇列的框架數目。

  • 傳輸緩衝區空間是用來通知 SNALink:

    是否可以提供更多的框架給驅動程式。

    驅動程式是否仍有等候傳送的畫面格。

    [傳輸緩衝區空間] 欄位指出驅動程式目前可接受的最大框架大小。 這會在每次成功傳輸框架 IOCTL 之後更新,並在將進一步的畫面傳送至驅動程式之前,由 SNALink 檢查。

  • 狀態事件是對統計資料計數器的遞增總數總數。

  • 輸入 V:24狀態是輸入介面行目前邏輯狀態的點陣圖,值為1表示開啟,值為0表示 OFF。 Pin 的對應方式如下:

    位數位 V. 24 電路名稱 線路編號 RS-232C pin
    7 - 5 保留 142 25
    4 測試指示器 125 22
    3 呼叫指標 125 22
    2 RLSD (常見的 DCD) 109 8
    1 Data Set Ready (DSR) 107 6
    0 清除以傳送 (CTS) 106 5
  • 輸出 V:24狀態是輸出介面行目前邏輯狀態的點陣圖,值為1表示開啟,值為0表示 OFF。 Pin 的對應方式如下:

    位數位 V. 24 電路名稱 線路編號 RS-232C pin
    7 - 5 保留
    4 維護測試 140 18
    3 選取待命 116 11
    2 資料信號率選取器 111 23
    1 Data Terminal Ready (DTR) 108/2 22
    0 要求傳送 (RTS) 105 4

    請注意,在傳輸時,驅動程式會視需要引發並降低 RTS,在輸出的 [V] 狀態欄位中反映 RTS 的狀態。 因此,應用程式不應該嘗試操作 RTS。

  • 統計資料計數器會計算各種不同類型的連結狀態資訊。與其相關的事件如下:

    計數器編號 描述
    1 收到的框架不正確的 CRC。
    2 畫面格大於收到的大小上限。
    3 收到的框架小於32位。
    4 收到的框架不是8位的倍數。
    5 收到已中止的框架。
    6 發送器不足。
    7 接收者溢出。
    8 RLSD 會降到中。
    9 CTS 會降至中間傳輸。
    10 DSR 下降。
    11 硬體故障 (介面卡或數據機) 。

備註

介面記錄提供快速機制,用來決定是否可以傳送框架、是否有任何要接收的框架等等。 驅動程式會維護這份資訊。 每次 SNALink 需要這項資訊時,它會呼叫 讀取介面記錄 以取得目前介面記錄的複本。 在每次呼叫之後,驅動程式會清除其本身介面記錄中的統計資料計數器。 V. 24 狀態和傳輸和接收資料資訊都不會變更。