Kutsukäytäntö

Kutsukäytäntö on joukko sääntöjä, joka määrittää miten aliohjelmille välitetään argumentteja ja miten arvoja palautetaan.
Kutsukäytäntö voi määrittää mitkä rekisterit ovat käytössä: esimerkiksi neljä ensimmäistä parametria voidaan sijoittaa rekistereihin ja loput sijoitetaan pinoon tietyssä järjestyksessä. Tiedot voidaan tasata niiden luonnolliseen kokoon tai suorituskykysyistä tämä voi olla suurempi.

Aliohjelmakutsut ovat ohjelmointikielen kääntäjän päätettävissä kun ne ovat vain ohjelman sisäisiä, mutta ohjelmakirjastojen kutsumiseen on tiedettävä sovittu tapa. Esimerkiksi Windowsissa on käytetty useita eri tapoja x86-suorittimien kanssa, mutta x86-64:ssä on käytössä vain yksi kutsukäytäntö. Linux käyttää System V -tyylistä käytäntöä.

Kutsukäytäntö on sarja tavallisesti suoritettavia käskyjä, jotka suoritetaan aliohjelman kutsun ja paluun yhteydessä. Kutsukäytäntöön vaikuttavat ohjelmointikielen semantiikka, rekisterien rakenne, suorittimen osoitusmoodit, käskykanta ja kohdealustan olemassa olevat käytännöt. Kutsukäytäntö liittyy läheisesti aliohjelman paikallisten muuttujien varaamiseen. Suorittimesta riippuen muuttujat on sijoitettava muistiin koon mukaan tasattuina (), esimerkiksi neljätavuinen kokonaisluku on oltava neljän tavun rajalla ja kahdeksantavuinen liukuluku kahdeksan tavun rajalla, jolloin väliin jää aukkoja.

 Katso myös 
 ABI

 Lähteet 

 Aiheesta muualla 
 Calling Convention (PDF) 
 Calling conventions (PDF) 
 Systems Programming (PDF) 
 Calling Conventions 






Luokka:Ohjelmointi