Linux

Linux와 UNIX의 관계 및 차이점 - 1장

빼이 2020. 10. 21. 13:30
반응형

UNIX와 Linux의 관계는 흥미로운 주제입니다. 현재 주류 서버 측 운영 체제 중 UNIX는 1960 년대 후반에, Windows는 1980 년대 중반에, Linux는 1990 년대 초에 탄생했습니다. UNIX는 운영 체제의 "빅 브라더"라고 할 수 있습니다. 나중에 Windows와 Linux는 UNIX를 참조했습니다.

  • 현대의 Windows 시스템은 "그래픽 인터페이스"방향으로 발전했으며 UNIX 시스템과는 큰 차이가 있으며 표면적으로는 둘 사이의 상관 관계조차 없습니다.


★ UNIX의 험난한 역사

UNIX 운영 체제는 Ken Thompson과 Dennis Ritchie가 발명했습니다. 기술 소스의 일부는 1965 년에 시작된 Multics 엔지니어링 프로그램으로 거슬러 올라갈 수 있습니다.이 프로그램은 Bell Laboratories, Massachusetts Institute of Technology 및 General Electric Company가 공동으로 시작했습니다. 목표는 대화 형 다중 프로그램 처리를 개발하는 것입니다. 당시 널리 사용되었던 배치 운영 체제를 대체 할 수있는 시간 공유 운영 체제입니다.

  • 설명 : 시분할 운영 체제를 사용하면 컴퓨터가 동시에 여러 사용자에게 서비스를 제공 할 수 있습니다. 컴퓨터에 연결된 터미널 사용자는 대화식으로 명령을 실행합니다. 운영 체제는 타임 슬라이스 순환을 사용하여 사용자 서비스 요청을 처리하고 결과를 터미널 (운영 체제)에 표시합니다. CPU 시간은 타임 슬라이스라고하는 여러 세그먼트로 나뉩니다. 운영 체제는 시간 조각을 단위로 사용하고 각 터미널 사용자에게 차례로 서비스를 제공하여 한 번에 하나의 시간 조각을 제공합니다.

안타깝게도 Multics 프로젝트가 추구 한 목표가 너무 크고 복잡했기 때문에 개발자가 무엇을해야할지 몰랐고 결국 실패로 끝났습니다.


Ken Thompson이 이끄는 Bell Labs 연구원은 Multics 프로젝트의 실패에 대한 경험과 교훈을 배웠고 1969 년에 시분할 운영 체제의 프로토 타입을 실현했습니다.이 시스템은 공식적으로 1970 년 UNIX로 명명되었습니다.


영어 접두사 Multi와 Uni에 대해 생각해 보면 UNIX의 의미를 이해할 수있을 것입니다. Multi는 크고 크고 복잡하다는 뜻이고 Uni는 작고 작고 똑똑하다는 뜻입니다. 이것이 UNIX 개발자의 원래 디자인 의도이며이 개념이 오늘날 영향을 미치고 있습니다.


흥미로운 점은 Ken Thompson이 UNIX를 개발하려는 원래 의도가 그가 쓴 컴퓨터 게임 인 Space Travel을 실행하는 것이 었습니다.이 게임은 태양계에서 천체의 움직임을 시뮬레이션합니다. 플레이어는 우주선을 운전하고 풍경을보고 다양한 행성과 달에 착륙하려고합니다. 그는 여러 시스템에서 실험을했지만 결과가 만족스럽지 않아 자신 만의 운영체제를 개발하기로 결심하여 UNIX가 탄생했습니다.


1970 년 이후로 UNIX 시스템은 Bell Labs의 프로그래머들 사이에서 점차 인기를 얻고 있습니다. 1971 년부터 1972 년까지 Ken Thompson의 동료 인 Dennis Rich는 시스템 소프트웨어 작성에 적합한 고급 언어 인 전설적인 C 언어를 발명했습니다. 그 탄생은 UNIX 시스템 개발에서 중요한 이정표가되었습니다. 운영 체제 개발에서 어셈블리 언어는 더 이상 지배적이지 않습니다.


1973 년까지 UNIX 시스템의 소스 코드 대부분이 C 언어로 재 작성되어 UNIX 시스템의 이식성을 향상시키는 기반이되었습니다 (이전에는 운영 체제가 하드웨어에 크게 의존하는 어셈블리 언어를 사용했습니다). 시스템 소프트웨어 개발의 효율성을 높이기위한 조건을 만듭니다. UNIX 시스템과 C 언어는 쌍둥이 형제이며 뗄래야 뗄 수없는 관계라고 할 수 있습니다.


1970 년대 초 컴퓨터 산업에서 또 다른 위대한 발명이있었습니다. TCP / IP 프로토콜은 미 국방부가 ARPAnet을 인수 한 후 개발 된 네트워크 프로토콜이었습니다. 미국 국방부는 TCP / IP 프로토콜과 UNIX 시스템 및 C 언어를 번들로 제공하며 AT & T는 미국의 여러 대학에 비상업적 라이선스를 발급하여 UNIX 시스템, C 언어 및 TCP / IP 프로토콜 개발을 시작했습니다. 그들은 운영 체제, 프로그래밍 언어 및 네트워크 프로토콜의 세 가지 영역에 영향을 미쳤습니다. Ken Thompson과 Dennis Ritchie는 컴퓨터 분야에서 뛰어난 공헌을 인정 받아 1983 년 컴퓨터 과학 분야에서 가장 높은 상인 Turing Award를 수상했습니다.


그 후 다양한 버전의 UNIX 시스템이 등장했으며 현재 일반적인 버전은 Sun Solaris, FreeBSD, IBM AIX, HP-UX 등입니다.



★ 솔라리스와 FreeBSD

UNIX 시스템의 중요한 분기 인 Solaris에 초점을 맞출 것입니다. SPARC CPU 플랫폼에서 실행하는 것 외에도 Solaris는 x86 CPU 플랫폼에서도 실행할 수 있습니다. 서버 시장에서 Sun의 하드웨어 플랫폼은 고가용 성과 높은 안정성을 갖추고 있으며 시장에서 지배적 인 UNIX 시스템입니다.


Sun SPARC 아키텍처 컴퓨터에 액세스하는 데 어려움이있는 사용자는 Solaris x86을 사용하여 세계적으로 유명한 제조업체의 상용 UNIX 스타일을 경험할 수 있습니다. 물론, Solaris x86은 실제 프로덕션 응용 프로그램의 서버에도 사용할 수 있으며 Solaris x86은 Sun의 관련 라이센스 조건에 따라 연구, 연구 또는 상용 응용 프로그램에 무료로 사용할 수 있습니다.


FreeBSD는 University of California, Berkeley에서 개발 한 UNIX 버전에서 파생되었으며 전 세계의 자원 봉사자들이 개발 및 유지 관리하며 다양한 아키텍처의 컴퓨터 시스템에 대해 다양한 수준의 지원을 제공합니다. FreeBSD는 BSD 라이선스 계약에 따라 출시되어 누구나 저작권 및 라이선스 계약 정보를 유지하면서 자유롭게 사용하고 배포 할 수 있으며, 다른 계약에 따라 FreeBSD 코드의 배포를 제한하지 않으므로 상업 회사가 FreeBSD 코드를 자유롭게 사용할 수 있습니다. 그들의 제품에서. Apple의 OS X는 FreeBSD를 기반으로하는 운영 체제입니다.


 

FreeBSD와 Linux의 사용자 그룹 중 상당 부분이 겹치는 부분이 있으며, 둘이 지원하는 하드웨어 환경도 비교적 일관성이 있으며 사용되는 소프트웨어도 비교적 유사합니다. FreeBSD의 가장 큰 특징은 안정성과 효율성으로 서버 운영 체제로는 좋은 선택이지만 하드웨어 지원은 Linux만큼 완벽하지 않아 데스크톱 시스템으로는 적합하지 않습니다.


다른 UNIX 버전에는 상대적으로 제한된 응용 프로그램이 있으므로 여기서 소개하지 않겠습니다.

반응형