Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

Shell

운영체제의 커널은 컴퓨터 자원에 접근하기 위한 여러가지 서비스들을 제공한다. Shell은 유저가 이들 서비스에 쉽게 접근할 수 있도록 도와주는 사용자 인터페이스를 제공하는 소프트웨어다. 유저가 컴퓨터의 서비스를 사용하려면 컴퓨터에 명령을 내려야 하고, 그 결과를 (보통 모니터 화면을 통해서) 확인할 수 있어야 한다. Shell은 유저에게 prompt를 출력해서 명령을 기다린다는 걸 알려주며, 키보드 입력을 받아서 커널에 전달하고, 처리 결과를 화면에 출력하는 일을 한다.

Shell은 CLI와 GUI 크게 두가지 타입이 있다.
  1. CLI : Text 기반의 인터페이스를 제공한다. 즉 프롬프트를 출력해서 유저의 명령을 기다리고, 유저는 명령어 텍스트를 직접 입력하는 방식으로 명령을 전달한다. 결과 역시 텍스트로 출력된다.
  2. GUI : 그래픽 기반의 인터페이스를 제공한다. Shell은 프롬프트 대신에 아이콘, 윈도우 창, 버튼, 스크롤바 등을 포함한 인터페이스를 제공한다. 유저는 키보드 보다는 마우스를 이용해서 커널에 명령을 내린다.

관련 글