독점 소프트웨어 (Proprietary Software)
- 소유자가 수정 및 배포 권리를 독점 (Non-free software)
- binary code를 사용하기 위해 비용 지불해야 함
- 사용 권한만 구매하는 것으로 수정이나 재배포 금지됨
자유 소프트웨어 (Free Software)
- 독점 소프트웨어에 반대 개념
- 수정, 배포가 자유로움
- GNU프로젝트: Richard Stallman에 의해 시작된 자유 소프트웨어 시스템 프로젝트
- 사용자에게 보장해야 할 4가지 규칙
- F0: 원하는 목적으로 프로그램 실행할 수 있는 자유
- F1: 프로그램 소스 코드를 파악하고 변경할 수 있는 자유
- F2: 정확한 복사본을 배포할 수 있는 자유
- F3: 복사본을 만들고 원하는 대로 수정된 버전을 배포할 수 있는 자유
GNU / Linux
- 자유 소프트웨어 협업 프로젝트. 초기버전의 OS커널 부재
- Linus Torvalds에 의해 linux kernel이 release되었고 이로써 GNU 초기버전 완성
Copyleft 라이선스
- 자유 소프트웨어의 조건에 공유 의무를 추가
- 모든 사용자는 재배포 시 자신이 받은 것과 동일한 자유를 재배포하는 소프트웨어의 사용자들에게 부여 해야한다.
General Public License (GPL)
- 리차드 스톨만에 의해 제안된 최초의 copyleft라이선스
- GPL 라이선스를 따르는 소프트웨어의 요건
- 사용자에게 자유 소프트웨어로서 조건을 만족하는 권리 부여
- GPL에서 파생되는 소프트웨어를 배포할 때 반드시 동일한 GPL라이선스에 따라 배포
- 배포 목적이 아닌 경우 수정된 소스코드 보유 가능
- 동적 링크 방식으로 연결되는 소프트웨어도 모두 GPL 라이선스로 재배포 되어야 함
Lesser General Public License (LGPL)