Software distributed under terms that allow users to freely run, study, change and distribute it and modified versions.