File yang dapat dieksekusi di Mac OS X vs Windows

11

Saya telah melihat bahwa setiap file yang dapat dieksekusi di Windows memiliki ekstensi .exe. Tetapi Mac OS X tidak memiliki yang sama.

Windows mengeksekusi file .exe. Lalu jenis file apa yang dijalankan Mac OS X?

Apa perbedaan antara eksekusi kedua aplikasi sistem operasi?

Bahkan saya menemukan bahwa pengaturan windows memiliki ekstensi .exe yang sama tetapi pada pengaturan Mac memiliki ekstensi .dmg

Bisakah Anda berbagi pengetahuan Anda dengan saya tentang .dmg & executables di Mac vs Windows?

Sagar R. Kothari
sumber

Jawaban:

18

Ekstensi sebenarnya tidak mengubah jenis file sesuatu itu, meskipun mereka sering memberi petunjuk kepada sistem apa yang dilakukan dengan item tertentu.

DMG tidak dapat dieksekusi, mereka adalah gambar disk. Mereka adalah file yang bertindak sebagai disk, yang sering berisi file yang dapat dieksekusi dan file lainnya untuk aplikasi. Ketika Anda mengklik dua kali pada satu, sistem mount dan Anda kemudian memiliki akses ke file di dalamnya.

Baik Windows dan OS X menjalankan file biner yang dapat dieksekusi, meskipun mereka berada dalam format yang berbeda. Perbedaan besar dalam apa yang dilihat pengguna jika menggunakan GUI adalah pada Windows, Anda biasanya melihat file .exe yang dapat dieksekusi, yang berada di folder yang berisi file dan informasi lain yang digunakan program. Pada OS X, semua file lainnya, bersama dengan executable primer, terkandung dalam "bundel" (benar-benar folder) dengan ekstensi .app. Mengklik dua kali pada bundel .app akan menjalankan executable internal dan memuat aplikasi Anda.

Di luar GUI, dalam struktur file yang sebenarnya, sistem Mac dan Windows benar-benar sangat mirip; perbedaan-perbedaan ini sebagian besar merupakan pertanyaan tentang bagaimana sistem menyajikan berbagai hal kepada pengguna untuk manipulasi dalam GUI.

matahari
sumber
Mac juga mengeksekusi file .pkg (paket)
Joshkunz
2
File .pkg adalah kumpulan file terkompresi yang berisi data penginstal yang dapat dieksekusi dan lainnya, seperti sejenis .app terkompresi yang ditujukan untuk intallation.
phoebus
3
File .pkg sebenarnya merupakan dokumen teknis untuk Installer.app. Jika mereka benar-benar dijalankan sebagai program terpisah, itu tidak benar .pkgs.
Chealion
Benar, saya bisa lebih jelas tentang hal itu.
phoebus
@phoebus - Jadi agar jelas, .pkg adalah file, seperti dalam sesuatu yang dapat saya tawarkan untuk pengguna unduh dari situs web saya, dan bukan folder, seperti pada sesuatu yang saya tidak dapat menawarkan pengguna untuk mengunduh dari situs web saya?
ArtOfWarfare
4

Anda juga dapat mengeksekusi file apa pun yang izinnya diatur ke executable, mengingat file itu sebenarnya berisi program yang valid.

Fred
sumber
1
Format asli yang dapat dieksekusi pada mac os adalah mach-O BTW. en.wikipedia.org/wiki/Mach-O
Fred
4

.dmgfile adalah file gambar disk yang biasanya digunakan untuk menginstal aplikasi Mac. Setelah diinstal, aplikasi Mac biasanya memiliki ekstensi .app, tetapi ekstensi itu biasanya disembunyikan dari pengguna. Aplikasi Mac adalah paket yang ditampilkan kepada pengguna sebagai satu file. Ini membuatnya sangat nyaman untuk memindahkan aplikasi ke folder baru atau komputer baru.

Bob D
sumber
0

setiap file yang dapat dieksekusi di Windows memiliki ekstensi .exe

Ini tidak benar. Di DOS ada 2 ekstensi file yang dapat dieksekusi: *.COMdan *.EXE. Windows mewarisinya sehingga juga mendukung * .com dan * .exe . Perhatikan bahwa * .exe hanyalah "wadah" yang berisi berbagai format yang dapat dieksekusi

Jika Anda menjalankan perintah tanpa ekstensi, Windows akan menambahkan ekstensi dalam %pathext%variabel lingkungan dan mencari sampai menemukan file pertama dengan nama itu. Nilai default dari variabel adalah seperti ini

>echo %pathext%
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

Seperti yang Anda lihat ada jenis file executable lain yang akan dijalankan Windows (tanpa ekstensi), tetapi kebanyakan dari mereka adalah skrip dan bukan executable biner .

Namun demikian Windows tidak benar-benar menggunakan ekstensi file untuk menentukan format file. File apa pun yang dimulai denganMZ (yang merupakan tanda tangan untuk format MZ) akan diperlakukan sebagai file yang dapat dieksekusi .

Windows 10 juga memiliki kemampuan untuk menjalankan binari ELF Linux dengan memperkenalkan

File setup di Windows juga sering disediakan dalam file * .msi yang formatnya dibaca oleh Windows Installer , meskipun sebenarnya ini bukan file yang dapat dieksekusi

phuclv
sumber
1
File MSI dan JS dapat dieksekusi, tetapi tidak dapat dieksekusi. MSI adalah paket penginstal: ketika Anda mengklik dua kali, msiexec.exememulai dan membukanya, sama seperti Anda bisa menggunakan Paint untuk membuka JPEG - itu tidak membuat mereka dapat dieksekusi. Jadi dengan JS, WScript.exedigunakan untuk membukanya (periksa cabang HKCU di registri Anda). BAT dan CMD berada di antara keduanya, orang dapat berargumentasi jika mereka dapat dieksekusi - mereka secara alami didukung oleh Explorer, tetapi masih harus ditafsirkan.
gronostaj
dengan cara itu. File exe NET tidak "executable" juga karena mereka hanya dapat berjalan di bawah .NET framework, tidak secara langsung oleh CPU
phuclv
1
Itu tergantung bagaimana Anda mendefinisikan 'executability'. Saya percaya MSI tanpa keraguan tidak dapat dieksekusi, karena mereka hanya arsip - dioptimalkan untuk installer, tetapi tidak masalah dalam hal ini. Mereka tidak lebih dapat dieksekusi daripada ZIP. Naskah dalam bentuk apa pun ada di ujung 'kemampuan eksekusi', karena mereka membutuhkan penerjemah. Saya tidak tahu detail tentang bagaimana .EXE EXE dieksekusi, tapi saya akan mengatakan mereka adalah kasus yang sama dengan CLASS - mereka mengandung beberapa jenis kode mesin (yang membutuhkan terjemahan / interpretasi, tetapi masih).
gronostaj