오픈소스소프트웨어 정리 #01 OSS 개요

yuju9·2022년 10월 4일
0

오픈소스소프트웨어

오픈소스소프트웨어?(oss)

  • 공개소프트웨어
  • 소스코드가 공개되어 누구나 사용, 수정, 재배포할 수 있는 소포트웨어
  • 독점소프트웨어, 사유 소프트웨어 또는 클로즈드 소스 소프트웨어와 반대
  • ex. 리눅스, git, 톰캣 등

'소프트웨어'개념의 변천사

1. 컴퓨터 초창기~70년대까지 소프트웨어는 하드웨어 구입시 무료로 제공해주는 개념

  • 70~80년대 소프트웨어의 독립적인 제품화가 늘면서 저작권 강화
  • 리처드 스톨만의 자유소프트웨어 운동 시작
    • 'Copyleft' 개념 도입
      : 저작물이 자유롭게 공유되어야 한다는 것을 강조
      ↔ Copyright: 저작권에 대한 배타적인 권한 강조
    • GNU 선언문 발표

2. OSS 개념의 등장

  • Netscape사가 웹브라우저 소스코드 공개
  • Open Source Initiative의 설립과 ‘Open Source
    Software’ 용어를 도입
  • OSS의 장단점
    • 장점
      1. 비용 X
      2. 소스 코드 수정 O
      3. 보안 취약점 발견 쉬움
      4. 누구나 버그 수정 O
      5. 특정 업체 의존 X
    • 단점
      1. 고객지원 거의 X
      2. 비숙련자 사용 어려움
  • OSS 활용 방식
    • OSS 사용
    • OSS 기여 (ex. 기능 추가, 소스코드 수정 등)
    • 신규 OSS 개발
  • OSS 개발 과정
    처음에는 소수의 프로젝트 리더와 신뢰받는 개발자로부터 시작해서 전세계의 사용자가 개발자로 프로젝트에 기여

오픈소스소프트웨어 라이선스(oss License)

SW 관련 지식재산권

저작권

  • 창작물에 대하여 창작자가 취득하는 권리로서 창작의 결과물을 보호하며, 창작과 동시에 권리가 발생
  • 등록절차 필요 X

특허권

  • 발명에 관하여 발생하는 독점적/배타적 지배권
  • 특허 등록 필요

상표권

  • 상표권자가 지정상품에 관하여 그 등록상표를 사용할 독점적인 권리
  • 상표 등록 필요

SW 라이선스

  • SW는 그것을 개발한 사람(관리자)만이 사용할 수 있지만, 권리자가 다른 사람에게
    일정한 조건으로 특정 행위를 할 수 있는 권한을 부여할 수 있다. 이와 같은 권한을
    라이선스(license, 사용권 또는 사용허가) 라고 함

OSS 라이선스

  • 오픈소스 SW 개발자와 이용자간에 이용 방법 및 조건의 범위를 명시한 계약
  • 라이선시(라이선스를 받는 자)는 라이선서(라이선스를 부여하는 자)가 규정한 라이선스를 지켜야 함
  • OSS 라이선스 규정을 제대로 지키지 않으면 라이선서로부터 소송을 당할 수 있음

공통적 준수사항

  • 저작권 관련 문구(프로그램의 이름과 개발자, 버전, 연락처 등) 유지
  • 제품명 중복 방지(OSS와 동일한 이름을 제품명이나 서비스명으로 사용하면 안됨)
  • 서로 다른 라이선스로 배포된 오픈소스SW를 결합하는 경우, 반드시 두 개의 라이선스가 서로 호환되는지 확인

선택적 준수사항

  • SW를 이용할 때 해당 오픈소스 SW가 이용되었음을 명시. 이용자 매뉴얼이나 기타 매뉴얼을 대체하는 매체가 있다면 그곳에 기술
  • 변경된 부분의 소스코드를 공개
  • 특허 기술을 OSS로 구현할 때는 반드시 특허권자의 허락을 받아야함

GNU General Public License (GPL)

  • 소스코드 공개에 대한 해석이 까다롭고 강력한 제한을 가짐
  • GPL SW 에 의해 파생된 SW 는 그것의 전체 소스코드 또한 공개해야 함

GNU LGPL(Lesser General Public License)

  • LGPL OSS를 정적(static) 또는 동적(dynamic) 라이브러리로 사용한 프로그램을 개발하여 배포할 경우에는 프로그램의 소스코드를 공개하지 않아도 됨
  • GPL보다 덜 까다로움

BSD (Berkeley Software Distribution) License

  • 매우 자유로운 라이선스
  • 아래사항을 준수하면 변경 또는 배포에 문제가 없음
    1. 소스코드에 포함된 저작권 관련 문구들의 보존해야 한다
    2. BSD 라이선스 SW 의 사용으로 인해 발생하는 위험 또는 손해를 저작자에게 물을 수 없다
  • ex. Nginx 웹서버

MIT License

  • (MIT)에서 학생들을 돕기 위해 라이선스로 개발
  • 저작권 관련 명시만 하면 되서 가장 느슨한 라이선스 중 하나
  • BSD를 기초로 작성된 BSD계열 라이선스
  • ex. Node.js, jQuery, Ruby on Rails, X11

0개의 댓글