Mikä on Native Code?

Alkuperäinen koodi on tietokoneohjelmointikoodin muoto, joka on määritetty toimimaan tietyn prosessorin avulla. Koodin tarkka rakenne on asetettu vastaamaan prosessorin antamiin ohjeisiin. Kaikentyyppiset ohjelmistot toimivat natiivikoodilla, ja ne on kirjoitettu toimimaan parhaalla mahdollisella tehokkuudella valitulla prosessorityypillä tai prosessoreilla, jotka on valmistettu vastaamaan määritetyn prosessorin kokoonpanoa.

Koska natiivikoodi on kirjoitettu siten, että se mahdollistaa kaikki toiminnot, kun sitä käytetään järjestelmässä, joka käyttää tiettyjä käsittelykomponentteja, ohjelmiston suorittaminen järjestelmässä, jossa ei ole vaadittua prosessoria, johtaa rajoitettuun pääsyyn paketin toimintoihin. Joissakin tapauksissa ohjelmisto ei ehkä toimi ollenkaan.

Yksi tapa käyttää ohjelmistoa yhteensopimattoman natiivikoodin avulla on käyttää välittäjäohjelmistopakettia, jota kutsutaan emulaattoriksi, joka olennaisesti muuntaa prosessorin signaalit koodin luettavaksi dataksi. Edistyneimmilläkin emulointikoodiohjelmistopaketeilla saavutettu vaste ja tehokkuus ovat kuitenkin yleensä pienempiä kuin ohjelman suorittaminen oikealla prosessorilla varustetussa järjestelmässä. Usein paras vaihtoehto on kirjoittaa koodi uudelleen mukautuakseen parhaillaan käytössä olevaan prosessoriin.

On tärkeää huomata, että natiivikoodi eroaa tavutunnuksesta. Bytecode on koottu toimimaan virtuaalikoneessa, joka pystyy muuntamaan tavukoodin yleiset komponentit tarkemmaksi natiivikoodiksi, joka toimii käytössä olevan prosessorin kanssa. Vaikka tavukoodi voidaan muuntaa, toimintoa ei voida suorittaa päinvastaisessa järjestyksessä ja käyttää tätä lähestymistapaa parantaakseen yhteensopivuutta vieraan prosessorin kanssa.

Alkuperäinen koodi löytyy kaikentyyppisistä ohjelmointiympäristöistä. Ajan myötä sen esiintyvyys, että se ei toimi hyvin eri prosessorien kanssa, on alkanut vähentyä. Tämä johtuu yleensä siitä, että eri prosessorit on yhä enemmän konfiguroitu toimimaan samantyyppisten protokollien ja logiikkajaksojen kanssa.