Anda bisa menggunakan "bahasa manusia" sebagai analogi.
Program Windows berbicara dengan OS Windows menggunakan Windows API, API itu seperti bahasa.
Program Linux berbicara dengan OS Linux menggunakan bahasa lain, API Linux. Linux tidak "berbicara" Windows API, Windows tidak "berbicara" Linux API.
Ada beberapa cara untuk membuat Linux memahami API Windows, seperti menginstal Wine sebagai penerjemah.
Untuk sedikit meningkatkan analogi "bahasa manusia":
Setiap kali suatu program perlu menampilkan sesuatu di layar (jendela, teks, gambar, menu, tombol...), membaca file dari disk, menghubungkan ke jaringan, mengeluarkan suara, melakukan sesuatu saat pengguna mengklik mouse atau ketika pengguna mengetik sesuatu, setiap kali sebuah program perlu melakukan itu, ia harus meminta sistem operasi untuk melakukannya. Faktanya, berbicara dengan sistem operasi adalah hal yang paling sering dilakukan oleh program.
Baik sistem operasi Windows maupun sistem operasi Linux dapat melakukan semua itu dengan mudah, tetapi karena dibuat oleh orang yang berbeda, keduanya melakukannya dengan cara yang berbeda dan juga program perlu meminta layanan tersebut dengan cara yang berbeda. Bahasa yang digunakan Linux dan Windows sangat berbeda.