Abstract
透過網路的連結,一個分散式系統包含了數個中央處理器,而每個處理器 又分別擁有其私有的記憶體。一般常見的分散式系統包含有分散式記憶體 的多處理機系統,像是Ncube-2、CM-5、Paragon、和T3。另一類則是由數 個工作站經由外部網路連結而成的分散式計算環境。由於分散式系統擁有 的良好擴展性和快速的處理器和網路特性,它已經成為相當受歡迎的高效 能運算環境。訊息傳送 (Message Passing)是在分散式計算系統中所被運 用最為基本的處理器間溝通的方式。訊息傳送的最大問題是它太原始了, 使用者必須小心的去處理發送 (send) 和接收 (receive) 之間的同步問 題。這也是為什麼在分散式系統內的程式寫作上,訊息傳送被認為比共享 記憶體還不易使用的原因。為了增進訊息傳送在程式寫作上的便利性,已 有一些架構在訊息傳送之上或相關的較高階的溝通模式 (communication model) 被提出。這些改進可以概略的分成兩部份:集結式溝通和主動式 溝通(active communication)。集結式溝通處理像是廣播, gather、 scatter等高階的訊息傳送功能。主動式溝通則是完全不同的類型。在訊 息的傳送上,主動式溝通所處理的不僅僅是資料的傳輸,它還包含了一個 運算的傳送。這個運算是由遠端所執行,並且它可以和遠端的程序 (procedure)和執行脈 (thread) 合併或合作。藉由這種先進的模式,一 些應用像是遠程資源控制,遠程程序/執行脈呼叫和排程,還有中斷接收 (interrupt receive) 等都可以很簡單的來完成。在這篇論文裡,我們把 焦點放在主動式溝通的模式上。並且我們提出了一種高階的主動式溝通的 實作模式,稱為參數化遠程中斷 (PRI,Parameterized Remote Interrupt),和它的使用方法。參數化遠程中斷主要是藉由中斷遠程處理 所達成。被中斷的處理接著便呼叫一個特定的程序,並且傳給參數。在實 際應用上,藉由參數化遠程中斷,許多的溝通模式像是遠程程序呼叫,主 動式訊息所提供的函式GET和PUT,還有一對一的資料傳輸都可以很簡單的 來達成。為了提供參數化遠程中斷模式廣範和合適的應用,我們也完成了 一套建構PVM上的函式庫,稱作AIR (Active communication with Interrupt Receive facility)。AIR函式庫直接支援參數化遠程中斷的溝 通模式,並且它也內建了GET和PUT的函式以供便利的應用。在這篇論文中 ,我們將會說明AIR函式庫的建構細節和它的使用方法。