기출문제/정보처리기사

2018년 2회 정보처리기사 기출문제 54번

엉클지니 2025. 5. 31. 13:57

54. 시스템 소프트웨어와 그 기능에 대한 설명으로 가장 옳지 않은 것은?

    로더 : 실행 가능한 프로그램을 기억 장치로 적재

    링커 : 사용자 프로그램 소스코드와 I/O 루틴과의 결합

    언어 번역기 : 고급언어로 작성된 사용자 프로그램을 기계어로 번역

    디버거 : 실행시간 오류가 발생할 경우 기계상태 검사 및 수정

 

 

300x250

 

좋은 질문입니다! 이 문제는 정보처리기사 시험에서 자주 출제되는 시스템 소프트웨어의 역할과 기능에 대한 개념을 묻는 문제입니다.
학생들이 개념을 더 쉽게 이해할 수 있도록, 핵심 개념 요약 표와 함께 문항별 해설을 드리겠습니다.


❓ 문제

다음 중 시스템 소프트웨어와 그 기능에 대한 설명으로 가장 옳지 않은 것은?

번호 보기 요약

로더: 실행 가능한 프로그램을 기억 장치로 적재 ✅ 옳음
링커: 사용자 프로그램 소스코드와 I/O 루틴과의 결합 ❌ 틀림
언어 번역기: 고급언어로 작성된 사용자 프로그램을 기계어로 번역 ✅ 옳음
디버거: 실행 시간 오류가 발생할 경우 기계 상태 검사 및 수정 ✅ 옳음

🧠 시스템 소프트웨어란?

운영체제를 포함하여, 사용자의 프로그램 실행을 도와주는 각종 도구 및 프로그램을 의미합니다. 대표적으로 로더, 링커, 컴파일러(언어 번역기), 디버거 등이 있습니다.


✅ 보기별 상세 해설

보기 번호 해설 옳고 그름

① 로더 로더(Loader)는 컴파일과 링크 과정을 거쳐 생성된 실행 파일을 **기억장치(주기억장치)**에 올려 실행 준비를 하는 프로그램입니다. ✅ 옳음
② 링커 링커(Linker)는 오브젝트 파일(.obj 또는 .o) 들을 결합(link) 하여 하나의 실행 파일(exe) 을 만듭니다. 그러나 소스코드와 I/O 루틴을 직접 결합하지는 않습니다. 소스코드는 컴파일러가 처리합니다. 이 설명은 컴파일러의 역할과 혼동하고 있어 틀렸습니다. ❌ 틀림
③ 언어 번역기 고급언어(C, Java 등) → 저급언어(기계어, 어셈블리어)로 번역해주는 도구로, 컴파일러, 인터프리터, 어셈블러 등이 포함됩니다. 정확한 설명입니다. ✅ 옳음
④ 디버거 디버거(Debugger)는 실행 도중 오류를 추적하고 상태를 분석할 수 있는 도구로, 변수 값 확인, 브레이크포인트 설정, 기계 상태 변경 등 기능을 수행합니다. ✅ 옳음

✅ 핵심 요약 표: 시스템 소프트웨어와 기능

소프트웨어 주요 기능

로더 (Loader) 실행 파일을 메모리에 적재하여 실행 준비
링커 (Linker) 여러 오브젝트 파일(.obj)들을 연결하여 하나의 실행 파일 생성
컴파일러 (Compiler) 소스코드를 기계어로 번역 (고급 → 저급)
디버거 (Debugger) 실행 중 오류를 찾아내고, 기계 상태 점검 및 수정
어셈블러 (Assembler) 어셈블리어 → 기계어로 번역
인터프리터 (Interpreter) 소스코드를 한 줄씩 번역하며 실행

 


✅ 정답

② 링커: 사용자 프로그램 소스코드와 I/O 루틴과의 결합
❗ 틀린 설명입니다 – 링커는 오브젝트 파일끼리 결합하며, 소스코드 수준에서는 작동하지 않습니다.

 

🔍 요약

  • 이 문제는 링커와 컴파일러의 기능을 혼동하면 틀리기 쉬운 문제입니다.
  • 학생들에게는 "링커는 기계어 수준에서 일하는 소프트웨어다"라고 비유하면 이해가 쉬워요.
  • 반대로 "소스코드와 관련된 작업은 컴파일러의 몫이다"라고 설명해주면 됩니다.

궁금한 용어나 예제 코드가 필요하면 언제든지 알려주세요!