9Aug

Apa Artinya Software untuk Berjalan Secara native?

Ketika orang merujuk perangkat lunak, emulasi, dan kompatibilitas perangkat lunak asli, apa sebenarnya yang mereka maksud? Baca terus saat kita mempelajari konsep perangkat lunak asli.

Pertanyaan Hari Ini &Sesi jawaban datang kepada kami atas permintaan SuperUser - sebuah subdivisi dari Stack Exchange, pengelompokan berbasis komunitas dari Q & A situs web.

Pertanyaan

Pembaca superuser Throsby penasaran dengan apa artinya menjalankan perangkat lunak secara native. Dia menulis:

Saya telah bertanya-tanya apa artinya perangkat lunak untuk berjalan secara native. Apa sebenarnya perangkat lunak tersebut dan bagaimana perbedaannya dengan perangkat lunak yang tidak berjalan secara native? Bagaimana saya bisa tahu jika perangkat lunak tertentu akan berjalan normal di komputer saya? Apakah mungkin ada perangkat lunak yang ada di komputer saya yang berjalan secara native?

Baca terus untuk analogi yang bagus yang menjelaskan dengan tepat apa artinya menjadi asli pada sistem tertentu.

Jawaban

Kontributor SuperUser Deltik menawarkan analogi yang fantastis yang menyoroti apa artinya perangkat lunak menjadi native dan perangkat lunak sejenis yang mungkin ditemukan pada sistem tertentu:

Perangkat lunak asli untuk platform jika dirancang untuk berjalan diplatform itu

Platform biasanya mengacu pada sistem operasi, namun juga dapat diterapkan pada perangkat seperti Nintendo Game Boy.

Menggunakan Game Boy sebagai contoh, ia mendapatkan perangkat lunaknya dari kartrid. Kartrid ini berisi kode yang menjalankan secara native di Game Boy.

Emulators adalah lapisan yang memungkinkan perangkat lunak yang dirancang untuk satu platform untuk dijalankan di tempat lain. Misalnya, ada emulator yang bisa mengeksekusi gambar kartun Boy Boy dan memungkinkan Anda bermain game Game Boy di komputer atau bahkan ponsel Anda.

A kompatibilitas lapisan adalah jenis seperti emulator. Ketika komputer dan sistem operasi 64 bit menjadi mainstream, mereka harus kompatibel dengan teknologi 32-bit yang ada. Karena arsitektur 64-bit dan 32-bit sangat berbeda, lapisan kompatibilitas sering dibutuhkan untuk menjalankan perangkat lunak 32-bit pada mesin 64-bit. Untuk edisi 64-bit Microsoft Windows, Microsoft perlu menulis lapisan kompatibilitas sehingga program 32-bit masih bekerja pada sistem 64-bit baru. Inilah sebabnya mengapa beberapa program sering dipasang ke folder bernama Program Files( x86), di mana x86 berarti "32-bit".Lapisan Kompatibilitas

cenderung lebih intim dengan sistem aslinya daripada emulator. VirtualBox mengemulasi perangkat keras untuk sistem operasi *, dan sistem yang diemodulasi tidak memiliki interaksi langsung dengan sistem host. WoW64 adalah lapisan kompatibilitas karena memungkinkan program 32-bit berjalan di Windows 64-bit dengan cara yang lebih terintegrasi. WoW64 membantu membuat program kompatibel daripada meniru mereka di lingkungan yang terisolasi.

A translation library adalah komponen lapisan kompatibilitas. Setiap kali kode biner berjalan non-native, sebuah perpustakaan terjemahan membantu mengalihkan panggilan asing dan non-asli ke panggilan asli yang dapat dimengerti sistem. Program perakitan yang ditulis untuk TI-83 asli mungkin tidak kompatibel dengan kalkulator TI-83/84 Plus yang lebih baru karena beberapa panggilan yang masuk akal dalam arsitektur TI-83 mungkin tidak lagi berlaku di TI-83/84 +.Sebuah perpustakaan terjemahan( mungkin termasuk dalam cangkang seperti MirageOS) memastikan bahwa panggilan untuk TI-83 masuk ke tempat baru yang diperbarui di kalkulator TI-83/84 +.

Platform-kode independen ditulis dalam bahasa yang menafsirkan dengan sesuatu yang biasanya berjalan secara native. Sebagai contoh, PHP adalah bahasa pemrograman yang diinterpretasikan dan dijalankan oleh binari PHP yang diinstal, yang telah mengumpulkan secara native untuk sistem operasi Windows, Mac, dan Unix. Kode PHP yang ditulis oleh skrip web tidak bergantung pada platform, memungkinkan kode bekerja pada beberapa sistem operasi selama PHP diinstal untuk sistem operasi tersebut.

Punya sesuatu untuk ditambahkan ke penjelasan? Terdengar dalam komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange tech-savvy lainnya? Simak thread diskusi selengkapnya disini.