Ko tas nozīmē programmatūras darbībai native?
Kad cilvēki atsaucas uz dzimtās programmatūras, emulācijas un programmatūras saderību, kas tieši tie attiecas? Lasiet, kā mēs ienācam vietējās programmatūras koncepcijā.
Šodienas jautājumu un atbilžu sesija mums ir pieklājīga no SuperUser-Stack Exchange apakšnodaļas, kas ir kopienas orientēta Q & A tīmekļa vietņu grupa.
Jautājums
SuperUser lasītājs Throsby ir ziņkārīgs par to, ko nozīmē palaist programmatūru. Viņš raksta:
Es esmu domājis par to, ko nozīmē, ka programmatūra sāk darboties. Kas tieši ir šāda programmatūra un kā tas atšķiras no programmatūras, kas nedarbojas dabiski? Kā es varu pateikt, vai konkrētais programmatūras gabals darbosies manā datorā? Vai datorā jau ir programmatūra, kas darbojas dabiski?
Lasiet tālāk, lai iegūtu teicamu analoģiju, paskaidrojot tieši to, ko nozīmē būt dzimtai konkrētā sistēmā.
Atbilde
SuperUser ieguldītājs Deltik piedāvā fantastisku analoģiju, kas izceļ to, ko nozīmē, ka programmatūra ir dzimtā, un kāda cita programmatūra varētu atrasties konkrētā sistēmā:
Programmatūra ir vietēja platformai, ja tā ir paredzēta darbībai šajā platformā.
Platforma parasti attiecas uz operētājsistēmu, bet to var izmantot arī tādām ierīcēm kā Nintendo Game Boy.
Izmantojot Game Boy kā piemēru, tā saņem programmatūru no kasetnēm. Šīs kasetnes satur kodu, kas darbojas dabiski uz Game Boy.
Emulatori ir slānis, kas ļauj programmatūrai, kas paredzēta vienai platformai, darboties citā. Piemēram, ir emulatori, kas var izpildīt Game Boy kārtridžu attēlus un ļaut jums spēlēt Game Boy spēles savā datorā vai pat savā mobilajā tālrunī..
A saderības slānis ir sava veida kā emulators. Kad 64 bitu datori un operētājsistēmas kļuva par galvenajām, tām bija jābūt saderīgām ar esošajām 32 bitu tehnoloģijām. Tā kā 64 bitu un 32 bitu arhitektūra ir ļoti atšķirīga, bieži vien ir nepieciešams saderības slānis, lai palaistu 32 bitu programmatūru 64 bitu iekārtās. Microsoft Windows 64 bitu izdevumiem Microsoft vajadzēja rakstīt saderības slāni, lai 32 bitu programmas joprojām darbotos ar jauno 64 bitu sistēmu. Šī iemesla dēļ dažas programmas bieži tiek instalētas mapē, ko sauc
Programmu faili (x86)
, kurx86
nozīmē “32 bitu”.Savietojamības slāņi mēdz būt intīmāki ar vietējo sistēmu nekā emulatori. VirtualBoxemulē aparatūra operētājsistēmām *, un sistēmām, kuras tā emulē, nav tiešas tiešas mijiedarbības ar uzņēmēju sistēmu. WoW64 ir a saderības slānis jo tas ļauj 32 bitu programmām darboties 64 bitu Windows integrētā veidā. WoW64 palīdz veidot programmas saderīgs nevisemulēt tos izolētā vidē.
A tulkošanas bibliotēka ir saderības slāņu sastāvdaļa. Ikreiz, kad binārs kods nedarbojas, tulkošanas bibliotēka palīdz novirzīt ārzemju, native vietējos zvanus uz vietējiem zvaniem, ko sistēma var saprast. Oriģinālās TI-83 rakstītās montāžas programmas var nebūt saderīgas ar jaunākiem TI-83/84 Plus kalkulatoriem, jo daži TI-83 arhitektūrā saprotami zvani vairs nav derīgi TI-83/84 +. Tulkošanas bibliotēka (kas, iespējams, iekļauta čaulās, piemēram, MirageOS) nodrošina, ka TI-83 zvani dodas uz jaunajām, atjauninātajām vietām TI-83/84 + kalkulatoros.
Platformas neatkarīgs kods ir rakstīts valodā, kas ir interpretēt ar kaut ko, kas parasti notiek dabiski. Piemēram, PHP ir programmēšanas valoda, ko interpretē un izpilda jau instalētais PHP binārs dabiski operētājsistēmām Windows, Mac un Unix. PHP kods, ko raksta tīmekļa scenāriji, ir neatkarīgs no platformas, ļaujot kodam strādāt ar vairākām operētājsistēmām, kamēr PHP ir instalēta šīm operētājsistēmām..
Vai kaut kas jāpievieno paskaidrojumam? Skaņas izslēgšana komentāros. Vai vēlaties lasīt vairāk atbildes no citiem tehnoloģiju gudriem Stack Exchange lietotājiem? Apskatiet pilnu diskusiju pavedienu šeit.