본문 바로가기
IT개발/Linux

[유닉스/리눅스] 유닉스? 리눅스? 뭔 차이?

by Thompson 2024. 3. 12.
728x90

유닉스는 운영체제(OS: Operating System)로 미국 AT&T 벨연구소에서 다중사용자, 다중프로세스를 위한 OS가 단순성과 이식성을 기본 철학으로 해서 개발되었으며, 그 이후로 발전하면서 이제는 서버, PC, 스마트폰에 까지 거의 모든 컴퓨터에 광범위하게 사용되고 있습니다.


여기서 운영체제란?

 

컴퓨터 시스템의 자원들을 효율적으로 관리하는 것인데 쉽게 말하자면 컴퓨터를 제어하는 프로그램이라고 생각하시면 됩니다. 다들 컴퓨터를 한 번씩은 사용해 보았을 텐데요. 사용한다는 의미는 운영체제를 사용한다고 볼 수도 있습니다.


그럼 리눅스는 뭐야? 

 

리눅스는 유닉스 계열 운영 체제로 고급언어로 작성된, 다중 사용자 운영체제입니다.

 

가장 큰 장점은 여러 환경에서 설치되어 사용이 가능하다는 점입니다. 또 멀티 유저, 멀티 태스킹, 네트워킹 기능 등을 기본적으로 제공합니다. 즉, PC를 위한 운영체제가 개발되었다는 점입니다.

 

유닉스/리눅스는 명령어 기반의 사용자 인터페이스라는 점도 기억해야 합니다.

사용자 인터페이스는 컴퓨터와 사용자 사이의 정보교환이나 상호작용을 위한 인터페이스로, 컴퓨터 시스템을 조작하는 사용자의 입력과 조작에 따라 시스템이 생성한 출력을 볼 수 있습니다.

즉, 사람과 시스템 사이의 대화 형태라고 보시면 됩니다.


그럼 인터페이스는 뭐냐?

 서로 다른 장치, 시스템, 소프트웨어를 이어주는 장치라고 생가하시면 됩니다.


리눅스의 장점:

  • 오픈 소스(개방성): 리눅스는 오픈 소스 소프트웨어이기 때문에 누구나 무료로 사용, 배포, 수정할 수 있음
  • 높은 안정성: 리눅스는 유닉스 계열 운영 체제의 장점을 이어받아 높은 안정성을 가지고 있음.
  • 높은 확장성: 리눅스는 다양한 하드웨어 플랫폼을 지원하며, 다양한 커스터마이징이 가능.
  • 높은 보안성: 리눅스는 오픈 소스 소프트웨어이기 때문에 많은 개발자들이 보안 취약점을 찾고 개선하기 때문에 높은 보안성을 가지고 있음.

현재 대표적으로 다양한 리눅스 배포판이 존재하며, 각 배포판마다 특징과 장점이 다릅니다.

 

CentOS는 Red Hat Enterprise Linux(RHEL)과 호환되는 무료 리눅스 배포판입니다. 서버 운영 체제로 많이 사용되며, 안정성과 높은 호환성을 장점으로 합니다.

  • 장점:
    • 무료
    • RHEL과 호환
    • 안정적
    • 높은 커뮤니티 지원

 

Ubuntu는 Canonical에서 개발하는 데스크톱 및 서버용 리눅스 배포판입니다. 사용하기 쉽고, 다양한 소프트웨어가 지원되어 개인 사용자와 기업에서 많이 사용됩니다.

  • 장점:
    • 사용하기 쉬움
    • 다양한 소프트웨어 지원
    • 활발한 커뮤니티
    • LTS 버전으로 장기간 지원

  • 사용자 인터페이스 : 사람과 시스템과의 대화 형태
  • 유닉스는 명령어 기반의 사용자 인터페이스
  • 인터페이스 : 서로 다른 시스템, 장치, SW를 서로 이어주는 장치

ex) 사용자 인터페이스, 하드웨어 인터페이스, 소프트웨어 인터페이스

 

사용자 인터페이스를 구체적으로 말하자면, 컴퓨터와 사용자 사이의 상호작용과 정보교환을 위한 인터페이스로 컴퓨터 상호작용이라고 한다. 사용자가 시스템을 조작하는 입력과 조작에 통해 시스템이 생성한 출력을 볼 수가 있고, 좋은 사용자 인터페이스는 심리학과 생리학을 기반으로 정확한 결과를 얻도록 설계해야 한다.


  • CLI : 명령어를 텍스트로 입력하여 조작
  • GUI : 그래픽을 기반으로 마우스 조작
  • NUI : 사람의 말과 행동으로 조작
  • OUI : 모든 자연 상태에서 발견하는 다양한 형태의 특성을 반영

특징

다중 사용자 다중 프로세스 운영체제

유닉스는 처음 개발 될 때 여러 사용자가 동시에 사용할 수 있도록 개발되었지. 또한 다중 사용자를 지원하기 위하여 여러 프로그램을 동시에 실행할 수 있는 다중 프로세스 기능을 갖추고 있다.

 

쉘을 이용한 대화형 운영체제

유닉스는 명령어 해석기인 쉘(Shell)을 통해 사용자가 시스템과 대화하여 시스템을 사용할 수 있다. 사용자에게 명령어를 테스트로 입력을 받아 쉘이 이를 해석하고 다시 처리한 결과를 알려주어 출력을 하는 방식으로 동작한다.

 

계층적 파일 시스템

유닉스 파일 시스템은 트리 구조와 같은 계층 구조 형태를 구성한다. 가장 상위 디렉터리인 루트(Root) 디렉터리로부터 아래로 여러 디렉터리들이 트리와 같은 형태로 구성된다.