Какое расширение у файла с машинным кодом?

«Какое расширение у файла с машинным кодом?» — вопрос из категории Other, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

У файла с машинным кодом (нативным исполняемым файлом) нет единого стандартного расширения — оно зависит от операционной системы и формата файла.

Основные примеры:

  • Windows: .exe (исполняемый), .dll (динамическая библиотека), .sys (драйвер)
  • Linux/Unix: обычно без расширения, но может быть .bin или .so (shared object)
  • macOS: .app (папка-приложение), .dylib (динамическая библиотека)

Ключевое отличие: Машинный код — это бинарные инструкции для конкретного процессора, в отличие от исходного кода (.java, .py, .cpp) или байт-кода (.class в Java).