리눅스 커널(Kernel)이란? | 커널 버전

리눅스 커널과 커널은 같은 뜻을 가지고 있습니다. 커널을 말할 때 리눅스 커널을 이야기 하는 것입니다. 핵심(&알맹이)이라는 뜻을 가진 커널(Kernel)은 내부 계층에 속하며, Shell 명령과 하드웨어를 연결해 주는 역할을 합니다.

리눅스 커널(Kernel)의 개념

컴퓨터는 크게 물리적으로 만질 수 있는 하드웨어(키보드, 모니터, 본체:CPU, 메모리 등)와 소프트웨어로 나뉘게 됩니다. 소프트웨어는 운영체제인 윈도우, 리눅스, MacOS 등이며, 추가로 설치하는 응용 프로그램인 Chrome, MsOffice 등으로 나뉘게 됩니다.

리눅스 운영체제에서는 커널과 시스템 프로그램으로 나눌 수 있습니다.

리눅스 쉘(Shell)과 커널(Kernel)
출처: https://www.shiksha.com/online-courses/articles/unix-vs-linux/

앞서 언급한 것처럼 유저는 Shell 명령어를 입력하여 커널에 전달하게 되며, 핵심이란 뜻에서 알 수 있듯이 전달 받은 Shell 명령을 커널 기계가 이해할 수 있는 언어로 변환해서 하드웨어 및 프로세스, 메모리 등 윈도우에서 실행시켜 어떤 작업을 수행하는 것과 같은 역할을 합니다.

리눅스에서 커널은 OS의 핵심 기능을 담당하며, 디바이스, 프로세스, 메모리 관리와 시스템 콜 제공 기능을 가지고 있습니다. 운영체제의 리소스와 하드웨어 기능을 관리하는 것이 커널이라고 할 수 있습니다.

운영체제=커널과 시스템프로그램(보통 Shell)

▼ 실제로 복잡한 구성을 가진 커널의 구성도입니다.

리눅스 커널 구조도(출처 위키피디아)
리눅스 커널 구조도(출처 위키피디아)

✅ 커널의 역할

리눅스 커널(Kernel)의 역할(목적)

커널의 목적은 컴퓨터의 하드웨어(물리적 자원)와 추상화 자원을 관리하는 것입니다.

  • 테스크(Task) 관리자
  • 물리적 자원인 CPU를 추상적 자원인 Task로 제공
  • 메모리(Memony) 관리자
  • 물리적 자원인 메모리를 Page, Segment로 제공
  • 파일 시스템(Fiile System) 관리자
  • 물리적 자원인 디스크를 추상적 자원인 File로 제공
  • 네트워크(Network) 관리자
  • 물리적 자원인 네트워크 장치를 추상적 자원 Socket으로 제공

✅ 커널의 버전

1996년 4월 버전 2.0이 나왔으며, 2년 마다 마이너 버전(0.x)가 배포 되었으며, 2개월 마다 패치 버전(0.0.x)가 배포되는 방식이 기본 방식이었습니다. 2.6 버전 이후 7년 간 마이너 및 패치 버전 배포 없이 유지되다가 2012년 12월 3.8 버전, 2018년 4.17 버전, 2022년 6.1 버전, 이후 6.1.2 버전 등이 있습니다.

Similar Posts

  • 리눅스 tee 명령어

    리눅스 tee 명령어는 배관시설에 비유해서 이름이 붙여진 명령어입니다. 파이프 모양과 똑같은 “T”에서 본따 tee 명령어이며 표준 출력으로 하나 이상의 다른 파일을 동시에 출력합니다. tee 명령어의 목적은 작업 진행 중 파이프라인(I)의 중간 내용을 알고 싶을 때 유용하게 사용할 수 있습니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의 버전✅ 리눅스 tee 명령어 사용법 ✅ tee 명령어…

  • 리눅스 tar 명령어: 파일 압축, 해제

    리눅스 tar 명령어는 여러 개의 파일을 하나의 파일로 묶거나 해제할 때 사용하는 명령어로 웹사이트의 이전 등에 mysqldump와 같이 사용되는 경우가 많습니다. 테이프 아카이버(Tape Archiver)의 앞 글자를 따서 tar라는 이름으로 부르게 되었습니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의 버전✅ 리눅스 tar 명령어의 이해 리눅스에서 tar로 압축 진행을 할 때 압축(compress)한다고 표현하지만 tar 명령어 자체가…

  • Apache&Nginx에 Varnish Cache 설치 및 설정

    기존 Apache와 Nginx 조합의 서버에 Varnish Cache를 추가로 설치하고 적용 해 보도록 하겠습니다. Nginx에 Varnish Cache를 추가로 설정하는 작업이기 때문에 기존의 서버에 적용된 사항을 체크 해 보겠습니다. AlmaLinux release 9.4 버전에 Apache/2.4.57, nginx/1.28.0 , PHP 8.3.22를 사용하기 때문에, 설치는 varnish, collectd-varnish, varnish-modules 총 3개의 모듈 설치를 진행합니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의…

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의 버전✅ 리눅스 포그라운드(Fore Ground)란? 터미널에 직접 연결되어 터미널과 입출력을 진행하는 프로세스를 뜻 합니다. 리눅스 단축키 설명…

  • cp 명령어 옵션 및 실행 시 일괄 덮어쓰기 설정 | yes, \(역슬래쉬) 2가지 설정

    cp 명령어는 Copy의 약자로 파일 및 디렉토리를 복사합니다. 기본 사용법은 간단하게 복사할 대상과 새로운 이름 등을 설정하여 사용할 수 있습니다. cp 명령어를 실행할 때 같은 이름의 대상 파일이 있을 때는 사용자에게 묻지 않고 덮어쓰기가 되는데, 이를 방지하기 위해 alias “cp=’cp -i”로 설정되어 있습니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의 버전 ✅ 기본 사용…

  • [Linux] CentOS 7 설치 | VirtualBox 설치

    VirtualBox에 CentOS 7 설치를 진행 해 보겠습니다. 미리 다운로드 받은 ISO 파일로 이미 설정을 완료한 상태입니다. 목차리눅스 커널(Kernel)의 개념✅ 커널의 역할✅ 커널의 버전 ✅ CentOS 7 설치 진행 Install CentOS를 선택하고 다음 단계로 넘어갑니다. 언어 선택 화면에서 한국어를 선택합니다. 🔲 KDUMP 설정 KDUMP를 클릭하여, 체크 된 활성화를 비 활성화로 변경합니다. KDUMP 설정은 테스트…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 0   +   10   =