A family of computer models is said to be compatible if certain software that runs on one of the models can also be run on all other models of the family. The computer models may differ in performance, reliability or some other characteristic. These differences may affect the outcome of the running of the software.
Software compatibility can refer to the compatibility that a particular software has running on a particular CPU architecture such as Intel or PowerPC. Software compatibility can also refer to ability for the software to run on a particular operating system. Very rarely is a compiled software compatible with multiple different CPU architectures. Normally, an application is compiled for different CPU architectures and operating systems to allow it to be compatible with the different system. Interpreted software, on the other hand, can normally run on many different CPU architectures and operating systems if the interpreter is available for the architecture or operating system. Software incompatibility occurs many times for new software released for a newer version of an operating system which is incompatible with the older version of the operating system because it may miss some of the features and functionality that the software depends on.
Hardware compatibility can refer to the compatibility of computer hardware components with a particular CPU architecture, bus, motherboard or operating system. Hardware that is compatible may not always run at its highest stated performance, but it can nevertheless work with legacy components. An example is RAM chips, some of which can run at a lower (or sometimes higher) clock rate than rated. Hardware that was designed for one operating system may not work for another, if device or kernel drivers are unavailable. As an example, much of the hardware for macOS is proprietary hardware with drivers unavailable for use in operating systems such as Linux.
Free and open-source software
Sometimes, FOSS is not compatible with proprietary hardware or specific software. This is often due to manufacturers obstructing FOSS such as by not disclosing the interfaces or other specifications needed for members of the FOSS movement to write drivers for their hardware - for instance as they wish customers to run only their own proprietary software or as they might benefit from partnerships.
- Binary-code compatibility
- Compatibility layer
- Forward compatibility
- Backward compatibility
- List of computer standards
- Plug compatible
- Hardware security
- Fogel, Karl (2005). Producing Open Source Software: How to Run a Successful Free Software Project. O'Reilly Media, Inc. ISBN 9780596552992. Retrieved 4 July 2017.
- Sery, Paul G. (2007). Ubuntu Linux For Dummies. John Wiley & Sons. ISBN 9780470125052. Retrieved 4 July 2017.
- "Linux Today - KERNEL-DEV: UDI and Free Software by Richard Stallman". www.linuxtoday.com. Archived from the original on 25 August 2017. Retrieved 4 July 2017.
- Vaughan-Nichols, Steven J. "Microsoft tries to block Linux off Windows 8 PCs | ZDNet". ZDNet. Archived from the original on 14 July 2017. Retrieved 12 July 2017.
- Kingsley-Hughes, Adrian. "Lenovo reportedly blocking Linux on Windows 10 Signature Edition PCs (updated) | ZDNet". ZDNet. Archived from the original on 14 July 2017. Retrieved 12 July 2017.
- "Linux Today - How Microsoft Changes the Prices at OEMs to Block GNU/Linux Sales". www.linuxtoday.com. Archived from the original on 25 August 2017. Retrieved 12 July 2017.
- "Microsoft 'killed Dell Linux' – States". The Register. Archived from the original on 17 July 2017. Retrieved 12 July 2017.