*오픈소스의 시작과 라이선스의 이해
(1) 오픈 소스의 거장 3명
- Richard Stallman
- Linus Torvalds
- Eric S. Raymond
(2) 오픈소스를 잘 이해할 수 있는 영화 : Revolution OS
(3) 오픈소스 : '소스코드'를 공개하여 누구나 수정·재배포할 수 있는 소프트웨어
(4) 시대별 특징
① 1960 ~ 1970
- 하드웨어 판매가 핵심
- 소프트웨어의 코드는 공유하는 문화
- FORTRAN, COBOL, Algol
② 1970 ~ 1980 : 유닉스(UNIX) 탄생
- 70년대 초발 벨 연구소 직원인 켄 톰슨, 데니스 리치, 더글러스 매클로리 등이 처음 개발
- AT&T를 비롯한 여러 회사들과 버클리 대학(UC Berkeley) 등 비영리 단체들이 개발한 다양한 버전
③ 1980 ~ 1990 : 상용 소프트웨어
- 소프트웨어 저작권에 대한 인지가 시작된 상업용 소프트웨어 시대
- 빌게이츠, 컴퓨터 애호가들에게 보내는 공개 편지 "Open Letter to Hobbyists" -> 저작권이 개념이 대두됨.(http://bit.ly/1DoDJ0o)
④ 1984 ~ 2000 : 자유소프트웨어의 성행 / 리차드 스톨먼, GNU 선언
- 1985 : GNU 선언문을 발표
- 유닉스에 대항한 자유로운 대안을 만들기 위한 의지를 말한 것
- Free Software 운동 후 자유 소프트웨어 재단(FSF) 설립
- Free = 무료 (X) -> 사용/수정/재배포에 자유로운 것!
- 리눅스 토발즈, 리눅스(Linux) 탄생
- 리눅스(Linux) 1991 ~
- 리눅스는 핀란드 헬싱키 대학의 대학원생인, 리누스 토발즈가 취미로 개발한 커널
- 현재 200여 종류가 넘는 배포판이 존재. (devian, redhat, ubuntu, centOS 등)
- Eric S. Raymond, OSI 설립
- 1998년 - OSI(Open Source Initiative)
- 오픈소스 문화를 활성화 해 기업들의 참여를 이끄는 목적
- GPL은 파생물 역시 항상 동일한 라이센스 GPL을 준수해야 하므로, 즉 소스가 외부에 공개 되어야 하므로, 기업의 참여가 제한됨.
- 오픈소스를 변경하더라도, 다른 라이센스로 또는 상업용으로 쓰는 것을 가능케 함.
- 현재는 대세!!
- OS (리눅스, OSX-freebsd 기반)
- 브라우져 (크롬, 파이어폭스, 사파리 - Webkit)
- 모바일 OS (안드로이드, 타이젠 등)
- 백엔드 서버 소프트웨어 (웹서버, 데이터베이스 등)
(5) 라이센스
- GPL : 오픈소스를 만든 원저작자에게 큰 권한을 주는 것
- LGPL (Less GPL) : 오픈 소스를 만든 사람에게 많은 권한을 주는 것
- 이외에도 MIT / BSD / Apache 라이센스 등이 있음.
- 저작권 보호 기능 (GPL : O, LGPL : O, MIT : O, BSD : O, Apache : O)
- 상용 SW 사용 가능 (GPL : O, LGPL : O, MIT : O, BSD : O, Apache : O)
- 기능 확장 공개 의무 (GPL : O, LGPL : O, MIT : X, BSD : X, Apache : X)
- 라이선스 전파 여부 (GPL : O, LGPL : O, MIT : X, BSD : X, Apache : X)
- 타인에게 특허권 제공 (GPL : X, LGPL : X, MIT : X, BSD : X, Apache : O)
- 독점 프로그램에서 사용 가능 여부 (GPL : X, LGPL : O, MIT : O, BSD : O, Apache : O)
(6) BSD/MIT 라이센스가 증가한 이유?
- 미국 정부의 끊임 없는 노력 때문.
(7) 오픈 소스는 기업간의 플랫폼 싸움을 할 때 좋은 수단
- iOS vs Android
(8) 오픈 소스 위반 사례 : Skype
(9) 특허 침해 관련
- 구글이 Apache 라이센스로 공개한 안드로이드 OS에서 마이크로소프트사의 코드가 발견되어 마이크로소프트가 저작권료를 청구하였으나, 실질적으로 금전적인 이익을 얻고 있지 않은 구글이 삼성, LG와 같은 스마트폰 제조사들에게 저작권료를 대납하라고 청구한 사건.
'Daily Life > Study' 카테고리의 다른 글
코딩할 때 도움이 될만한 내용들 (C++) (0) | 2020.12.28 |
---|---|
[2019.04.17] 구름 IDE를 이용해서 Hello_World.py 파일 만들기 (3) | 2019.04.17 |