GNU 프로젝트

GNU Project
Aurelio A의 GNU 마스코트.Heckert[1] (Etienne Suvasa의 더 자세한 버전에서 따옴)[2]

GNU 프로젝트(// ɡnu ː/)는 1983년 9월 27일 리처드 스톨먼이 발표한 자유 소프트웨어, 대량 협업 프로젝트입니다.컴퓨터 사용자가 자유롭게 소프트웨어를 실행하고 복사 및 배포하며 연구하고 수정할 수 있는 권한을 부여하는 소프트웨어를 공동으로 개발 및 공개함으로써 컴퓨터 사용자의 컴퓨터 및 컴퓨팅 장치 사용의 자유와 통제권을 부여하는 것이 목표입니다.GNU 소프트웨어는 라이센스에서 이러한 권한을 부여합니다.

컴퓨터의 전체 소프트웨어가 사용자에게 모든 자유 권한(사용, 공유, 연구, 수정)을 부여하도록 보장하기 위해서는 운영 체제(모든 유틸리티 프로그램 포함)가 자유 소프트웨어가 되어야 했습니다.매니페스토에 따르면, 이 프로젝트의 설립 목표는 자유 운영 체제를 구축하는 것이었고, 가능하다면 "유닉스 시스템과 함께 제공되는 유용한 모든 것을 무료가 아닌 소프트웨어 없이도 잘 지낼 수 있도록" 하는 것이었습니다.Stallman은 이 운영 체제를 독점 운영 체제인 Unix의 디자인에 기반하여 GNU("GNU's not Unix!"라는 의미의 재귀적 약어)라고 부르기로 결정했습니다.[4]개발은 1984년 1월에 시작되었습니다.1991년 리눅스 커널이 등장하였고 리누스 토르발스에 의해 GNU 프로젝트 외부에서 개발되었으며 1992년 12월 GNU General Public License 버전 2에서 사용할 수 있게 되었습니다.[5][6]GNU 프로젝트에 의해 이미 개발된 운영 체제 유틸리티와 결합하여 리눅스로 알려진 최초의 운영 체제를 허용했습니다.[7][8]

이 프로젝트의 현재 작업은 소프트웨어 개발, 인식 구축, 정치 캠페인, 그리고 새로운 자료의 공유를 포함합니다.

오리진스

리처드 스톨먼은 1983년 9월 유즈넷 메시지를 통해 GNU 프로젝트의 코딩을 시작하겠다는 의도를 발표했습니다.[9]이전에 유닉스를 사용해 본 적이 없었음에도 불구하고, 스톨먼은 GNU 프로젝트가 휴대성이 좋고 "상당히 깨끗하기 때문에" GNU 프로젝트의 기초로 사용하기에 가장 적합한 시스템 설계라고 생각했습니다.[10]

GNU 프로젝트가 처음 시작되었을 때, 그들은 편집자 명령어를 작성하기 위한 리스프가 있는 이맥스텍스트 편집기, 소스 레벨 디버거, yacc 호환 파서 생성기, 그리고 링커를 가지고 있었습니다.[11]GNU 시스템은 자체적인 C 컴파일러와 도구들이 자유 소프트웨어가 되어야 하기 때문에 이것들 또한 개발되어야 했습니다.1987년 6월까지 프로젝트는 어셈블러를 위한 자유 소프트웨어, 거의 완성된 휴대용 최적화 C 컴파일러(GCC), 편집기(GNU Emacs), 그리고 다양한 유닉스 유틸리티(예:ls,grep,awk, make그리고. ld업데이트가 더 필요한 초기 커널을 보유하고 있었습니다.[12]

커널과 컴파일러가 완성되면, GNU는 프로그램 개발에 사용될 수 있었습니다.주요 목표는 유닉스 시스템과 같은 다른 많은 애플리케이션을 만드는 것이었습니다.GNU는 유닉스 프로그램들을 실행할 수 있었지만 그것과 동일하지는 않았습니다.GNU는 더 긴 파일 이름, 파일 버전 번호, 크래시 방지 파일 시스템을 통합했습니다.GNU 매니페스토는 프로젝트에 대한 다른 사람들의 지지와 참여를 얻기 위해 작성되었습니다.프로그래머들은 그들의 관심을 끌었던 프로젝트의 모든 측면에 참여하도록 격려 받았습니다.사람들은 프로젝트를 위한 코드와 프로그램을 작성하기 위해 기금, 컴퓨터 부품, 또는 심지어 그들만의 시간을 기부할 수도 있습니다.[4]

대부분의 GNU 프로젝트(그리고 일반적으로 무료 소프트웨어)의 기원과 발전은 Emacs 도움말 시스템의 상세한 서술로 공유됩니다.(C-hg는 Emacs editor 명령을 실행합니다.)그것은 그들의 웹사이트에 있는 것과 같은 상세한 이력입니다.

GNU 매니페스토

GNU 매니페스토는 Richard Stallman이 GNU 프로젝트에 대한 지지와 참여를 얻기 위해 작성되었습니다.GNU 매니페스토에서 스톨먼은 소프트웨어 사용자에게 필수적인 네 가지 자유를 열거했습니다: 어떤 목적을 위해서라도 프로그램을 실행할 수 있는 자유, 프로그램의 메커니즘을 연구하고 수정할 수 있는 자유, 사본을 재배포할 수 있는 자유, 그리고 수정된 버전을 대중이 사용할 수 있도록 개선하고 변경할 수 있는 자유.[13][14]이러한 자유를 구현하기 위해 사용자는 소스 코드에 대한 완전한 액세스가 필요했습니다.코드가 무료로 유지되도록 하고 대중에게 제공하기 위해, 스톨먼은 GPL(General Public License)을 만들었고, GPL을 통해 소프트웨어와 그로부터 파생된 코드의 미래 세대가 대중에게 무료로 사용될 수 있도록 했습니다.

철학과 행동주의

GNU 프로젝트의 대부분의 산출물은 본질적으로 기술적이지만, 사회적, 윤리적, 정치적인 계획으로 시작되었습니다.GNU 프로젝트는 소프트웨어와 라이선스를 제작하는 것뿐만 아니라 많은 저작물을 출판했으며, 그 중 대부분은 리처드 스톨먼이 작성했습니다.

무료 소프트웨어

GNU 프로젝트는 사용자가 자유롭게 복사, 편집, 배포할 수 있는 소프트웨어를 사용합니다.사용자가 소프트웨어를 개인의 필요에 맞게 변경할 수 있다는 점에서 무료입니다.프로그래머들이 무료 소프트웨어를 얻는 방법은 그들이 어디서 그것을 얻느냐에 달려 있습니다.소프트웨어는 친구들로부터 또는 인터넷을 통해 프로그래머에게 제공될 수 있거나, 프로그래머가 근무하는 회사에서 소프트웨어를 구입할 수 있습니다.

자금지원

준회원으로부터의 수익금, 구매 및 기부금은 GNU 프로젝트를 지원합니다.[15]

카피레프트

카피레프트는 다른 프로그래머들 사이에서 이 소프트웨어의 자유로운 사용을 유지하는 데 도움이 됩니다.Copyleft는 배포 용어가 변경되지 않는 한 모든 사용자에게 프로그램 또는 프로그램의 코드를 사용, 편집 및 재배포할 수 있는 법적 권리를 부여합니다.결과적으로, 합법적으로 소프트웨어를 획득하는 모든 사용자는 다른 사용자와 동일한 자유를 가집니다.

GNU 프로젝트와 자유 소프트웨어 재단은 때때로 "강한" 카피레프트와 "약한" 카피레프트를 구별합니다."약한" 카피레프트 프로그램은 일반적으로 배포자가 무료가 아닌 프로그램과 함께 연결할 수 있도록 허용하는 반면, "강한" 카피레프트는 이러한 관행을 엄격하게 금지합니다.GNU 프로젝트의 대부분의 출력물은 강력한 카피레프트로 출시되지만 일부는 약한 카피레프트 또는 느슨하고 푸시오버가 가능한 자유 소프트웨어 라이선스로 출시됩니다.[16][17]

운영체제 개발

GNU 허드 라이브 CD

GNU 프로젝트의 첫 번째 목표는 전체 자유 소프트웨어 운영 체제를 만드는 것이었습니다.유닉스는 이미 널리 보급되어 있었고 더 강력한 기계에서 실행되었기 때문에, 당시의 CP/M이나 MS-DOS 기계에 비해 [18]유닉스와 유사한 운영 체제가 될 것이라고 결정되었습니다.리처드 스톨먼은 나중에 MS-DOS를 "장난감"으로 생각한다고 말했습니다.[19]

1992년까지 GNU 프로젝트는 모든 주요 운영 체제 유틸리티를 완료했지만 제안된 운영 체제 커널GNU 허드는 완료하지 못했습니다.1991년 라이너스 토르발스에 의해 독립적으로 시작된 리눅스 커널의 출시와 함께 1992년 버전 0.12로 GPLv2로 출시되면서 처음으로 자유 소프트웨어로 구성된 운영 체제를 실행할 수 있게 되었습니다.리눅스 커널은 GNU 프로젝트의 일부가 아니지만 GCC와 다른 GNU 프로그래밍 도구를 사용하여 개발되었으며 GNU 일반 공중 사용 허가서에 따라 자유 소프트웨어로 출시되었습니다.[20]리눅스 커널의 대부분의 컴파일은 여전히 GNU 툴체인으로 이루어지지만, 현재 컴파일을 위해 Clang 컴파일러와 LLVM 툴체인을 사용하는 것이 가능합니다.[21]

현재, GNU 프로젝트는 32년 전 GNU/Hurd 프로젝트가 시작된 이래로 생산 환경에 적합한 GNU/Hurd 버전을 출시하지 않았습니다.[22]

GNU/리눅스

GNU의 안정적인 버전(또는 변형)은 리눅스 커널과 GNU 패키지를 결합하여 기능적인 유닉스 계열 시스템을 만들어 실행할 수 있습니다.GNU 프로젝트는 이를 GNU/리눅스라고 부르며, 정의 기능은 다음과 같습니다.

GNU 웹사이트 내에는 프로젝트 목록이 나열되어 있으며 각 프로젝트에는 GNU 프로젝트의 특정 부분에 필요한 작업을 수행할 수 있는 개발자 유형에 대한 세부 사항이 있습니다.기술 수준은 프로젝트마다 다양하지만 프로그래밍에 대한 배경 지식이 있는 사람은 누구나 프로젝트를 지원하는 것이 좋습니다.

리눅스 커널 및 기타 프로그램과 함께 GNU 도구의 패키징은 일반적으로 리눅스 배포판(distro)이라고 불립니다.GNU 프로젝트는 GNU와 리눅스 커널의 결합을 "GNU/리눅스"라고 부르며, 다른 사람들에게 같은 작업을 요청하여 GNU/리눅스 명명 논란을 야기했습니다.[34]

대부분의 리눅스 배포판들은 GNU 패키지를 독점적인 바이너리 블롭을 포함하는 리눅스 커널과 결합합니다.[35]

GNU 자유 시스템 배포 지침

GNU FSDG(GNU Free System Distribution Guidelines)는 설치 가능한 시스템 배포(예: 리눅스 배포판)가 자유(libre) 자격을 부여하고 배포 개발자들이 배포판을 자격을 갖추도록 돕는 데 사용되는 시스템 배포 약속입니다.

대부분, 이 목록은 리눅스-libre 커널(소유 라이선스 하에서 바이너리 블롭, 난독화된 코드 및 코드의 일부를 제거하는 수정된 리눅스 커널)과 GNU 패키지의 조합인 배포판을 설명합니다.[36][37][35]GNU FSDG를 채택한 배포판으로는 Dragora GNU/Linux-Libre, GNU Guix System, Hyperbola GNU/Linux-libre, Parabola GNU/Linux-libre, Trisquel GNU/Linux, PureOS 등이 있습니다.[38]

FSDG는 페도라 프로젝트의 유통허가 가이드라인을 근거로 사용하였습니다.[39]페도라 프로젝트의 자체 지침은 현재 FSDG를 따르지 않고 있으며, 따라서 GNU 프로젝트는 페도라를 완전히 자유로운 GNU/리눅스 배포판으로 간주하지 않습니다.[35]

전략프로젝트

1990년대 중반부터 많은 기업들이 자유 소프트웨어 개발에 투자하면서 자유 소프트웨어 재단은 자유 소프트웨어 개발의 법적, 정치적 지원을 위해 자금을 전용했습니다.이 시점부터 소프트웨어 개발은 기존 프로젝트를 유지하고 자유 소프트웨어 커뮤니티에 심각한 위협이 있을 때만 새로운 프로젝트를 시작하는 데 초점을 맞췄습니다.GNU 프로젝트의 가장 주목할 만한 프로젝트 중 하나는 GNU 컴파일러 컬렉션으로, 구성 요소는 많은 유닉스 계열 시스템의 표준 컴파일러 시스템으로 채택되었습니다.

GNU 프로젝트에 의한 대부분의 저작권은 자유 소프트웨어 재단에 의해 소유됩니다.[40]

그놈

GNU 프로젝트는 GNU 프로젝트에 의해 시작되었는데, 이는 또 다른 데스크톱 시스템인 KDE가 대중화되고 있지만 사용자들에게 당시 독점 소프트웨어였던 Qt를 설치하도록 요구했기 때문입니다.사람들이 KDE와 Qt를 설치하고 싶은 유혹에 빠지는 것을 막기 위해, GNU 프로젝트는 두 개의 프로젝트를 동시에 시작했습니다.하나는 하모니 툴킷이었습니다.이는 Qt의 소프트웨어를 무료로 대체하기 위한 시도였습니다.이 프로젝트가 성공적으로 이루어졌더라면 KDE에 대한 인식된 문제는 해결되었을 것입니다.두 번째 프로젝트는 GNOME으로, 같은 문제를 다른 각도에서 다루었습니다.독점 소프트웨어에 의존하지 않는 KDE를 대체하는 것을 목표로 했습니다.하모니 프로젝트는 크게 발전하지 못했지만 그놈은 아주 잘 발전했습니다.결국 KDE가 의존하던 독점 컴포넌트(Qt)가 무료 소프트웨어로 출시되었습니다.[41]GNOME은 이후 GNU 프로젝트와 자유 소프트웨어 재단으로부터 분리되어 현재 GNOME 프로젝트에 의해 독립적으로 관리되고 있습니다.

GNU 엔터프라이즈

GNUe(GNUe)는 1996년에 시작된 메타 프로젝트로,[42] GNU 프로젝트의 하위 프로젝트로 간주될 수 있습니다.GNUe의 목표는 무료 "엔터프라이즈급 데이터 인식 애플리케이션"(엔터프라이즈 리소스 플래너 등)을 만드는 것입니다.GNUe는 GNU 시스템을 위한 엔터프라이즈 소프트웨어를 단일 위치에 수집하도록 설계되었습니다(GNOME 프로젝트가 데스크톱 소프트웨어를 수집하는 것처럼).

인지도

2001년, GNU 프로젝트는 "자유롭게 이용 가능한 재배포 가능하고 수정 가능한 소프트웨어의 보편성, 폭, 품질"로 USENIX 평생 공로상을 수상했습니다.[43]

참고 항목

참고문헌

  1. ^ "A Bold GNU Head". Archived from the original on December 5, 2014. Retrieved November 30, 2014. We thank Aurelio A. Heckert...for donating this graphic to us.
  2. ^ "A GNU Head". Archived from the original on July 28, 2011. Retrieved November 30, 2014. This graphic was drawn by Etienne Suvasa
  3. ^ "What is GNU?". The GNU Operating System. Free Software Foundation. September 4, 2009. Archived from the original on 2004-04-02. Retrieved 2009-10-09. The name "GNU" is a recursive acronym for "GNU's Not Unix!"; it is pronounced g-noo, as one syllable with no vowel sound between the g and the n.
  4. ^ a b "The GNU Manifesto". Free Software Foundation. July 21, 2007. Archived from the original on 2018-07-14. Retrieved 2015-10-08.
  5. ^ Torvalds, Linus Benedict (August 1991). "comp.os.minix". Archived from the original on 2013-05-09. Retrieved 2009-09-06.
  6. ^ "z-archive of Linux version 0.99". kernel.org. December 1992. Archived from the original on 2017-01-30.
  7. ^ Balsa, Andrew D. "The linux-kernel mailing list FAQ". The Linux Kernel Archives. Kernel.org. Archived from the original on 2012-10-01. Retrieved 2013-06-13. ...we have tried to use the word "Linux" or the expression "Linux kernel" to designate the kernel, and GNU/Linux to designate the entire body of GNU/GPL'ed OS software,... ...many people forget that the linux kernel mailing list is a forum for discussion of kernel-related matters, not GNU/Linux in general...
  8. ^ Mark Shuttleworth (14 February 2014). "Losing graciously". Archived from the original on 22 March 2014. Retrieved 27 April 2014. today our focus is on the cloud and on mobile, and we are quite clearly leading GNU/Linux on both fronts
  9. ^ Richard Stallman. "new Unix implementation". Archived from the original on 2011-01-22. Retrieved 2013-09-27.
  10. ^ Stallman, Richard (2022). "How I do my computing". Archived from the original on January 31, 2023. Retrieved January 31, 2023.
  11. ^ 워드립 프루인, 노아 그리고 닉 몽포트."GNU 매니페스토"뉴미디어 리더.캠브리지, 메사추세츠: MIT, 2003. pp.545–550
  12. ^ "GNU's Bulletin, vol. 1 no. 3". gnu.org. June 1987. Archived from the original on 2015-11-25. Retrieved 2014-04-18.
  13. ^ Stallman, Richard (March 1985). "The GNU Manifesto – GNU Project – Free Software Foundation (FSF)". gnu.org. GNU Project. Archived from the original on 2018-07-14. Retrieved 2011-10-18.
  14. ^ 웨버, S. (2004)오픈 소스의 성공.캠브리지:하버드 대학 출판부.
  15. ^ GNU 프로젝트자유 소프트웨어 운동 돕기 GNU 프로젝트 – 자유 소프트웨어 재단 2015-12-25 Wayback Machine. gnu.org .2013-07-17에 검색되었습니다.
  16. ^ "Ncurses". wiki.freedesktop.org. Archived from the original on 2021-03-22. Retrieved 2019-03-18. It is one of the few GNU files not distributed under the GNU General Public License or GNU Lesser General Public License; it is distributed under a license like the X11 License
  17. ^ "Why you shouldn't use the Lesser GPL for your next library". GNU. Archived from the original on 2007-11-26. Retrieved 2019-03-18. There are reasons that can make it better to use the Lesser GPL in certain cases.
  18. ^ "GNU's Bulletin Volume 1 No.1". February 1986. Archived from the original on 2015-06-23. Retrieved 2020-08-16.
  19. ^ "Richard Stallman: Freedom". Radio New Zealand. August 9, 2008. Archived from the original on October 31, 2020. Retrieved August 16, 2020.
  20. ^ Linus Benedict Torvalds (August 26, 1991). "What would you like to see most in minix?". comp.os.minix. Archived from the original on April 30, 2013. Retrieved July 28, 2016.
  21. ^ The Kernel Development Community. "Building Linux with Clang/LLVM". The Linux Kernel Docs. Archived from the original on 2022-09-27. Retrieved 2022-10-08.
  22. ^ "GNU Hurd/ hurd/ status". GNU Operating System. Free Software Foundation. Archived from the original on 2020-11-12. Retrieved 2018-04-15. It may not be ready for production use, as there are still some bugs and missing features.
  23. ^ a b "All GNU packages". gnu.org. Archived from the original on 2015-12-25. Retrieved 2014-04-18.
  24. ^ a b GNU @ Wayback Machine (fsf.org )에서 2015-12-05 무료 소프트웨어 디렉토리 보관
  25. ^ "POSIX – The GNU C Library". Archived from the original on 2014-04-24. Retrieved 2014-04-18.
  26. ^ GNU C 라이브러리#임시포크
  27. ^ GCC 아키텍처
  28. ^ "The Linux Kernel Archives". Archived from the original on 2011-02-21. Retrieved 2016-07-25.
  29. ^ "Release Notes for Linux v0.12". Archived from the original on 2013-05-26. Retrieved 2012-12-24.
  30. ^ GNU/이름 협약은 GPL이 적용되는 모든 프로그램에 적용되어야 합니까?Richard Stallman에 의해 Wayback Machine GNU/Linux FAQ에서 2013-09-07 보관
  31. ^ "GNU Linux" 대신 "GNU/Linux"를 쓰는 이유는 무엇입니까?Richard Stallman에 의해 Wayback Machine GNU/Linux FAQ에서 2013-09-07 보관
  32. ^ 우리가 리누스 토르발스의 작업을 GNU로 분류하는 것이 잘못된 것이 아닌가요? Richard Stallman에 의해 Wayback Machine GNU/Linux FAQ에 2013-09-07 아카이브됨
  33. ^ 리눅스가 커널일 뿐이라는 것에 대해 리누스 토르발스는 동의합니까?Richard Stallman에 의해 Wayback Machine GNU/Linux FAQ에서 2013-09-07 보관
  34. ^ "Why do you call it GNU/Linux and not Linux?". Archived from the original on 2013-09-07. Retrieved 2014-04-18.
  35. ^ a b c "Explaining Why We Don't Endorse Other Systems". gnu.org. Archived from the original on 2011-04-24. Retrieved 2016-07-22.
  36. ^ "Guidelines for Free System Distributions". gnu.org. Archived from the original on 2015-12-08. Retrieved 2014-04-17.
  37. ^ "Avoiding Ruinous Compromises". gnu.org. Archived from the original on 2018-06-22. Retrieved 2016-07-22.
  38. ^ "List of Free GNU/Linux Distributions – GNU Project – Free Software Foundation". gnu.org. Archived from the original on 2014-12-16. Retrieved 2014-08-18.
  39. ^ "Free System Distribution Guidelines (GNU FSDG) – GNU Project". gnu.org. publisher. Archived from the original on 2015-12-08. Retrieved 2014-06-07. We would like to thank the Fedora Project for their help in focusing these policies, and allowing us to use their own distribution license guidelines as a basis for this document.
  40. ^ Moglen, Eben. "Why the FSF Gets Copyright Assignments from Contributors". gnu project. Archived from the original on 2023-05-11. Retrieved 2023-05-11.
  41. ^ Stallman, Richard (September 5, 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Linux Today. Archived from the original on 2012-04-19. Retrieved 2005-09-09.
  42. ^ "GNU Enterprise Project History – GNU Enterprise". 2013-01-16. Archived from the original on 2013-01-16. Retrieved 2019-02-18.
  43. ^ "USENIX Lifetime Achievement Award ("The Flame")". USENIX. Archived from the original on 2007-12-28. Retrieved 2007-12-05.

외부 링크