 For example, most software designed for Microsoft Windows XP does not run on Microsoft Windows 98, although the converse is not always true.Similarly, software designed using newer features of Linux Kernel v2.6 generally does not run or compile properly (or at all) on Linux distributions using Kernel v2.2 or v2.4.Software making extensive use of special hardware devices, like high-end display adapters, needs special API or newer device drivers.