Koti kehitys Mikä on rekisterinjako? - määritelmä techopediasta

Mikä on rekisterinjako? - määritelmä techopediasta

Sisällysluettelo:

Anonim

Määritelmä - mitä rekisterin allokointi tarkoittaa?

Rekisterinjako tarkoittaa käytännössä muuttujien osoittamista rekistereille sekä tietojen siirtoa rekistereihin ja niistä pois. Rekisterin allokointia voi tapahtua:

  • Peruslohkossa, joka tunnetaan nimellä paikallinen rekisterin allokointi
  • Koko toiminnon tai proseduurin, joka tunnetaan nimellä globaali rekisterinjako
  • Yli toimintorajat, jotka kulkevat kutsugraafin avulla, joka tunnetaan prosessienvälisenä rekisterin allokointina

Techopedia selittää Rekisterin allokoinnin

Kokoonpanon aikana kääntäjän on määritettävä tapa, jolla muuttujat allokoidaan pienelle, tietylle rekistereiden alueelle. Jotkut muuttujista eivät ehkä ole käytössä tai niiden sanotaan olevan "eläviä" samanaikaisesti. Tämä johtaa joidenkin rekistereiden osoittamiseen useille muuttujille. Siitä huolimatta, kahta samanaikaista reaaliaikaista muuttujaa ei voida osoittaa täsmälleen samaan rekisteriin vääristämättä arvoa.


Muuttujat, joita ei voida varata joillekin rekistereille, on tallennettava RAM-muistiin, ja ne on ladattava sisään ja ulos kullekin lukemiselle ja kirjoittamiselle, joka tunnetaan roiskeena. Rekisteriin pääsy on paljon nopeampaa kuin RAM: iin pääsy. Lisäksi se nopeuttaa käännetyn ohjelman suoritusaikaa; Siksi tehokkaiden kääntäjien tavoitteena on osoittaa rekistereille niin monta muuttujaa kuin mahdollista.


Yleensä suurin osa rekisterinjakajista osoittaa jokaisen muuttujan päämuistiin tai keskusyksikön (CPU) rekisteriin. Nopeus on tärkein etu käytettäessä rekisteriä. Tietokoneissa on rajallinen valikoima rekistereitä, mikä tarkoittaa, että kaikkia käytettävissä olevia muuttujia ei voida varata rekistereihin. Prosessia, jolla muuttuja siirretään rekisteristä muistiin, kutsutaan vuotoksi, kun taas muuttujan siirtäminen muistista rekisteriin tunnetaan täyttämisellä. Älykäs rekisterinjako on ratkaiseva askel kaikille kääntäjille.


Rekisterimerkintöjä on kahta tyyppiä:

  • Paikallisen rekisterin allokointi: Tämä on prosessi, jolla allokoidaan yksi peruslohko (tai hyperlohko tai superlohko) kerrallaan. Paikallinen rekisterin allokointi lisää nopeutta.
  • Globaali rekisterin allokointi: Jos rekisterin käyttö on heikkoa paikallista allokointia käyttämällä, on tärkeää käyttää globaalia rekisterin allokointia. Yksinkertaisessa globaalissa rekisterin allokoinnissa aktiivisimmat arvot allokoidaan jokaiselle sisäiselle silmukalle. Täysi globaali rekisterin allokointi käyttää menettelyä tunnistamaan reaaliaikaiset alueet ohjausvuokaaviossa, määrittämään reaaliaikaiset alueet ja myös jakamaan alueet tarvittaessa.
Mikä on rekisterinjako? - määritelmä techopediasta