포스트잇
커널 : Kernel 본문
컴퓨터는 크게 하드웨어와 소프트웨어로 구분된다. 소프트웨어 중에서도 우리가 가장 많이 접하는 것이 바로 운영체제이다. 이 운영체제도 세분화가 가능하다.
- 커널 : 컴퓨터에서 항상 실행되는 프로그램
- 시스템 프로그램 : 운영체제와 연관되어 있지만 커널의 일부일 필요는 없는 소프트웨어
커널은 운영체제의 핵심부로 컴퓨터 자원(CPU, 메모리, 파일, I/O, 네트워크, 등)들을 관리하는 역할을 한다. 사용자와 상관없이 스스로 자원을 관리하기 때문에 상호작용이 불가하다. 하지만 시스템 프로그램안에 존재하는 쉘(Shell)이라는 친구로 커널에 접근이 가능하기도 하다.
쉘(Shell) : 사용자가 컴퓨터에게 전달하는 명령을 해석하는 프로그램
우리가 한번 쯤은 써봤을 친구들인데, 윈도우에선 명령프롬프트, 리눅스에선 터미널과 같은 친구들을 말한다. 커널의 가장 큰 역할은 컴퓨터의 물리적 자원과 추상화 자원을 관리하는데에 있다.

추상화 자원이란 커널에서 하드웨어를 여러 자원으로 나눠 추상화 된 객체로 만든 자원을 얘기한다. 커널은 다음과 같이 총 5개의 관리자로 구성되어 있다.
- 테스크 관리자 : CPU → 테스크로 제공
- 메모리 관리자 : 메모리 → 페이지/세그먼트로 제공
- 파일 시스템 관리자 : 디스크 → 파일로 제공
- 네트워크 관리자 : 네트워크 장치를 → 소켓으로 제공
- 디바이스 드라이버 관리자 → 각종 외부장치에 대한 접근을 허용
'운영체제' 카테고리의 다른 글
인터럽트 : Interrupts (0) | 2022.09.19 |
---|---|
운영체제 : Operating System (0) | 2022.09.13 |