9Aug

Co znamená software spuštěn nativně?

click fraud protection

Když se lidé odvolávají na spuštění nativního softwaru, emulace a softwarové kompatibility, na co přesně odkazují?Přečtěte si, jak se ponoříme do pojmu nativní software.

dnešní otázka &Odpovědí na schůzku přichází nám zdvořilost z SuperUser - dílčí rozdělení Stack Exchange, komunitní skupiny Q & A webových stránek.

Otázka

SuperUser čtečka Throsby je zvědavá, co to znamená spustit software nativně.Píše:

Zajímalo mě, co to znamená, aby software běžel nativně.Co je přesně takový software a jak se liší od softwaru, který není nativní?Jak mohu zjistit, zda daný software běží na počítači nativně?Je pravděpodobné, že v počítači již běží nativní software?

Přečtěte si o vynikající analogii, která vysvětluje přesně to, co znamená být přirozené v daném systému.

Asistent odpovědi

SuperUser Deltik nabízí fantastickou analogii, která zdůrazňuje, co to znamená pro software, který má být přirozený a jaký druh jiného softwaru, který by mohl najít v daném systému:

instagram viewer

Software je nativní na platformě, pokud byl navržen tak, aby fungovalplatformě.

Platforma obvykle odkazuje na operační systém, ale může být použita také pro zařízení, jako je například Nintendo Game Boy.

Jako příklad používá Game Boy svůj software z kazet. Tyto kazety obsahují kód, který běží nativní na Game Boy.

Emulátory jsou vrstvy, které umožňují software navržený tak, aby jedna platforma mohla být provozována na jiné platformě.Existují například emulátory, které mohou provádět obrázky herních kazet Game Boy a umožňují vám hrát hry Game Boy v počítači nebo dokonce i v mobilním telefonu.

A vrstva kompatibility je něco jako emulátor. Když se 64-bitové počítače a operační systémy staly hlavním proudem, musely být kompatibilní s existujícími 32bitovými technologiemi. Vzhledem k tomu, že 64bitové a 32bitové architektury jsou velmi odlišné, je často potřeba kompatibilní vrstva pro spuštění 32bitového softwaru na 64bitových počítačích. U 64bitových vydání systému Microsoft Windows potřebovala společnost Microsoft zapsat vrstvu kompatibility, aby 32bitové programy stále fungovaly na novém 64bitovém systému. To je důvod, proč jsou některé programy často instalovány do složky nazvané Program Files( x86), kde x86 znamená "32bitové".

Vrstvy kompatibility jsou s nativním systémem intimnější než emulátory. VirtualBox emuluje hardware pro operační systémy * a systémy, které emuluje, nemají příliš velkou přímou interakci s hostitelským systémem. WoW64 je kompatibilní vrstva v tom, že umožňuje 32bitové programy spouštět 64bitové Windows integrovanějším způsobem. WoW64 pomáhá vytvářet programy kompatibilní spíše než emulovat je v izolovaném prostředí.Knihovna překladů

A je součástí kompatibilních vrstev. Kdykoli binární kód běží nenatímo, překladatelská knihovna pomáhá přesměrovat zahraniční volání, která není nativní, na přirozená volání, která systém pochopí.Montážní programy napsané pro původní TI-83 nemusí být kompatibilní s novějšími kalkulačky TI-83/84 Plus, protože v TI-83/84 + již nejsou platné některé volání, které mají smysl v architektuře TI-83.Překladatelská knihovna( pravděpodobně obsažená ve skořepinách jako MirageOS) zajišťuje, že volání na TI-83 přejde na nová, aktualizovaná místa v kalkulačích TI-83/84 +.

Kód nezávislý na platformě je napsán v jazyce, který interpretuje pomocí něčeho, co obvykle běží nativně.Například PHP je programovací jazyk, který je interpretován a spouštěn nainstalovaným binárním programem PHP, který byl již nativní kompilován pro operační systémy Windows, Mac a Unix. PHP kód, který napsali weboví scriptoři, je nezávislý na platformě, což umožňuje, aby kód pracoval na více operačních systémech, pokud je pro tyto operační systémy nainstalován PHP.

Musíte něco přidat k vysvětlení?Vypadněte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.