Open Source Software   오픈 소스 SW

(2023-08-06)

오픈 소스, 오픈 소스 소프트웨어, 자유 소프트웨어, 오픈 소스 라이선스, GPL, GNU


1. 자유 소프트웨어 (Free Software)소프트웨어를, 전유적(혼자 독차지하는) 권리의 대상으로 보지 않고,
     - 인류의 지적인 축적 작업으로 공유 자산으로 봄 (공개, 나눔, 참여)

  ㅇ 자유 소프트웨어의 개념 정립 및 재단 설립
     - 미국 MIT 연구원 리처드 스톨만(Richard Stallman)이 그 개념을 정립하고,
     - 1984년 자유 소프트웨어 재단(FSF,Free Software Foundation)을 설립

  ㅇ 자유 소프트웨어의 4대 자유
     - 실행의 자유  :  원할때 어떤 목적으로도 실행 가능
     - 연구와 수정의 자유  :  프로그램 작동 방식의 학습 및 수정 가능
     - 재배포의 자유  :  다른 이를 도울 수 있도록 재 배포 가능
     - 수정 프로그램 배포의 자유  :  자신의 수정본을 배포함으로써, 전체 커뮤니티에 이득 기여


2. 오픈 소스 소프트웨어 (Open Source Sofrware)

  ㅇ 1998년 오픈 소스 이니셔티브(Open Source Initiative)의 발족하면서 제기된 개념
     - 누구나 자유롭게 사용, 수정 및 배포할 수 있도록, 소스 코드를 공개한 소프트웨어 
     - 즉, 자유롭게 사용,복제,배포,수정 가능

  ㅇ 오픈 소스 라이선스 (Open Source License)
     - 무료 공유의 지속적 이용 조건 및 내용을 철학적,법적으로 정제/집약시켜 놓은 것
        . 개발자가 저작권을 완전 포기한 것이 아니고,
        . 오픈소스 라이선스를 통해,  
        . 오히려 누구나 사용할 수 있는 권리를 허용/장려하는 것

  ㅇ 오픈 소스 라이선스의 요건 정의
     - 자유 재배포
     - 소스 코드의 배포
     - 2차적 저작물의 허용
     - 저작자의 소스 코드 통합
     - 개인이나 단체에 대한 차별 금지
     - 사용 분야 제한 금지
     - 라이선스의 배포
     - 특정 소프트웨어에 한정한 라이선스 금지
     - 다른 소프트웨어에 대한 제한 금지라이선스의 기술적 중립성

  ※ [참고문헌] 오픈 소스 소프트웨어 라이선스 (박종백,커뮤니케이션북스,2016년)


3. 자유 소프트웨어, 오픈 소스 소프트웨어 비교

  ㅇ (비교)
     - 자유 소프트웨어는, 사용 자유를 강조한 반면에,
     - 오픈 소스 소프트웨어는, 그외에도 기술적 중립성,차별 금지 등 산업적 활용도 강조

  ㅇ (단체)
     - 자유 소프트웨어 재단 (Free Software Foundation, 1984년)
        . 오픈소스 소프트웨어 라이센스 작성 등
     - 오픈 소스 이니셔티브 (Open Source Initiative, 1998년)
        . 오픈 소스 소프트웨어의 사용 장려
        . 시장에서 사용중인 오픈 소스 라이선스의 인증4. 주요 오픈 소스 S/W 종류 Linux 커널, GNU S/W, PHP, 아파치 웹서버5. 주요 오픈소스 라이센스

  ㅇ GNU General Public License (GPL)     ☞ GNU GPL 라이센스
     - 통상, 모든 소스 코드 공개, 설치 문서 공개, 무료 사용 가능 등 
        . 단, 원래 코드 수정 후 재이용할 때, 피드백(공개)할 의무 있음
     - 형태 및 버전에 따라 다름 
        . GPLv1 (1989년1월)
        . GPLv2 (1991년6월)
        . GPLv3 (2007년6월)
     - 例) 리눅스 커널 등 관련 S/W 대부분이 GPL을 따름

  ㅇ MIT 라이센스
     - 모든 소스 코드 공개, 사용에 대한 제약 없음

  ㅇ Apache 라이센스BSD 라이센스
     - GPL 보다 느슨하게(관대하게), 재배포할 때 저작권 표시 만을 조건으로 함
        . 수정된 소스 코드에 대한 공개, 어떠한 기타 표시도 하지 않아도 됨 


6. 주요 오픈소스 프로젝트 

  ㅇ Apache 프로젝트
     - 웹서버 소프트웨어
     - 모든 소스 코드 공개, 수정/배포의 자유로움

  ㅇ GNU (GNU's Not UNIX) 프로젝트   ☞ GNU 홈페이지
     - 1980년대에 출현하여, Linux 등과 함께 진행됨
        . 例) GCC, BASH, EMACS, Linux

소프트웨어 기타일반
   1. CTI   2. eAI/EAI   3. SI (시스템통합)   4. 그룹웨어   5. 미들웨어   6. 워크플로우 관리   7. 자료흐름도   8. 클라이언트/서버   9. 협업   10. 다운사이징   11. 오픈소스SW   12. 프레임워크   13. CASE,CAD   14. 역공학  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"