
정답실행 코드(머신 코드)가 적재되는 영역은 텍스트 영역입니다.
핵심 개념
프로세스 메모리 구조 — 텍스트(코드) 영역
프로세스가 실행될 때 확보하는 메모리 공간은 크게 텍스트(코드), 데이터, 힙, 스택 영역으로 나뉩니다. 텍스트 영역은 컴파일된 실행 파일의 머신 코드, 즉 CPU가 실제로 인출하여 실행하는 명령어가 적재되는 곳으로, 실행 중 변경되면 안 되므로 보통 읽기 전용이자 공유 가능한 영역으로 설정됩니다. 데이터 영역은 전역·정적 변수, 힙은 실행 중 동적 할당되는 메모리, 스택은 함수의 지역 변수와 복귀 주소를 담습니다. 버퍼 오버플로 공격이 스택·힙을 노리는 것도 이 영역 구분을 이해해야 설명되는 부분입니다.
선지별 해설
①스택은 함수 호출 시 생성되는 지역 변수, 매개변수, 복귀 주소 등이 후입선출로 쌓이는 영역이며 머신 코드가 놓이는 곳이 아니므로 답이 될 수 없습니다.
②힙은 malloc이나 new처럼 실행 중에 동적으로 할당되는 데이터를 담는 영역입니다. 프로그램의 명령어가 아니라 데이터가 저장되는 공간이므로 틀렸습니다.
③텍스트 영역은 실행 파일에서 읽어들인 머신 코드가 적재되어 CPU가 명령어를 인출해 가는 영역입니다. 변조 방지를 위해 읽기 전용으로 설정되는 것이 일반적이므로 정답입니다.
④데이터 영역은 전역 변수와 정적 변수처럼 프로그램 전체 수명 동안 유지되는 값을 저장하는 공간이며, 실행 코드 자체가 위치하는 영역은 아니므로 틀렸습니다.

정답명령어 해석기이자 사용자 인터페이스 역할을 하는 셸이 정답입니다.
핵심 개념
운영체제의 셸(Shell)과 커널의 역할 구분
운영체제는 하드웨어 자원을 직접 관리하는 커널과, 사용자와 커널 사이에서 명령을 주고받는 셸로 구분됩니다. 셸은 사용자가 입력한 명령어를 해석해 커널에 전달하는 명령어 해석기이며, 동시에 스크립트를 통한 프로그래밍 기능과 환경 변수·프롬프트 등 사용자 환경 설정 기능을 제공합니다. 유닉스·리눅스에서는 sh, bash, csh, ksh 등이 대표적입니다. 반면 커널은 프로세스·메모리·파일시스템·장치를 관리하는 핵심부로 사용자와 직접 대화하지 않는다는 점에서 셸과 대비됩니다.
선지별 해설
①데몬은 백그라운드에서 상주하며 특정 서비스 요청을 기다렸다 처리하는 프로세스입니다. 사용자 명령어를 해석하는 중간자 역할과는 무관하므로 틀렸습니다.
②커널은 프로세스·메모리·파일시스템·장치를 관리하는 운영체제의 핵심부입니다. 셸의 요청을 받아 실제 작업을 수행하는 쪽이지, 사용자와 직접 대화하는 계층이 아니므로 틀렸습니다.
③프로세스는 실행 중인 프로그램이라는 개념이며 운영체제 구성 요소의 명칭이 아닙니다. 명령어 해석 기능을 제공하는 주체가 아니므로 틀렸습니다.
④셸은 사용자 명령을 해석해 커널에 전달하는 명령어 해석기이며, 셸 스크립트를 통한 프로그래밍과 환경 변수 설정 기능까지 제공하므로 지문의 설명과 정확히 일치합니다.