Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как программа адаптируется к той или иной ОС?

ТехнологииПрограммированиеКомпьютеры
Григорий Родбел
  · 395
Ведущий инженер, специалист по защите информации  · 16 февр 2016

Нельзя сказать, что кроссплатформенная программа адаптируется к той или иной ОС.

Грубо говоря, на этапе написания ПО программист задает поведение в зависимости от ОС, в которой исполняется программа.

Если это ОС одного семейства (например, Windows), то в коде могут указываться проверки на версию ОС, и в зависимости от этого включаются\отключаются те или иные фичи.

Если ПО пишется под разные ОС (например, Windows и GNU/Linux), то код программ может значительно отличаться (зависит от того, используются ли какие-то особенности работы ОС для работы программы, задействованы какие-либо библиотеки). В таком случае код программы также комплилируется различными версиями компилятора, генерирующими исполняемый код для своей платформы.

Есть ещё один тип кроссплатформенного ПО, выполняемый на виртуальной машине (например, написанный на языке Java). В таком случае, для каждой поддерживаемой ОС уже есть своя среда исполнения, представляющая собой виртуальную машину. Программа пишется для исполнения в этой виртуальной машине (одинаковой для всех платформ), а уже сама среда исполнения этих виртуальных машин разрабатывается отдельно под каждую поддерживаемую ОС.