Семейство моделей компьютеров считается совместимым , если определенное программное обеспечение , работающее на одной из моделей, может также работать на всех других моделях семейства. Модели компьютеров могут отличаться по производительности , надежности или некоторым другим характеристикам. Эти различия могут повлиять на результат работы программного обеспечения.
Совместимость программного обеспечения может относиться к совместимости, которую имеет определенное программное обеспечение, работающее на определенной архитектуре ЦП, такой как Intel или PowerPC . [1] Совместимость программного обеспечения может также относиться к способности программного обеспечения работать на определенной операционной системе . Очень редко скомпилированное программное обеспечение совместимо с несколькими различными архитектурами ЦП. Обычно приложение компилируется для различных архитектур ЦП и операционных систем, чтобы обеспечить его совместимость с другой системой. Интерпретируемое программное обеспечение , с другой стороны, может нормально работать на многих различных архитектурах ЦП и операционных системах, если интерпретатор доступен для архитектуры или операционной системы. Несовместимость программного обеспечения часто возникает для нового программного обеспечения, выпущенного для более новой версии операционной системы, которая несовместима со старой версией операционной системы, поскольку в нем могут отсутствовать некоторые функции и возможности, от которых зависит программное обеспечение.
Совместимость оборудования может относиться к совместимости компонентов компьютерного оборудования с определенной архитектурой ЦП , шиной, материнской платой или операционной системой . [1] Совместимое оборудование не всегда может работать с максимальной заявленной производительностью, но оно, тем не менее, может работать с устаревшими компонентами . Примером являются микросхемы ОЗУ , некоторые из которых могут работать на более низкой (или иногда более высокой) тактовой частоте, чем номинальная. [2] Оборудование, разработанное для одной операционной системы, может не работать для другой, если драйверы устройства или ядра недоступны. Например, Android не может работать на телефоне с iOS. [3]
Иногда FOSS несовместим с фирменным оборудованием или определенным программным обеспечением. Это часто происходит из-за того, что производители препятствуют FOSS, например, не раскрывая интерфейсы или другие спецификации, необходимые членам движения FOSS для написания драйверов для своего оборудования — например, поскольку они хотят, чтобы клиенты запускали только их фирменное программное обеспечение или поскольку они могут получить выгоду от партнерства. [4] [5] [6] [7] [8] [9] [10]