Richard Stallman fundó el movimiento de software libre en 1983 con el objetivo de desarrollar un sistema operativo libre. Identificó cuatro libertades esenciales del software libre: la libertad de ejecutar el programa, estudiar y modificar el código fuente, distribuir copias del programa, y distribuir versiones modificadas. Estas libertades permiten a los usuarios controlar su software y compartirlo con otros, en contraposición al software privativo que restringe estas libertades.