4차시
입출력 장치·소프트웨어·운영체제·프로그래밍
Part 1. 컴퓨터 일반 · 출제 빈도 ★★☆
이 차시를 공부하는 이유
이 차시는 비슷한 이름을 정확히 구분하는 능력을 봅니다. 셰어웨어 vs 프리웨어, 듀얼 vs 듀플렉스, 컴파일러 vs 인터프리터처럼 짝을 지어 외우면 실수가 줄어듭니다.
2급에서 먼저 보면 좋은 내용
2급의 소프트웨어 분류를 바탕으로 운영체제 성능 평가, 운영 방식, 객체 지향 특징까지 다룹니다.
학습 목표
모니터·프린터 관련 단위와 업그레이드 판단 기준을 설명할 수 있다.
사용권에 따른 소프트웨어 종류를 구분할 수 있다.
운영체제의 목적(성능 평가 기준), 구성, 운영 방식을 이해한다.
주요 프로그래밍 언어·번역기와 객체 지향 기법의 특징을 설명할 수 있다.
핵심 개념
1. 입출력 장치 용어와 업그레이드
| 용어/단위 | 의미 |
|---|---|
| 픽셀(Pixel) | 화면을 이루는 최소 단위 점. 픽셀 수가 많을수록 해상도가 높음 |
| 해상도 | 모니터 화면의 선명도. 가로×세로 픽셀 수로 표시 |
| 재생률(Hz) | 1초에 화면이 다시 그려지는 횟수. 높을수록 깜빡임이 줄어듦 |
| 점 간격(Dot Pitch) | 픽셀 사이의 간격. 작을수록 선명 |
| CPS / LPM / PPM | 초당 인쇄 문자 수 / 분당 인쇄 줄 수 / 분당 인쇄 페이지 수 |
| DPI | 1인치에 찍히는 점의 수. 인쇄·스캔 해상도 단위 |
| IPM / MMS | 잉크젯 분당 인쇄 매수(표준 모드) / 3D 프린터 출력 속도(초당 mm) |
- 3D 프린터는 입력한 도면대로 3차원 물체를 만듭니다. 방식: 층을 쌓는 적층형, 덩어리를 깎는 절삭형. 단계: 모델링 → 프린팅 → 후처리
- 업그레이드 판단: 하드디스크 RPM은 클수록, 접근 시간(ms)·RAM 접근 속도(ns)는 작을수록, CPU 클럭(Hz)은 클수록 좋습니다.
- RAM을 늘릴 때는 메인보드가 지원하는 종류·핀 수·용량을 먼저 확인해야 합니다.
2. 사용권에 따른 소프트웨어 분류
| 종류 | 특징 |
|---|---|
| 상용 소프트웨어 | 정해진 금액을 내고 사용 |
| 셰어웨어 | 기능 또는 기간 제한을 두고 무료로 배포, 계속 쓰려면 구입 |
| 프리웨어 | 무료로 사용·배포 가능하나 개작(소스 수정)은 불가 |
| 오픈 소스 | 소스 코드를 공개해 누구나 수정·재배포 가능 |
| 데모 버전 | 정식 프로그램을 홍보하기 위해 기능 일부만 사용하도록 만든 버전 |
| 트라이얼 버전 | 정식 프로그램의 기능을 일정 기간만 사용 |
| 알파 / 베타 버전 | 개발사 내부 테스트용 / 정식 출시 전 일반인 테스트용 |
| 패치 프로그램 | 이미 배포된 프로그램의 오류 수정이나 성능 향상을 위해 일부를 변경 |
| 번들 프로그램 | 하드웨어나 소프트웨어를 구입할 때 끼워 주는 프로그램 |
시험 함정 포인트
'셰어웨어는 기간·기능 제한 없이 영구 무료'는 프리웨어 설명입니다. 알파와 베타의 테스트 주체(내부 vs 외부)도 자주 뒤바뀌어 나옵니다.
'셰어웨어는 기간·기능 제한 없이 영구 무료'는 프리웨어 설명입니다. 알파와 베타의 테스트 주체(내부 vs 외부)도 자주 뒤바뀌어 나옵니다.
3. 운영체제의 목적과 구성
처리 능력(Throughput) 향상
일정 시간 내에 처리하는 일의 양을 늘림
응답 시간(Turnaround Time) 단축
작업을 의뢰한 뒤 결과를 받기까지의 시간을 줄임
사용 가능도(Availability) 향상
시스템 자원을 필요할 때 즉시 사용할 수 있는 정도를 높임
신뢰도(Reliability) 향상
주어진 문제를 오류 없이 정확하게 해결하는 정도를 높임
| 구성 | 프로그램 | 역할 |
|---|---|---|
| 제어 프로그램 | 감시 프로그램, 작업 관리 프로그램, 데이터 관리 프로그램 | 시스템 전체 동작 감시, 작업 순서 지정, 데이터 관리 |
| 처리 프로그램 | 언어 번역 프로그램, 서비스 프로그램, 문제 처리 프로그램 | 제어 프로그램의 지시를 받아 실제 데이터를 처리 |
시험 함정 포인트
운영체제의 성능 평가 기준에 '비용(Cost) 절감'이나 '처리 시간 증가'는 포함되지 않습니다. 응답 시간은 '단축'이 목표입니다.
운영체제의 성능 평가 기준에 '비용(Cost) 절감'이나 '처리 시간 증가'는 포함되지 않습니다. 응답 시간은 '단축'이 목표입니다.
4. 운영체제의 운영 방식
| 방식 | 특징 |
|---|---|
| 일괄 처리 | 데이터를 모아 두었다가 한꺼번에 처리 (급여 계산, 공공요금) |
| 실시간 처리 | 데이터가 발생하는 즉시 처리 (좌석 예약, 은행 온라인 업무) |
| 시분할 시스템 | CPU 시간을 잘게 나눠 여러 사용자가 동시에 대화식으로 사용하는 것처럼 처리 (라운드 로빈) |
| 다중 프로그래밍 | 하나의 CPU로 여러 프로그램을 동시에 실행하는 것처럼 처리 |
| 다중 처리 | 여러 개의 CPU로 여러 작업을 동시에 처리 |
| 분산 처리 | 여러 대의 컴퓨터를 네트워크로 연결해 작업과 자원을 나누어 처리 |
| 듀얼 시스템 | 두 CPU가 같은 작업을 동시에 수행하며 결과를 비교, 한쪽 고장 시 다른 쪽이 계속 처리 |
| 듀플렉스 시스템 | 한 CPU가 작업할 때 다른 CPU는 대기하다가 고장 나면 즉시 이어받음 |
| 임베디드 시스템 | 기계나 기기에 특정 기능을 수행하는 컴퓨터 시스템을 내장 (가전, 자동차) |
5. 프로그래밍 언어와 번역기
| 구분 | 컴파일러 | 인터프리터 |
|---|---|---|
| 번역 단위 | 프로그램 전체를 한 번에 번역 | 한 줄씩 번역하며 바로 실행 |
| 목적 프로그램 | 생성함 | 생성하지 않음 |
| 실행 속도 | 빠름 | 느림 |
| 번역 속도·메모리 | 번역은 느리고 메모리 많이 사용 | 번역은 빠르고 메모리 적게 사용 |
| 대표 언어 | C, C++, Java(바이트 코드 컴파일) | Python, BASIC, JavaScript |
- 언어 번역 과정: 원시 프로그램 → (컴파일) → 목적 프로그램 → (링커) → 로드 모듈 → (로더) → 실행
- Java: 객체 지향, 네트워크 환경 분산 작업, 바이트 코드로 플랫폼 독립적 실행 (JVM)
- Python: 인터프리터식 객체 지향 언어, 문법이 쉽고 AI·데이터 분석에 활용
- 웹 언어: HTML5(플러그인 없이 동영상·그래픽 표현), XML(사용자가 태그를 정의, 구조적 문서), JavaScript(브라우저에서 해석되는 스크립트), ASP·JSP·PHP(서버 측 스크립트), VRML(3차원 가상 공간), WML(무선 단말기용)
시험 함정 포인트
'JavaScript는 서버에서 실행되는 스크립트 언어'는 틀린 설명입니다. 서버 측은 ASP·JSP·PHP, 클라이언트(브라우저) 측은 JavaScript입니다.
'JavaScript는 서버에서 실행되는 스크립트 언어'는 틀린 설명입니다. 서버 측은 ASP·JSP·PHP, 클라이언트(브라우저) 측은 JavaScript입니다.
6. 프로그래밍 기법: 객체 지향
프로그램을 객체(데이터 + 메서드) 단위로 구성해 재사용성과 유지보수성을 높이는 기법입니다. C++, Java, Python 등이 대표적입니다.
캡슐화
데이터와 그 데이터를 처리하는 메서드를 하나로 묶고, 내부 구현은 숨기는 것(정보 은닉)입니다.
상속성
상위 클래스의 속성과 메서드를 하위 클래스가 물려받아 재사용하는 것입니다.
다형성
같은 이름의 메서드가 객체에 따라 다르게 동작하는 것(오버로딩·오버라이딩)입니다.
추상화
불필요한 부분은 생략하고 핵심적인 특징만 뽑아 모델로 표현하는 것입니다.
- 절차적 프로그래밍: 순서대로 명령을 실행 (C, Pascal) / 구조적 프로그래밍: 순차·선택·반복 구조만 사용, GOTO 문 지양
- 비주얼 프로그래밍: 아이콘과 마우스로 GUI 환경에서 프로그래밍 (Visual Basic 등)
확인 문제
1 / 5
문제 1
다음 중 셰어웨어(Shareware)에 대한 설명으로 옳은 것은?
💡 정답 ② 해설: 셰어웨어는 기능·기간 제한이 있는 무료 배포 프로그램입니다. ①은 오픈 소스, ③은 베타 버전, ④는 패치 프로그램입니다.
문제 2
다음 중 운영체제의 성능 평가 기준으로 옳지 않은 것은?
💡 정답 ④ 해설: 운영체제의 성능 평가 기준은 처리 능력 향상, 응답 시간 단축, 사용 가능도 향상, 신뢰도 향상입니다.
문제 3
두 개의 CPU 중 한 CPU가 작업을 처리하는 동안 다른 CPU는 대기하다가, 작업 중인 CPU가 고장 나면 즉시 대기 중인 CPU가 작업을 이어받는 시스템은?
💡 정답 ② 해설: 듀플렉스 시스템은 한쪽이 대기 상태로 있다가 장애 시 이어받습니다. 듀얼 시스템은 두 CPU가 같은 작업을 동시에 수행합니다.
문제 4
컴파일러와 인터프리터에 대한 설명으로 옳지 않은 것은?
💡 정답 ③ 해설: 인터프리터는 목적 프로그램을 생성하지 않고 한 줄씩 번역해 실행하므로 실행 속도가 느립니다.
문제 5
객체 지향 프로그래밍에서 상위 클래스의 속성과 메서드를 하위 클래스가 물려받아 사용하는 특징은?
💡 정답 ② 해설: 상속성은 상위 클래스의 속성과 메서드를 하위 클래스가 그대로 물려받는 것으로, 코드 재사용성을 높입니다.
4차시 문제 더 풀기
확인문제와 실전 모의고사에서 이 차시 범위 문제만 모아 해설과 함께 볼 수 있습니다.