[Linux] 리눅스란?

2023. 3. 3. 19:25

리눅스란?

  • 리눅스는 운영체제이다.
  • 배포판이 다양하게 존재한다.
    • ubuntu, centos, fedora...
    • 배포판들은 기본적으로 리눅스 커널을 사용한다.
    • 어떤 데스크탑 관리자를 사용하는지, 어떤 패키지 매니저를 사용하는지에 대한 차이가 존재한다.

운영체제란?

  • Operating System : OS
  • 컴퓨터의 하드웨어소프트웨어 자원을 관리하는 시스템 소프트웨어
    • 하드웨어 : CPU, HDD, RAM, GPU..
  • 운영체제의 주요 구성요소 (각각의 자세한 내용은 운영체제 탭에 정리)
    • 커널(kernel)
    • 프로그램 실행과 멀티 태스킹
    • 인터럽트
    • 메모리 관리
    • 파일 시스템
    • 디바이스 드라이버
    • 네트워킹
    • 사용자 인터페이스

패키지 관리 시스템

  • 각각의 배포판 마다 패키지 관리 시스템이 존재함 (apk, yum, rpm.....)
  • 리눅스 내부에 package manager가 깔려있음
    • 요청을 하면 package manager가 repository에 명령을 날림
    • repository가 패키지를 받아옴
  • 패키지 관리 시스템이 어려운 이유
    • 패키지 간 의존성이 복잡했기 때문
    • 요새는 관리가 잘되는 편
  • 라이브러리 동적 로딩과 의존성
    • 프로그램 사용시 필요한 shared libraries를 통해 동적으로 라이브러리를 불러옴
    • 필요한 lib가 설치되어 있어야함으로 의존성이 생긴다.

가상화

  • 과거에는 하드웨어(PC) 위에 하나의 OS만 올릴 수 있었다.
    • 가상화를 사용하면 하나의 하드웨어(PC)에 여러개의 OS를 올릴 수 있음
    • 실제 PC에 올라가있는 OS를 Host OS, 가상 머신 위에 올라가는 OS는 Guest OS라고 함
    • Host가 Guest를 지원해주는 구조

ref : https://www.inflearn.com/course/%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%9E%85%EB%AC%B8

'skill > linux' 카테고리의 다른 글

[Linux] 프로세스와 시그널  (0) 2023.03.08
[Linux] 파일  (0) 2023.03.07
[Linux] 기본 명령어  (0) 2023.03.05

+ Recent posts