chanhi.dev

오픈소스 SW

2025.12.282분 읽기

오픈소스 SW?

소스 코드를 공개해 누구나 특별한 제한 없이 그 코드를 보고 사용할 수 있는 오픈 소스 라이선스를 만족하는 소프트웨어

오픈소스의 대표적인 예시로는 Linux가 있다. 1991년 그 유명한 리누스 토발즈(Linus Torvalds)가 리눅스 커널을 공개하면서 오픈소스 운동에 큰 영향을 주었다.

또 오픈소스하면 리처드 스톨먼의 GNU 프로젝트 얘기가 나오는데 리처드 스톨먼은 GNU(GUN's Not Unix: 유닉스와 호환되는 운영체제를 개발하는 프로젝트) 프로젝트를 통해 자유 소프트웨어 운동을 이끌었다.

그 외에도 Git, Docker, MySql 등 수많은 오픈소스가 공개되어 있다.

오픈소스 소프트웨어의 정의는 OSI(Open Source Initiative)에서 제공하는 10가지 기준이 있다.

더보기

  1. 자유로운 재배포 허용
  2. 소스코드 접근 가능
  3. 2차 저작물 허용
  4. 소스 코드의 무결성 유지 가능
  5. 차별 금지(개인 또는 그룹에 대한)
  6. 사용 분야에 대한 제한 금지
  7. 라이센스 배포
  8. 라이센스 적용상의 동일성 유지
  9. 다른 다이센스의 포괄적 수용
  10. 라이센스의 기술적 중립성 보장

오픈소스의 장점

더보기

  1. 무료로 사용 가능: 대다수의 오픈소스 소프트웨어는 무료로 제공되어 비용 절감
  2. 소스코드 공개로 인한 투명성: 소스코드가 공개되어 있어 보안상 취약점을 쉽게 확인하고 수정 가능
  3. 커뮤니티 활동으로 인한 지속적인 업데이트: 전 세계 개발자들이 소프트웨어 개선에 참여
  4. 다양한 플랫폼 지원: 여러 운영체제와 하드웨어 환경에서 구동 가능

오픈소스 라이센스

  • 소프트웨어의 소스코드를 자유롭게 사용, 수정, 배포할 수 있는 권한을 명시하는 법적 문서
  • 소프트웨어의 사용과 재배포를 허용하는 동시에 사용자와 개발자 간의 권리와 책임을 명확히 명시

더보기

GPL(General Public License)

  • GPL은 리처드 스톨먼이 주도한 자유 소프트웨어재단(FSF)에서 만든 라이센스로, 소프트웨어의 자유로운 사용과 배포를 보장
  • “Copyleft” 개념을 기반으로, 소프트웨어의 파생작 또한 동일한 라이센스를 적용해야 함을 의미
  • 소프트웨어를 배포할 때,소스코드도 함께 제공해야 하며,수정한 부분 역시 공개
  • 상업적으로 사용이 가능하지만,수정된 소프트웨어 역시 GPL 라이센스 하에 공개

Copyleft?: Copyright의 반대되는 개념으로, 저작권에 기반을 둔 사용 제한이 아닌 저작권을 기반으로한 정보의 공유를 의미함. 즉,수정 및 배포시 동일한 조건으로 공유해야 함

그 외에도 LGPL, MIT, BSD, 아파치 등 권리와 책임이 조금씩 다른 여러 라이센스들이 존재한다.