Etäproseduurikutsu

Etäproseduurikutsu  on ohjelmoinnissa ja käyttöjärjestelmäsuunnittelussa käytetty paradigma hajautetun järjestelmän toteuttamiseen. 
Hajautettu järjestelmä voidaan toteuttaa käyttöjärjestelmätasolla tai sovellustasolla, jolloin voidaan käyttää ohjelmointirajapintoja, ohjelmistokehyksiä ja tietoliikenneprotokollia apuna.

Hajautettuja käyttöjärjestelmiä ovat esimerkiksi Apollo Computer -yrityksen Domain/OS sekä Bell Labsin Plan 9.

Tarkoitukseen kehitettyjä rajapintoja ja protokollia:
 RPC (Remote Procedure Call, "Sun RPC", IETF-standardoitu, eri toteutuksia)
 CORBA (Object Management Group)
 DCOM (Microsoft)
 RMI (Remote Method Invocation, Java)

Menetelmä 

Etäproseduurikutsussa ohjelma etenee kahden prosessin kautta: asiakasohjelma (client) kutsuu palvelinohjelmaa (server). Asiakasohjelma lähettää kutsuviestin parametreineen palvelinohjelmalle ja jää odottamaan vastausta. Palvelinohjelma, joka on ollut odottamassa kutsuviestiä, käsittelee kutsun parametrit, suorittaa toiminnon ja lähettää vastausviestin, sekä jää odottamaan seuraavaa kutsuviestiä. Asiakasohjelma saa vastausviestin, käsittelee tuloksen ja jatkaa suoritusta.

Mallissa vain toinen ohjelma kerrallaan on aktiivisena toiminnon suorituksessa, mutta totetus voi käyttää rinnakkaisuutta sekä asynkronisia kutsuja.

Lähteet

Aiheesta muualla 
 A Critique of the Remote Procedure Call Paradigm (PDF) 

Ohjelmointi