리눅스 커널 공부를 왜할까~?
- 컴퓨터를 사면
윈도우를 쓰듯이 개발
을 하면 리눅스는 결국에 반드시 만나게 된다.
- 웹 개발, 서버 구축, 어플리케이션
- 서버와 얽히면 만나게 된다.
굳이 왜 리눅스를 쓰는가~?
- 오픈 소스
- 무료
- 안정적, 검증이 많이 됨
- 커뮤니티 활성화
- 다양한 CPU, 하드웨어 지원
리눅스가 쓰이는 곳
- 안드로이드
- 자동차
- IoT
- 수많은 서버, NAS
- 임베디드 (IP 카메라, TV)
- 네트워크 장치
- 의료기기
커널이란?
운영체제 핵심 개념이다.
프로그램이 돌아가고 실행하는데 핵심적인 개념이다.
커널이 하드웨어와 연결을 해주는데 이게 시스템 콜이다?
커널과 사용자 공간(User Space) 프로그램 간의 다리 역할을 한다.
커널은 대체 왜 존재하는가~?
- 프로세스 관리: 게임 실행 및 여러 작업 동시 처리.
- 메모리 관리: 필요한 데이터 로드 및 메모리 할당.
- 디바이스 관리: GPU, 사운드, 입력 장치와의 통신.
- 네트워킹: 서버와의 데이터 송수신.
- 보안: 시스템 안정성 및 불법 접근 방지.
- 스케줄링: CPU 자원 분배.
유튜버님은 LOL게임을 예시로 들어 설명을 해주셨는데 즉 커널은 LOL 같은 게임이 원활히 실행되고, 사용자가 즐길 수 있도록 모든 시스템 자원을 효율적으로 관리하는 숨은 주역이다…
커널의 핵심 역할 요약
- 하드웨어 제어:
- CPU, 메모리, 디스크, 네트워크 카드, 그래픽 카드 등 모든 컴퓨터 부품을 제어.
- 하드웨어가 정확하고 효율적으로 동작하도록 관리.
- 사용자 프로그램 지원:
- 사용자 프로그램이 하드웨어를 직접 제어하지 않도록 시스템 콜을 통해 중재.
- 프로그램은 커널에 요청만 하면 커널이 하드웨어 작업을 대신 처리.
- 안정성과 보안 제공:
- 하드웨어에 대한 비정상적인 접근이나 잘못된 요청을 차단.
- 여러 프로그램이 동시에 하드웨어를 사용할 때 충돌 방지.
즉 이렇게 커널이라는 것은 자동차, IoT, 우리가 흔히 쓰는 데스크탑까지 모든 사용자와 기기간의 통신을 담당한다고 이해했다.
Share article