Разница между кодами завершения процесса в разных операционных системах заключается в их назначении и интерпретации:
- В Linux и других Unix-подобных операционных системах программа передаёт 0 при успешном исполнении и 1 или большее число при неудачном исполнении. 8 Например, код 0 означает, что команда выполнена без ошибок, а код 1 — что произошла общая ошибка. 15
- В операционной системе Windows если функция завершается успешно, величина возвращаемого значения — не ноль, а если с ошибкой — ноль. 2 Например, код 0 означает успешное завершение операции, а 1 — неправильную функцию. 2
Кроме того, в Windows приложение может использовать любые коды выхода, которые оно хочет, и нет гарантированного кода выхода для случаев, когда процесс завершается, например, с помощью диспетчера задач. 10
Таким образом, в разных операционных системах коды завершения могут иметь свои особенности и отличия.