본문 바로가기

IT/Linux

[Linux] 리눅스의 구조 (커널,kernel)

리눅스는 기본적으로 커널,쉘,응용프로그램으로 동작됩니다

커널이란 하드웨어와 소프트웨어 사이에서 제어 역활을 해주는것이며 쉘로 부터 데이터를 받아와서 주 기억 장치로 보내는 역활을 하고 있습니다

커널이 주 기억 장치로 보낸 데이터를 프로세스라고 하며 그 프로세스를 cpu는 처리하게 됩니다

또한 커널은 프로세서 및 메모리 파일 시스템 디바이스 네트워크르 관리하며

리눅스 커널의 특징은 Free,가상 메모리 시스템,가상의 파일시스템,멀티 쓰레드등을 지원합니다

 

 

커널은 이벤트 중심 프로그램으로써, 응용 프로그램으로부터의 시스템 콜 요청이나 하드웨어의 인터럽트 요청을 처리한다.


 

리눅스 커널이란?

응용 프로그램 동작을 위한 환경을 제공하고 하드웨어를 제어하는 역할을 해주어, 응용 프로그램이 본래 목적만을 실행하도록 돕는다. 커널은 이벤트 중심 프로그램으로써, 응용 프로그램으로

moldd.tistory.com

아래는 커널의 설정파일 내용이다. kernel /boot... 부분이 부팅에 사용되는 부분이다.

 

 

위 사진과 같이 proc 디렉토리에 version 파일을 보면 커널 버전을 확인 할수 있습니다

 

 

커널이란?

  • 컴퓨터의 가장 기본적인 각 장치들을 관리하고 제어하기 위한 소프트웨어가 커널이다. 컴퓨터가 부팅되면서 GRUB 과 같은 부트로더에 의해서 메모리로 로딩되어 컴퓨터가 꺼질 때까지 항상 메모리에 상주해서 컴퓨터의 각 장치들을 관리하고 제어하는 역할과 사용자들과 의사소통을 지속적으로 하게 된다.

 

  • 운영체제의 핵심을 이루는 부분으로 CPU, 메모리 그리고 기타 디바이스 등의 시스템 리소스를 관리하고, 사용자 프로그램이 이를 사용할 수 있도록 해줍니다.




크게 다섯가지로 나뉘며 다음과 같은 기능을 제공하는 역활을 합니다.

 

- 태스크 관리자 : CPU라는 물리적 자원을 태스크라는 추상적인 자원으로써 제공.

- 메모리 관리자 : 메모리를 세그먼트나 페이자라는 개념으로 제공.

- 파일 시스템 : 디스크를 파일이라는 개념으로 제공.

- 네트워크 관리자 : 네트워크 장치를 소켓이라는 개념으로 제공.

- 디바이스 드라이버 관리자 : 각종 장치를 디바이스 드라이버를 통해 일관되게 접근하도록 해줌.

 

 

 

 

리눅스 커널(kernel) 이해

커널이란? 컴퓨터의 가장 기본적인 각 장치들을 관리하고 제어하기 위한 소프트웨어가 커널이다. 컴퓨터가 부팅되면서 GRUB 과 같은 부트로더에 의해서 메모리로 로딩되어 컴퓨터가 꺼질 때까지

webdir.tistory.com

 

 

2강

 

books-and-cows.gitbook.io

 

'IT > Linux' 카테고리의 다른 글

[Linux] vi 이동 단축키  (0) 2021.01.20
[Linux] vi 에서 문자열 검색  (0) 2021.01.20
[Linux] gcc Include / library 경로 설정  (0) 2021.01.13
[Linux] gcc컴파일 옵션  (0) 2021.01.12
[Linux] 파일속 문자열 찾기  (0) 2021.01.08