• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            ?第4章命名管道
            ?
            ?“命名管道”或“命名管線”(Named Pipes )是一種簡單的進程間通信( I P C)機制,?命名管道可在同一臺計算機的不同進程之間,或在跨越一個網絡的
            不同計算機的不同進程之間,支持可靠的、單向或雙向的數據通信。

            要記住的一個重點是,將命名管道作為一種網絡編程方案使用時,它實際上建立一個簡單的客戶機/服務器數據通信體系,可在其中可靠地傳輸數據。
            4.1.1 命名管道命名規范命名管道的標識是采用U N C格式進行的:
            \ \ s e r v e r \ P i p e \ [ p a t h ] n a m e
            上述字串可分為三部分來觀看: \ \ s e r v e r、\ P i p e和\ [ p a t h ] n a m e。第一部分\ \ s e r v e r指定一個服務器的名字。命名管道便是在那個服務器上創建的,而且要由它對進入的連接請求進行“監聽”。第二部分\ P i p e是一個不可變化的“硬編碼”字串(必須原樣照錄,但不用區分大小寫),用于指出該文件從屬于N P F S。而第三部分\ [ p a t h ] n a m e則使應用程序可以“唯一”定義
            及標定一個命名管道的名字,而且可在這里設置多級目錄。

            4.1.2 字節模式及消息模式
            命名管道提供了兩種基本通信模式:字節模式和消息模式。

            命名管道服務器應用只能在Windows NT或Windows 2000上工作——Windows 95和Windows 98 不允許應用程序創建命名管道!

            4.2.2 高級服務器的細節

            在前面的程序清單4 - 1中,我們展示了如何設計一個命名管道服務器應用,令其只負責對一個管道實例的控制。所有A P I調用都采用同步模式工作。在這種模式下,每個調用都會一直等到I / O請求完成,才會返回。命名管道服務器也能擁有多個管道實例,所以客戶機能夠建立
            同服務器的兩個或更多的連接;管道實例的數量要受到C r e a t e N a m e d P i p e這個A P I調用之n M a x I n s t a n c e s參數指定的數字的限制。要想同時控制不止一個的管道實例,服務器必須考慮使用多個線程,或者使用異步Win32 I/O機制(比如重疊式I / O以及完成端口等),分別為每個管道實例提供服務。

            采用異步I / O機制,服務器可從單獨一個應用程序線程中,同時為所有管
            道實例提供服務。在此,我們將解釋如何使用線程以及重疊式I / O,來開發更高級的服務器應用。

            1 . 線程
            要想開發一個高級服務器,令其使用線程,同時支持多個管道實例,整個過程是非常簡單的。我們要做的唯一事情便是為每個管道實例都創建一個線程.

            2. 重疊式I / O
            重疊式I / O是一種特殊的輸入/輸出機制,允許Win32 API函數(如R e a d F i l e和Wr i t e F i l e)在發出I / O請求之后,以異步方式工作。具體的工作原理是:向這些A P I函數傳遞一個O V E R L A P P E D
            (重疊式)結構,然后使用A P I函數G e t O v e r l a p p e d R e s u l t,從原來那個O V E R L A P P E D結構中,取得一次I / O請求的結果。如果在使用重疊式結構的前提下,調用一個Win32 API函數,那么調用無論如何都會立即返回!

            3. 安全模擬
            之所以會選擇命名管道作為自己的網絡編程方案,一個最好的理由便是它們依賴于Windows NT及Windows 2000的安全機制,Windows NT和Windows 2000安全機制具有“模擬”能力,允許一個命名管道服務器
            應用在客戶機的安全環境中執行。執行一個命名管道服務器應用時,它通常會在用于啟動該應用的那個進程的安全環境許可級別上工作。例如,假如擁有管理員權限的某人啟動了一個命名管道服務器,服務器便有權訪問Windows NT或Windows 2000系統上的幾乎任何資源。此時,假如在C r e a t e N a m e d P i p e中指定的S E C U R I T Y _ D E S C R I P TO R結構允許所有用戶訪問這個
            命名管道,就會埋下極大的安全隱患。

            4.5 小結
            本章向大家介紹了命名管道網絡編程技術,它為我們建立了一個簡單的客戶機/服務器數據通信體系,可確保數據進行可靠傳輸。接口依賴于Wi n d o w s重定向器,以便通過一個網絡來傳送數據。對命令管道而言,它最大的一項好處便是直接利用了Windows NT及Wi n d o w s2 0 0 0的安全機制,該機制是本書講到的其他網絡技術均不具備的一項好處!下面第二部分將向大家深入講解Wi n s o c k技術,以便應用程序利用一種網絡傳輸協議,進行“直接”通信。

            Posted on 2006-09-06 17:24 艾凡赫 閱讀(506) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程
            久久久精品一区二区三区| 久久强奷乱码老熟女| 99精品久久精品一区二区| 久久er热视频在这里精品| 青青热久久国产久精品| 国产美女亚洲精品久久久综合| www久久久天天com| 日韩一区二区三区视频久久| 久久久久AV综合网成人| 久久久91人妻无码精品蜜桃HD| 色播久久人人爽人人爽人人片AV| www性久久久com| 亚洲国产精品一区二区久久hs| 国产综合免费精品久久久| 亚洲精品无码久久一线| 久久精品国产第一区二区| AV无码久久久久不卡蜜桃| 亚洲综合日韩久久成人AV| 麻豆久久| 久久久久久国产a免费观看不卡| 国产精品99久久精品| 亚洲精品午夜国产VA久久成人| 一本久久a久久精品综合香蕉| 色综合久久综精品| 久久九九亚洲精品| 国产国产成人精品久久| 99国产精品久久| 97久久精品午夜一区二区| 成人综合伊人五月婷久久| 久久精品国产亚洲AV大全| 久久国产精品成人片免费| 无码久久精品国产亚洲Av影片| 国产精品久久久久久久app | 日日噜噜夜夜狠狠久久丁香五月 | 日本人妻丰满熟妇久久久久久| 7777精品伊人久久久大香线蕉| 一级女性全黄久久生活片免费 | 久久夜色精品国产亚洲| 日韩久久无码免费毛片软件| 四虎国产精品免费久久| 香蕉久久久久久狠狠色|