리눅스 콘솔(Linux console)은 리눅스 커널에 내부적으로 동작하는 시스템 콘솔이다. 리눅스 콘솔은 커널과 다른 프로세스들이 텍스트를 사용자에게 출력하고 사용자로부터 텍스트 입력을 받을 수 있는 방법을 제공한다. 사용자는 일반적으로 컴퓨터 키보드로 텍스트를 입력하고 컴퓨터 모니터로 텍스트를 출력한다. 리눅스 커널은 가상 콘솔을 지원하는데, 이 콘솔은 논리적으로 분리되어 있지만 동일한 물리적 키보드와 디스플레이에 접근이 가능하다.[1]
설명
리눅스 콘솔은 리눅스 커널 내부의 시스템 콘솔이다. 시스템 콘솔은 모든 커널 메시지와 경고를 수신하고 단일 사용자 모드에서 로그인을 허용하는 장치이다. 리눅스 콘솔은 커널 및 기타 프로세스가 사용자에게 텍스트 출력을 보내고 사용자로부터 텍스트 입력을 받는 방법을 제공한다. 사용자는 일반적으로 컴퓨터 키보드로 텍스트를 입력하고 컴퓨터 모니터에서 출력 텍스트를 읽는다. 리눅스 커널은 논리적으로 분리되어 있지만 동일한 물리적 키보드 및 디스플레이에 액세스하는 콘솔인 가상 콘솔을 지원한다. 리눅스 콘솔(및 리눅스 가상 콘솔)은 리눅스 커널의 VT(가상 터미널) 하위 시스템에 의해 구현되며 사용자 공간 소프트웨어에 의존하지 않는다. 이는 터미널을 에뮬레이트하는 사용자 공간 프로세스이며 일반적으로 그래픽 디스플레이 환경에서 사용되는 터미널 에뮬레이터와 대조된다.
리눅스 콘솔은 커널의 첫 번째 기능 중 하나였으며 원래 리누스 토르발스가 1991년에 작성했다(리눅스의 역사 참조). 프레임 버퍼와 텍스트 모드라는 두 가지 주요 구현이 있다. 프레임 버퍼 구현은 최신 리눅스 배포판의 기본값이며 커널 모드 설정과 함께 디스플레이 하드웨어 및 시스템 부팅 중 그래픽 표시와 같은 기능에 대한 커널 수준 지원을 제공한다. 레거시 텍스트 모드 구현은 CGA, EGA, MDA 및 VGA 그래픽 카드가 있는 PC 호환 시스템에서 사용되었다. x86이 아닌 아키텍처에서는 그래픽 카드가 텍스트 모드를 구현하지 않았기 때문에 프레임 버퍼 모드를 사용했다. 리눅스 콘솔은 고정 크기 비트맵, 고정 폭 글꼴을 사용하며 일반적으로 문자당 기본값은 8x16픽셀이다.
리눅스 콘솔은 선택적 커널 기능이며 대부분의 임베디드 리눅스 시스템에서는 이를 활성화하지 않는다. 이러한 시스템은 일반적으로 대체 사용자 인터페이스(예: 웹 기반)를 제공하거나 즉시 그래픽 사용자 인터페이스로 부팅하여 이를 사용자와 상호 작용하는 기본 수단으로 사용한다. 리눅스 콘솔의 다른 구현에는 새로 고칠 수 있는 점자 디스플레이를 지원하는 점자 콘솔과 직렬 포트 콘솔이 포함된다.
↑“config VT: Virtual terminal”. 리누스 토르발스. If you say Y here, you will get support for terminal devices with display and keyboard devices. These are called "virtual" because you can run several virtual terminals (also called virtual consoles) on one physical terminal. This is rather useful, for example one virtual terminal can collect system messages and warnings, another one can be used for a text-mode user session, and a third could run an X session, all in parallel. Switching between virtual terminals is done with certain key combinations, usually Alt-<function key>.