Шта то значи за софтвер да се покреће природно?
Када се људи позивају на покретање изворног софтвера, емулацију и компатибилност софтвера, на шта се тачно односе? Читајте даље док се бавимо концептом изворног софтвера.
Данашња сесија питања и одговора долази нам љубазно СуперУсер-а - подјела Стацк Екцханге-а, групирање веб-локација за питања и одговоре у заједници.
Питање
Читач СуперУсер-а Тхросби је знатижељан о томе шта значи покретање софтвера. Пише:
Питам се шта значи да софтвер ради природно. Шта је тачно такав софтвер и како се он разликује од софтвера који не ради природно? Како могу знати да ли ће одређени комад софтвера бити покренут на мом рачунару? Да ли постоји софтвер који је већ на мом рачунару који ради природно?
Читајте даље за одличну аналогију која објашњава тачно шта значи бити нативе на датом систему.
Одговор
Доприносник СуперУсер-а Делтик нуди фантастичну аналогију која наглашава шта значи да софтвер буде природан и какав други софтвер може да се нађе у датом систему:
Софтвер је изворно на платформи ако је дизајниран да ради на тој платформи.
Платформа се обично односи на оперативни систем, али се може примијенити и на уређаје као што је Нинтендо Гаме Бои.
Користећи, на пример, Гаме Бои, он добија софтвер из кертриџа. Ови кертриџи садрже код који се покреће нативели на Гаме Бои.
Емулаторс су слој који омогућава да софтвер дизајниран за једну платформу буде покренут на другој. На пример, постоје емулатори који могу да извршавају слике касета Гаме Бои и дозвољавају вам да играте Гаме Бои игре на рачунару или чак на мобилном телефону.
А слој компатибилности је нешто као емулатор. Када су 64-битни рачунари и оперативни системи постали маинстреам, требало је да буду компатибилни са постојећим 32-битним технологијама. Пошто су 64-битне и 32-битне архитектуре веома различите, слој компатибилности је често потребан за покретање 32-битног софтвера на 64-битним машинама. За 64-битна издања оперативног система Мицрософт Виндовс, Мицрософт је морао написати слој компатибилности тако да 32-битни програми и даље раде на новом 64-битном систему. Због тога се неки програми често инсталирају у мапу која се зове
Програмске датотеке (к86)
, гдек86
значи "32-битни".Слојеви компатибилности имају тенденцију да буду интимнији са изворним системом него емулатори. ВиртуалБокемулира хардвер за оперативне системе * и системи које емулира немају много директне интеракције са хост системом. ВоВ64 је а слој компатибилности по томе што омогућава 32-битним програмима да раде на 64-битном Виндовс-у на више интегрисан начин. ВоВ64 помаже у креирању програма компатибилан радије негоемулатинг у изолованом окружењу.
А транслатион либрари је компонента слојева компатибилности. Кад год се бинарни код покреће ненормално, преводилачка библиотека помаже у преусмеравању страних, не-изворних позива на природне позиве које систем може да разуме. Програми за монтажу написани за оригинални ТИ-83 можда нису компатибилни са новијим ТИ-83/84 Плус калкулаторима, јер неки позиви који имају смисла у ТИ-83 архитектури можда више не важе у ТИ-83/84 +. Преводилачка библиотека (вероватно укључена у шкољке као што је МирагеОС) обезбеђује да позиви за ТИ-83 иду на нова, ажурирана места у ТИ-83/84 + калкулаторима.
Код неовисан о платформи је написан на језику који јесте интерпретирати нешто што се обично изводи нативно. На пример, ПХП је програмски језик који се интерпретира и извршава помоћу инсталираног ПХП бинарног кода, који је већ компајлиран нативели за оперативне системе Виндовс, Мац и Уник. ПХП код који веб скриптари пишу независни су од платформе, што омогућава да код ради на више оперативних система све док је ПХП инсталиран за те оперативне системе.
Имате ли нешто да додате објашњењу? Звучи у коментарима. Желите ли прочитати више одговора од других технолошки паметних Стацк Екцханге корисника? Погледајте цео дискусију овде.