옳은 것은 제어장치가 주기억장치의 명령어를 하나씩 꺼내 해독한다는 설명이다.
제어장치는 명령어를 인출·해독하여 각 장치에 제어 신호를 보내 명령어 실행을 지휘한다.
- 입력장치는 외부의 데이터를 컴퓨터 내부로 들여오는 장치이다. 내부에서 외부로 보내는 것은 출력장치이다.
- 캐시는 주기억장치보다 훨씬 작은 용량의 고속 메모리이다.
- 명령 레지스터와 해독기는 제어장치의 구성 요소이다.
11012 - ( ㉠ ) = 01112
㉠의 2의 보수는 이다.
먼저 ㉠을 구한다.
㉠ = − = 13 − 7 = 6 =
0110의 1의 보수는 1001이고, 여기에 1을 더하면 2의 보수 1010이 된다.
- 0110 — ㉠ 자체의 값이다.
- 0101 — 0110의 1의 보수(1001)도 2의 보수도 아니다.
- 1011 — 0110에 더하면 0001이 되어 2의 보수가 아니다.
옳지 않은 것은 여러 프로세스가 동시에 수행 상태에 있으면 교착상태 프로세스라고 한다는 설명이다.
교착상태는 프로세스들이 서로 상대가 점유한 자원을 기다리며 아무도 진행하지 못하는 상태이다. 여러 프로세스가 동시에 수행되는 것은 병행(다중 프로그래밍) 처리일 뿐이다.
- 운영체제 프로세스는 시스템 관리 기능을 맡는다 — 옳다.
- 사용자 프로세스는 응용 프로그램을 수행한다 — 옳다.
- 독립 프로세스는 다른 프로세스와 영향을 주고받지 않는다 — 옳다.
옳지 않은 것은 페이지 크기가 작아지면 페이지 테이블의 크기도 줄어든다는 설명이다.
같은 주소 공간을 더 작은 페이지로 나누면 페이지 수가 늘어나 페이지 테이블은 오히려 커진다.
- 주기억장치는 페이지와 같은 크기의 프레임으로 나눈다 — 옳다.
- 페이지가 클수록 마지막 페이지의 내부 단편화가 커진다 — 옳다.
- 페이지가 클수록 불필요한 데이터가 함께 적재될 가능성이 높다 — 옳다.
옳지 않은 것은 사용자는 자신이 이용하는 하드웨어만 유지보수하면 된다는 설명이다.
클라우드에서는 서버·저장소 등 자원을 서비스 제공자가 관리하므로, 사용자는 이용하는 자원의 하드웨어를 직접 유지보수하지 않는다.
- 인터넷의 고성능 서버에 필요할 때 접속해 서비스를 받는다 — 옳다.
- 하드웨어뿐 아니라 소프트웨어도 서비스(SaaS)된다 — 옳다.
- 스마트폰으로 무선 이용이 가능하다 — 옳다.

출력되는 값은 120이다.
순서도는 M=1, F=1에서 시작해 F=F×M을 하고, M이 N과 같지 않으면 M을 1 증가시켜 반복하므로 F = 1×2×…×N = N!을 구한다.
- M=1: F=1
- M=2: F=2
- M=3: F=6
- M=4: F=24
- M=5: F=120 → M==N이므로 출력
24는 4!, 720은 6!에 해당하는 값이다.
옳지 않은 것은 분산 처리 시스템에 대한 설명이다.
하나의 시스템에서 여러 프로세스를 동시에 수행하는 것은 다중 처리(또는 다중 프로그래밍)에 해당한다. 분산 처리 시스템은 네트워크로 연결된 여러 컴퓨터가 작업을 나누어 처리하는 시스템이다.
- 시분할 시스템 — 시간을 나누어 여러 사용자에게 할당한다는 설명이 옳다.
- 실시간 처리 시스템 — 지정된 시간 내 처리를 보장한다는 설명이 옳다.
- 다중 프로그래밍 시스템 — 여러 프로그램을 메모리에 적재해 동시에 실행되는 것처럼 처리한다는 설명이 옳다.
ㄱ. RISC 방식은 CISC 방식보다 처리속도의 향상을 도모할 수 있다.
ㄴ. CISC 방식의 프로세서는 RISC 방식의 프로세서보다 전력 소모가 적은 편이다.
ㄷ. RISC 방식의 프로세서는 CISC 방식의 프로세서보다 내부구조가 단순하다.
ㄹ. CISC 방식은 RISC 방식보다 단순하고 축약된 형태의 명령어를 갖고 있다.
옳은 것은 ㄱ과 ㄷ이다.
RISC는 단순한 고정 길이 명령어로 내부 구조가 단순하고 파이프라인 효율이 높아 처리 속도 향상을 꾀할 수 있다.
- ㄴ — 복잡한 명령어를 해독하는 회로가 많은 CISC가 전력 소모가 더 크다.
- ㄹ — 단순하고 축약된 명령어를 가진 것은 RISC이다. CISC는 복잡하고 다양한 명령어를 가진다.





토큰 d를 처리할 순간 스택에는 아래부터 *, (, /가 쌓여 있다(Top은 /).
식 a*((b+c)/d)*e를 왼쪽부터 처리한다.
- a 출력 → * push → ( push → ( push
- b 출력 → + push(위가 ( 이므로 그대로 쌓음) → c 출력
- ) 를 만나 ( 가 나올 때까지 pop → + 출력, 안쪽 ( 제거 → 스택: *, (
- / push(위가 ( 이므로 그대로 쌓음) → 스택: *, (, /
이 상태에서 d가 처리된다.
- *, (, (, +, / 스택 — 닫는 괄호에서 +와 ( 를 꺼내지 않은 상태이다.
- *, / 스택 — 아직 닫히지 않은 바깥 ( 까지 지운 상태이다.
- *, (, (, / 스택 — 닫는 괄호에서 안쪽 ( 를 제거하지 않은 상태이다.
옳지 않은 것은 디지털 서명에 대한 설명이다.
공용 네트워크를 사설 네트워크처럼 쓰게 하는 기술은 VPN이다. 디지털 서명은 송신자의 개인키로 서명해 작성자 인증·무결성·부인 방지를 제공하는 기법이다.
- 방화벽의 기본 기능은 패킷 필터링이다 — 옳다.
- 스니핑은 패킷을 가로채 내용을 엿보는 것이다 — 옳다.
- 보낸 사실을 부인하지 못하게 하는 것이 부인 방지이다 — 옳다.
옳지 않은 것은 메쉬 토폴로지의 메시지 전송 신뢰성이 높지 않다는 설명이다.
메쉬형은 회선이 많이 필요하지만 노드 간 대체 경로가 많아 일부 링크가 고장 나도 통신이 가능하므로 신뢰성이 가장 높다.
- 버스형은 한 노드의 고장이 전체에 영향을 거의 주지 않는다 — 옳다.
- 스타형은 중앙 노드 고장 시 전체 통신이 곤란해진다 — 옳다.
- 링형은 한 방향 전송(토큰 방식)으로 충돌이 없다 — 옳다.
옳지 않은 것은 IP가 오류제어와 흐름제어로 패킷 전달을 보장한다는 설명이다.
IP는 비연결형 최선형(best-effort) 프로토콜이어서 전달을 보장하지 않는다. 오류제어·흐름제어로 신뢰성을 보장하는 것은 TCP이다.
- ARP는 IP 주소를 물리 주소로 변환한다 — 옳다.
- TCP는 패킷 손실을 혼잡 신호로 보고 혼잡 제어를 한다 — 옳다.
- HTTP, FTP, SMTP는 전송 계층 위의 응용 계층에서 동작한다 — 옳다.
거리가 먼 것은 여러 프로세스 모형을 혼합한 방법은 사용하지 않는다는 설명이다.
실무에서는 프로젝트 특성에 맞춰 폭포수·프로토타입·나선형 모형 등을 혼합해 사용하는 경우가 많다. 나선형 모형 자체도 폭포수와 프로토타입의 장점을 결합한 것이다.
- 소프트웨어 공학의 목표는 양질의 소프트웨어 생산이다 — 옳다.
- 정확성·유지보수성·무결성·사용성은 품질 기준이다 — 옳다.
- 개발 작업을 자동화하는 도구가 CASE이다 — 옳다.
옳지 않은 것은 색상의 미묘한 차이 표현이 쉬워 풍경·인물 사진에 적합하다는 설명이다.
미세한 색 변화가 많은 사진은 픽셀 단위로 색을 저장하는 비트맵(래스터) 방식이 적합하다. 벡터 방식은 수학적 도형으로 표현해 로고·도안 등에 적합하다.
- 직선과 도형으로 이미지를 구성한다 — 옳다.
- 용량은 오브젝트 수와 함수 복잡도에 따라 정해진다 — 옳다.
- 확대·축소해도 깨짐이 거의 없다 — 옳다.
옳지 않은 것은 고속·고용량의 메모리나 CPU가 요구되지 않아 운영비를 줄일 수 있다는 설명이다.
DBMS는 많은 데이터를 동시에 관리하고 회복·보안 기능까지 수행하므로 고성능 하드웨어와 높은 운영비가 드는 것이 단점이다.
- 데이터의 독립성이 보장된다 — 옳다.
- 중복 저장을 줄여 일관성을 유지한다 — 옳다.
- 데이터베이스의 구성·저장·접근·관리를 위한 시스템 소프트웨어이다 — 옳다.
ㄱ. 정규화를 수행한다.
ㄴ. 두 수의 가수를 더한다.
ㄷ. 큰 지수에 맞춰 두 수의 지수가 같도록 조정한다.
수행 순서는 ㄷ→ㄴ→ㄱ이다.
부동소수점 덧셈은 지수 맞춤 → 가수 덧셈 → 정규화 순으로 한다.
- ㄷ(지수 조정) — 지수가 다르면 가수를 바로 더할 수 없으므로 작은 쪽 가수를 이동해 지수를 맞춘다.
- ㄴ(가수 덧셈) — 지수가 같아진 뒤 가수를 더한다.
- ㄱ(정규화) — 결과 가수를 정규화 형식으로 맞추고 지수를 조정한다.
<T1, Start> 시간 <T1, A, 900, 1000> ↓ <T1, Commit> <T4, Start> <T3, Start> <T2, Start> <검사점 연산(Checkpoint)> <T2, B, 2100, 2200> <T2, Commit> <T3, C, 1700, 1800> <T3, Abort> <T4, A, 600, 700> 시스템 실패
옳지 않은 것은 T4 : undo이다.
지연갱신은 트랜잭션이 커밋되기 전에는 변경 내용을 데이터베이스에 반영하지 않으므로, 회복 시 undo가 필요 없고 커밋된 트랜잭션만 redo한다.
- T1 — 검사점 이전에 커밋되어 이미 반영되었으므로 연산이 필요 없다.
- T2 — 검사점 이후 커밋되었으므로 redo한다.
- T3 — 철회되었고 변경이 반영된 적이 없으므로 연산이 필요 없다.
- T4 — 커밋되지 않아 변경이 반영되지 않았으므로 undo가 아니라 연산이 필요 없다.
옳은 것은 이동성의 한계를 극복하기 위해 IMT-2000 표준 기술이 사용되고 있다는 설명이다.
IMT-2000은 ITU가 정한 3세대 이동통신 국제 표준으로, 이동 중에도 고속 데이터 통신과 국제 로밍을 지원한다.
- Wi-Fi의 통신 범위는 수십 미터 수준으로 셀룰러망보다 좁다.
- Wi-Fi는 IEEE 802.11 표준에 기반한다. IEEE 802.3은 유선 이더넷이다.
- WiBro는 국내 개발 휴대인터넷 기술이지만 2.5G가 아니라 3.5세대 수준의 기술로 분류된다.
옳지 않은 것은 세마포어 연산에 바쁜 대기를 추가해 CPU 시간 낭비를 방지한다는 설명이다.
바쁜 대기(busy waiting)는 조건이 만족될 때까지 반복 검사하며 CPU를 낭비하는 방식이다. 낭비를 막으려면 대기 프로세스를 대기 큐에 넣어 잠재우고 signal 때 깨우는 방식으로 구현한다.
- 임계구역 문제를 해결하는 동기화 도구이다 — 옳다.
- 이진 세마포어와 계수형 세마포어가 있다 — 옳다.
- P(wait)와 V(signal) 연산으로만 접근하는 정수형 변수이다 — 옳다.
옳은 것은 루트 노드는 적어도 2개의 자식 노드를 갖는다는 설명이다.
차수 m인 B-tree에서 루트는 리프가 아닌 한 최소 2개의 자식을 가지며, 루트와 리프를 제외한 내부 노드는 최소 ⌈m/2⌉개의 자식을 갖는다.
- 인덱스 노드와 데이터 노드로 나뉘는 것은 B+ tree의 특징이다.
- 삽입·삭제 시 노드의 분할·병합이 일어나 노드 수가 변한다.
- 리프 노드는 자식이 없으므로 루트를 제외한 모든 노드가 ⌈m/2⌉개의 자식을 갖는 것은 아니다.