이 문장을 계속 읽습니다.
리눅스는 유닉스 계열 시스템이지만 유닉스가 아닙니다.
두 사람의 실제 차이점이 무엇인지 모르겠습니다. 나는 리눅스가 유닉스로부터 많은 아이디어를 얻었고 두 라이센스가 다르다는 것을 안다. 그 외에도, 나는 그들 중 하나의 전문가가 아니기 때문에 디자인이나 다른 중요한 측면에서 그들 사이에 기본적인 차이점이 있는지 알고 싶습니다.
이 문장을 계속 읽습니다.
리눅스는 유닉스 계열 시스템이지만 유닉스가 아닙니다.
두 사람의 실제 차이점이 무엇인지 모르겠습니다. 나는 리눅스가 유닉스로부터 많은 아이디어를 얻었고 두 라이센스가 다르다는 것을 안다. 그 외에도, 나는 그들 중 하나의 전문가가 아니기 때문에 디자인이나 다른 중요한 측면에서 그들 사이에 기본적인 차이점이 있는지 알고 싶습니다.
답변:
"Unix like"시스템은 Unix 시스템에 적합한 표준 이름 인 Single UNIX Specification을 완전히 준수 할 수 있지만 동시에 Unix는 The Open Group 의 등록 상표 이며 Unix와 같은 시스템 공급 업체는 공식적 으로 유닉스 자격 을 갖도록 시스템을 등록합니다 . 현재 등록 된 UNIX 03 시스템 은 다음과 같습니다.
- Apple Inc .: Intel 기반 Macintosh 컴퓨터의 Mac OS X 버전 10.5 Leopard
- Apple Inc .: Intel 기반 Macintosh 컴퓨터의 Mac OS X 버전 10.6 Snow Leopard
- Fujitsu Limited : Fujitsu PRIMEPOWER® 64 비트 SPARC® 기반 플랫폼의 Solaris ™ 10 운영 체제
- Hewlett-Packard Company : HP Integrity 서버의 HP-UX 11i V3 릴리즈 B.11.31 이상
- IBM Corporation : APAR이있는 2004 년 8 월 8 일 이후의 POWER V5.2 용 AIX 5L : pSeries CHRP 시스템에서 IY59610, IY60869, VAC 6.0.0.8 이상이있는 IY61405
- IBM Corporation : POWER ™ 프로세서와 함께 CHRP 시스템 아키텍처를 사용하는 시스템에서 2006 년 7 월 7 일 이후의 POWER V5.3 용 AIX 5L
- IBM Corporation : POWER ™ 프로세서 및 2, 8 또는 128 포트 비동기 카드가있는 CHRP 시스템 아키텍처를 사용하는 시스템의 SP1 이상이 설치된 AIX 6 운영 체제 V6.1.2
- Oracle Corporation : SPARC 기반 플랫폼, 32 비트 및 64 비트 및 X86 기반 플랫폼, 32 비트 및 64 비트에서 Oracle Solaris 11 FCS 이상
- Oracle Corporation : 64 비트 X86 기반 시스템의 X86 용 Solaris 10 운영 체제 및 패치 118844-06
- Oracle Corporation : Solaris 10 운영 체제 이상, 32 비트 및 64 비트 SPARC 기반 시스템
- Oracle Corporation : Solaris 10 운영 체제 및 32 비트 X86 기반 시스템
시스템 (대부분 Linux 및 FreeBSD)과 같은 오픈 소스 Unix 공급 업체는 일반적으로 인증 비용을 피하거나 그렇게하는 데 큰 가치가 없기 때문에 Open Group에 등록하지 않습니다. 이론적으로 유닉스 계열 시스템은 기술적으로 유닉스 일 수 있으며, 누락 된 것은 인증뿐입니다.
반면에 Linux Foundation은 Linux를 표준화하기 위해 ISO 표준 인 Linux Standard Base를 만들었습니다 . POSIX 준수 는 SUS와 LSB의 핵심이며 Unix와 Linux 간의 연결을 유지합니다.
유닉스와 유닉스 계열 시스템은 다른 것보다 더 유사합니다. 이론적으로 등록되거나 등록되지 않은 모든 인기있는 유닉스 풍미는 POSIX 호환 (전체 또는 대부분)이므로 핵심 프로그래밍 인터페이스, 쉘 및 유틸리티 (및 기타 여러 가지)를 공유합니다 물건). IEEE와 Open Group은 POSIX 준수의 실제 의미에 대한 자세한 정보를 찾을 수 있는 최신 버전 POSIX.1-2008 의 무료 사본을 유지 관리합니다 .
법적, 기술적 이유를 제외하고 리눅스 는 리차드 스톨만 (Richard Stallman)이 시작한 유닉스와 같은 유닉스와 같은 GNU 와의 연관성에서 "유닉스가 아닌"만트라를 물려 받았습니다 . GNU는 "GNU 's not Unix"를 의미합니다. Stallman의 의도는 자유로울 수있는 Unix 호환 시스템을 구축하는 것이며 Unix가 독점적이므로 Unix 코드를 포함하지 않아야합니다.
초기 리눅스 개발자들은 GNU 툴을 리눅스로 포팅하기 시작했으며 그 결과 시스템은 1992 년 초 GNU / Linux 로 불렸다 . 거기에있다 오래 지속 논란 리눅스는 리눅스, GNU / 리눅스 (은 GNU의 여러 부분을 통합으로)라고해야하는지에 대한,하지만 그 질문에 대한 무관의 어떤 관련이있는 것은 "하지 유닉스는"단지 협회에 참조 할 수 있다는 것입니다 GNU와 관련이 있으며 상황에 따라 디자인과 거의 관련이 없습니다.
"역사 리눅스의"기사 위키 백과는 리눅스의 기원과 (을 통해 유닉스와 그것의 관계를 설명 미닉스 몇 가지 세부 사항 및 GNU)를, 당신이에 관심이 있다면 당신은 또한 기사의 참고 문헌을 읽을 시간이 좀 걸릴해야 더 배우기.
UNIX는 운영 체제 제품군이며 현재 UNIX는 The Open Group이 소유 한 브랜드입니다. 운영 체제를 UNIX로 브랜딩하려면 적합성 테스트를 받아야하며, Linux의 경우 모든 배포판 (Ubuntu, Debian, Fedora, Red Hat 등)이 모든 릴리스에 대해 별도로이 적합성 테스트를 수행해야 함을 의미합니다. . 이것이 리눅스가 유닉스 계열이 아닌 유닉스 계열 시스템 인 주된 이유 중 하나입니다.
내가 언급 한이 테스트는 OS가 현재 버전 4 SUSv4 (Single Unix Specification 버전 4) 인 Single Unix Specification을 준수하는지 확인하는 것입니다. 이 사양은 시스템이 UNIX라는 이름을 갖도록 응용 프로그램에서 사용할 수 있어야하는 API 집합을 정의합니다.
기존 답변에는 이미 찾고있는 몇 가지 차이점이 언급되어 있습니다. 리눅스 커널 전문가가 아니더라도 GNU / 리눅스와 다양한 Unices 사이의 많은 디자인 / 구현 차이점이 리눅스 커널 디자인 패턴 시리즈에 포함되어 있다고 덧붙였다 .
"UNIX"는 복잡한 문제입니다. 표준 적합성 측면에서, Solaris와 Mac OS X 는 모두 "공식적으로"UNIX이지만 둘 사이에 큰 차이를 찾기 전에 많은 시간을 소비하지 않아도됩니다. 거기에다양한 종류의 UNIX 또는 UNIX 유사 운영 체제의 릴리스와 이들이 서로 영향을주고받는 방식을 문서화 훌륭한 다이어그램 이 있습니다.
유닉스처럼 보이고 걷거나 and 거리는 거대한 계획에서 리눅스 시스템 [*]은 가장 일반적인 릴리즈 중 하나입니다. 사람들이 Unices 또는 * nix를 참조하고 Linux를 포함하는 "UNIX와 유사한 것"을 의미하는 것은 매우 일반적입니다. 그러나 UNIX는 상업적으로 적용되는 방법에 제한이있는 등록 상표입니다. Linux 배포판은 이러한 제한을 준수하지 않습니다.
[*]이 질문에 시맨틱 헤어 스 플리 팅 (splictic hair-splitting) 수준이 필요하기 때문에이 경우에는 리눅스 자체가 운영 체제를 구축 할 수있는 커널 일 뿐이라는 점을 주제로 생각합니다. Linux 기반으로 UNIX와 유사한 시스템을 구축하는 것이 일반적이며,이 시스템은 일반적으로 GNU 프로젝트 구성 요소로 구축됩니다. 위의 답변에서 "Linux"는 "Linux 커널을 통합 한 운영 체제"의 약어로 읽을 수 있습니다.
나는 한때 리눅스가 PC 개발자를 데려 가서 유닉스 OS를 작성 해달라고 요청하는 반면, FreeBSD는 유닉스 개발자를 데려 가서 PC OS를 만들어달라고 요청했을 때 ... 비교할 때 BSD를 잊지 마십시오!
사용자 공간 응용 프로그램 (예 : ls 포함)이 모두 GNU 프로젝트의 일부이므로 차이점은 주로 커널에 있습니다. 이것은 유닉스, FreeBSD 및 리눅스가 모두 거의 같은 것으로 보인다는 것을 의미합니다.
그러나 자세히 보면 차이가 있습니다. 디렉토리 레이아웃은 다를 것입니다 (그러나 많은 Linux 배포판은 대부분 호환 가능하지만 여전히 다른 레이아웃을 사용합니다). 공통 FS (예 : ZFS)
그런 다음 핵심 API에는 차이가 있으며 Linux는 파일 변경 시점을 알려주 는 inotify API를 제공하고 Mac OSX는 FSEvents 를 제공하며 FreeBSD는 kqueue를 제공합니다 .
따라서 동일한 제품군으로 간주 될 수 있습니다. GNU 시스템이있는 Windows 시스템과 동일한 시스템이있는 Linux 시스템을 비교하십시오. 그것들은 피상적으로 동일하게 보일 것이지만, 유닉스 나 FreeBSD 시스템은 여전히 비슷한 것으로 보일 것입니다. 자세히 살펴보면 Windows와 같은 대체 OS로 포팅하는 것과 비교하여 FreeBSD, Unix 및 Linux 간의 포팅 앱이 상대적으로 쉽다는 것을 알 수 있습니다.
유닉스는 더 이상 단일 운영 체제가 아닙니다. 이전에는 Bell Labs / AT & T에서 구현했지만 이제는 표준입니다.
기술적으로 리눅스는 커널 일뿐입니다. 이 커널은 OS와 같은 유닉스가 아닌 곳에서 찾을 수 있으며 가장 인기있는 것은 안드로이드입니다. 반면에 유닉스와 같은 많은 Linux 기반 OS가 있습니다. 그들 중 대부분은 전부는 아니지만 Gnu 라이브러리와 유틸리티를 사용하고 있습니다. 이 조합은 Linux 배포판에 Unix API 및 표준 준수 (또는 비준수)를 제공합니다.
유닉스 표준은 호환 시스템이 독점적이거나 특정 라이센스를 갖도록 요구하지 않습니다. BSD, OpenSolaris / Illumos, darwin은 Linux가 아닌 무료 Unix 구현의 예입니다.
컴플 라이언트 시스템은 일반적으로 독점 및 오픈 소스 구성 요소가 혼합 된 것은 아니지만 Gnu / Linux는 완전히 오픈 소스이거나 독점적 인 내용을 포함 할 수 있습니다.
유닉스 컴플라이언스에 관한 한 큰 차이는 없습니다. 대부분의 Linux 배포 및 Unix 구현은 동일한 옵션 세트를 사용하여 동일한 명령 세트를 공유합니다. 그러나 표준 명령의 많은 확장, 특히 Gnuisms라고하는 Gnu 측에서 처음에는 표준에 의해 정의되지 않은 수많은 명령 (컴파일러, 관리 명령, 설치, 패키징, 그래픽 환경). 이것은 많은 발산, 비 호환성 및 때로는 거룩한 전쟁을 찾을 수있는 영역입니다.
GNU / 리눅스 개발 모델은 일반적으로 "유기적"과 "바자"와 같은 것으로 간주되는 반면 다른 유닉스 계열 시스템은 "디자인"과 "성당"과 유사합니다. 서브 시스템에 따라 차이는 그리 명확하지 않으며 개인 및 / 또는 그 뒤에있는 회사에 따라 다릅니다.
Linux에는 다음과 같은 많은 도구가 제공됩니다.
그러나 모든 것이 단일 소스 또는 공급 업체에서 제공되므로 대부분의 UNIX 운영 체제는 완전한 운영 체제로 간주됩니다.
그들이 공유하는 것들 :
실제로 리눅스가 유닉스의 역 엔지니어링 된 것은 아니기 때문에 커널 디자인은 Ken Thompson의 철학을 따랐다. 리눅스 방식은 독창적 인 사고로 그들 자신에게 부담을주지 않고 가능한 한 유닉스 철학을 최대한 모방하는 것 같습니다.