Sleutelverskil – Skakelaar vs laaier
'n Rekenaarprogram word gebruik om instruksies aan die rekenaar te gee. Dit word geskryf deur 'n spesifieke programmeertaal te gebruik. Programmeringstale soos C, Java is hoëvlak programmeertale en hulle is verstaanbaar deur mense, maar nie deur die rekenaar nie. Daarom word 'n hoëvlakprogram met behulp van 'n taalvertaler in masjientaal omgeskakel. 'n Program wat met 'n hoëvlaktaal geskryf is, is 'n bronkode. Na die omskakeling word die vertaalde kode die objekkode genoem. Die skakelaar en laaier is twee sagtewareprogramme wat vir programuitvoering gebruik word. Hierdie artikel bespreek die verskil tussen Linker en Loader. Linker is die sagteware wat die objekkode met bykomende lêers soos koplêers koppel en 'n uitvoerbare lêer met.exe-uitbreiding skep. Die laaier is die stelselsagteware wat die uitvoerbare lêer wat deur die skakelaar gegenereer word, na die hoofgeheue laai. Dit is die belangrikste verskil tussen Linker en Loader.
Wat is Linker?
'n Rekenaarprogram is 'n stel instruksies wat aan 'n rekenaar gegee word om 'n sekere taak uit te voer. 'n Rekenaarprogram kan met behulp van 'n programmeertaal geskryf word. Die meeste programmeertale is hoëvlak programmering. Hulle is maklik verstaanbaar en leesbaar deur die programmeerder. Daardie tale volg 'n sintaksis soortgelyk aan die Engelse taal. Enkele voorbeelde van hoëvlaktale is Java, C en Python. 'n Program wat met 'n hoëvlak-programmeertaal geskryf is, staan bekend as die bronkode, bronlêer of bronprogram. Die uitbreiding van die bronkode hang af van die taal waarmee dit ontwikkel is. As die bronkode in C++ geskryf is, dan is die lêeruitbreiding.cpp. As die bronkode in Python geskryf is, is die uitbreiding.py.
Selfs die bronkode is verstaanbaar deur die programmeerder; dit is nie verstaanbaar vir die rekenaar nie. Daarom moet die bronkode omgeskakel word in masjienverstaanbare formaat deur 'n taalvertaler te gebruik. Dit kan 'n samesteller of 'n tolk wees. Die vertaalde kode staan bekend as die objekkode. Die objekkode is in masjientaal. Dit bestaan uit nulle en een keer. Die rekenaar kan die objekkode direk verstaan. Dit het die uitbreiding.obj. As daar 'n bronkode as Test.c is, gaan dit deur die samesteller en omgeskakelde kode word Test.obj.
Linker is die sagteware wat die objekkode met bykomende lêers soos koplêers koppel en 'n uitvoerbare lêer met.exe-uitbreiding skep. Die program het dalk ingeboude funksies gebruik. Die funksies vir daardie ingeboude funksies is in die koplêers. Volgens die bogenoemde voorbeeld, die objekkode wat Toets is.obj word bygevoeg met die nodige koplêers met behulp van die Linker. Dit skep 'n nuwe lêer bekend genaamd Test.exe. Dit is 'n uitvoerbare lêer. Daarom is dit uitvoerbaar deur die rekenaar.
Wat is Loader?
'n Program wat uitgevoer moet word, moet in die geheue geplaas word. Die skakelaar koppel die objekkode en koplêers en voer die uitvoerbare lêer uit. Die laaier is die stelselsagteware wat die uitvoerbare lêer wat deur die skakelaar gegenereer word, na die hoofgeheue laai. Dit ken die geheuespasie toe aan die uitvoerbare module in hoofgeheue. Daarom is 'n laaier 'n deel van die bedryfstelsel wat verantwoordelik is vir die laai van programme en biblioteke.
Figuur 01: Volgorde waarin die bronkode na die geheue laai
Die laai van 'n program behels verskeie stappe. Dit behels die lees van die inhoud van die uitvoerbare lêer wat die programinstruksie bevat in die geheue en ook om die nodige voorbereidingstake uit te voer om die uitvoerbare lêer uit te voer. Sodra die laai voltooi is, begin die bedryfstelsel die program deur beheer na die gelaaide programkode oor te dra. Spesiale rekenaarstelsels soos ingebedde stelsels het oor die algemeen nie laaiers nie. Die kode word direk deur die ROM uitgevoer.
Wat is die verhouding tussen koppelaar en laaier?
Die uitset van die skakelaar gaan na die laaier
Wat is die verskil tussen skakelaar en laaier?
Linker vs Loader |
|
Linker is die sagteware wat die objekkode met bykomende lêers soos koplêers koppel en 'n uitvoerbare lêer met.exe-uitbreiding skep. | Die laaier is die stelselsagteware wat die uitvoerbare lêer wat deur die skakelaar gegenereer word na die hoofgeheue laai. |
Invoer | |
Die skakelaar neem die afvoer van die taalvertaler, wat die objekkode is. | Die laaier neem die afvoer vanaf die skakelaar, wat die uitvoerbare lêer is. |
Funksionaliteit | |
Die skakelaar koppel die objekkode en die koplêers en voer die uitvoerbare lêer uit. | Die laaier laai die uitvoerbare lêer wat van die skakelaar verkry is na die hoofgeheue. |
Opsomming – Linker vs Loader
Linker en Loader is twee sagtewarekomponente wat verband hou met programuitvoering. Hierdie artikel het die verskil tussen die Linker en die Loader bespreek. Linker is die sagteware wat die objekkode met bykomende lêers soos koplêers koppel en 'n uitvoerbare lêer met.exe-uitbreiding skep. Die laaier is die stelselsagteware wat die uitvoerbare lêer wat deur die skakelaar gegenereer word, na die hoofgeheue laai. Dit is die verskil tussen Linker en Loader.