[9급 국가직 컴퓨터일반] 24년 1회차 기출문제 정답·해설 페이지

[9급 국가직 컴퓨터일반] 24년 1회차
    1[9급 국가직 컴퓨터일반] 24년 1회차
    컴퓨터에서 사용하는 정보량의 단위를 크기가 작은 것부터 큰 것 순서대로 바르게 나열한 것은?
    1
    EB, GB, PB, TB
    2
    EB, PB, GB, TB
    3
    GB, TB, EB, PB
    4
    GB, TB, PB, EB
    해설

    작은 것부터 바르게 나열한 것은 GB, TB, PB, EB 순서이다.

    정보량 단위는 KB → MB → GB → TB → PB → EB → ZB 순으로 커지며, 한 단계마다 210=10242^{10}=1024배(10진 접두어로는 1000배)씩 커진다.

    • EB, GB, PB, TB 순서는 가장 큰 EB를 맨 앞에 두어 틀리다.
    • EB, PB, GB, TB 순서도 큰 단위가 앞에 와서 틀리다.
    • GB, TB 다음에 EB를 PB보다 앞에 둔 나열은 PB가 EB보다 작다는 점에 어긋난다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    2[9급 국가직 컴퓨터일반] 24년 1회차
    다음 논리회로도에서 출력 F가 0이 되는 입력 조합을 바르게 연결한 것은?
    문제 이미지
    1
    ①
    2
    ②
    3
    ③
    4
    ④
    해설

    F는 X와 (Y XOR Z)의 OR이므로 F가 0이 되려면 X=0이면서 Y=Z여야 하며, 입력 X=0, Y=1, Z=1 조합이 이에 해당한다.

    F=X+(Y⊕Z)F = X + (Y \oplus Z)
    OR는 입력이 모두 0일 때만 0이고, XOR는 두 입력이 같을 때 0이다. X=0, Y=1, Z=1이면 F=0+(1⊕1)=0F = 0 + (1 \oplus 1) = 0이다.

    • X=0, Y=0, Z=1 — Y XOR Z가 1이므로 F=1이다.
    • X=0, Y=1, Z=0 — Y XOR Z가 1이므로 F=1이다.
    • X=1, Y=0, Z=0 — X가 1이므로 OR 출력 F=1이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    3[9급 국가직 컴퓨터일반] 24년 1회차
    암호화 및 복호화를 위하여 개인키와 공개키가 필요한 비대칭키 암호화 기법은?
    1
    AES
    2
    DES
    3
    RSA
    4
    SEED
    해설

    개인키와 공개키를 쓰는 비대칭키 암호화 기법은 RSA이다.

    RSA는 큰 수의 소인수분해의 어려움에 안전성을 두며, 공개키로 암호화한 것을 개인키로만 복호화할 수 있다.

    • AES는 하나의 비밀키로 암·복호화하는 대칭키 블록 암호이다.
    • DES는 56비트 키를 쓰는 대칭키 블록 암호이다.
    • SEED는 국내에서 개발된 대칭키 블록 암호이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    4[9급 국가직 컴퓨터일반] 24년 1회차
    OSI 모형의 네트워크 계층 프로토콜에 속하지 않는 것은?
    1
    ICMP
    2
    IGMP
    3
    IP
    4
    SLIP
    해설

    네트워크 계층 프로토콜이 아닌 것은 SLIP(Serial Line Internet Protocol)으로, 직렬 회선에서 IP 패킷을 캡슐화하는 데이터 링크 계층 프로토콜이다.

    나머지는 모두 IP 패킷 전달과 관련된 네트워크 계층 프로토콜이다.

    • ICMP는 오류·제어 메시지를 전달하는 네트워크 계층 프로토콜이다.
    • IGMP는 멀티캐스트 그룹을 관리하는 네트워크 계층 프로토콜이다.
    • IP는 주소 지정과 라우팅을 담당하는 네트워크 계층의 핵심 프로토콜이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    5[9급 국가직 컴퓨터일반] 24년 1회차
    클라우드 컴퓨팅 서비스에서 애플리케이션을 구축, 테스트, 설치할 수 있도록 통합환경을 제공하는 것은?
    1
    IaaS
    2
    NAS
    3
    PaaS
    4
    SaaS
    해설

    애플리케이션을 구축·테스트·설치할 수 있는 통합 환경을 제공하는 것은 PaaS(Platform as a Service)이다.

    PaaS는 운영체제·미들웨어·런타임·개발 도구 같은 개발 플랫폼을 제공해, 사용자는 인프라 관리 없이 애플리케이션 개발에 집중한다.

    • IaaS는 서버·스토리지·네트워크 같은 인프라 자원을 제공한다.
    • NAS는 네트워크에 연결된 파일 저장 장치로 클라우드 서비스 모델이 아니다.
    • SaaS는 완성된 소프트웨어를 서비스로 제공한다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    6[9급 국가직 컴퓨터일반] 24년 1회차
    10진수 뺄셈 (7-12)를 2의 보수를 이용하여 계산한 결과는? (단, 저장 공간은 8비트로 한다)
    1
    0000 0100
    2
    0000 0101
    3
    1111 0101
    4
    1111 1011
    해설

    계산 결과는 1111 1011로, 8비트 2의 보수 표현에서 −5-5이다.

    뺄셈은 빼는 수의 2의 보수를 더한다. 12=0000 110012 = 0000\,1100을 반전하면 1111 00111111\,0011, 여기에 1을 더해 −12=1111 0100-12 = 1111\,0100이다.
    7=0000 01117 = 0000\,0111과 더하면 0000 0111+1111 0100=1111 10110000\,0111 + 1111\,0100 = 1111\,1011이다.

    검산하면 5=0000 01015 = 0000\,0101의 2의 보수가 1111 10111111\,1011이므로 결과는 음수 5가 맞다.

    • 0000 0100과 0000 0101은 부호 비트가 0인 양수여서 음수 결과일 수 없다.
    • 1111 0101은 −11-11을 나타내므로 틀리다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    7[9급 국가직 컴퓨터일반] 24년 1회차
    RAID(Redundant Array of Inexpensive Disks) 레벨에 대한 설명으로 옳지 않은 것은?
    1
    RAID 레벨 0: 패리티 없이 데이터를 분산 저장한다.
    2
    RAID 레벨 1: 패리티 비트를 사용하여 오류를 검출한다.
    3
    RAID 레벨 2: 해밍 코드를 사용하여 오류 검출 및 정정이 가능하다.
    4
    RAID 레벨 5: 데이터와 함께 패리티 정보를 블록 단위로 분산 저장한다.
    해설

    옳지 않은 것은 RAID 1이 패리티 비트로 오류를 검출한다는 설명이다. RAID 1은 패리티 없이 미러링으로 같은 데이터를 두 디스크에 복제한다.

    패리티를 쓰는 것은 RAID 3·4·5 등이며, RAID 1은 한 디스크가 고장 나도 복제본으로 복구한다.

    • RAID 0이 패리티 없이 데이터를 분산(스트라이핑) 저장한다는 설명은 옳다.
    • RAID 2가 해밍 코드로 오류를 검출·정정한다는 설명은 옳다.
    • RAID 5가 데이터와 패리티를 블록 단위로 분산 저장한다는 설명은 옳다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    8[9급 국가직 컴퓨터일반] 24년 1회차
    RISC와 비교하여 CISC의 특징으로 옳지 않은 것은?
    1
    명령어의 종류가 많다.
    2
    명령어의 길이가 고정적이다.
    3
    명령어 파이프라인이 비효율적이다.
    4
    회로 구성이 복잡하다.
    해설

    CISC의 특징으로 옳지 않은 것은 명령어 길이가 고정적이다는 설명이다. CISC는 가변 길이 명령어를 쓰고, 고정 길이는 RISC의 특징이다.

    CISC는 복잡하고 다양한 명령어를 마이크로프로그램으로 구현하므로 명령어마다 길이와 실행 사이클이 다르다.

    • 명령어의 종류가 많다는 것은 CISC의 특징이다.
    • 명령어 길이와 실행 시간이 제각각이라 파이프라인이 비효율적이라는 것은 CISC의 특징이다.
    • 회로 구성이 복잡하다는 것은 CISC의 특징이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    9[9급 국가직 컴퓨터일반] 24년 1회차
    다음 파이썬 코드는 이진 탐색을 이용하여 자연수 데이터를 탐색하는 함수이다. (가), (나)에 들어갈 내용을 바르게 연결한 것은? (단, ds는 오름차순으로 정렬된 중복 없는 자연수 리스트이고, key는 찾고자 하는 값이다)
    def binary(ds, key):
        low = 0
        high = len(ds) - 1
        while low <= high:
            mid = (low+high) // 2
            if key == ds[mid]:
                return mid
            elif key < ds[mid]:
                (가)
            else:
                (나)
        return
    (가)(나)
    ①high = mid - 1low = mid - 1
    ②high = mid - 1low = mid + 1
    ③high = mid + 1low = mid - 1
    ④high = mid + 1low = mid + 1
    1
    ①
    2
    ②
    3
    ③
    4
    ④
    해설

    (가)는 high = mid - 1, (나)는 low = mid + 1이다.

    key가 ds[mid]보다 작으면 찾는 값은 mid 왼쪽에 있으므로 상한을 mid 바로 앞으로 줄이고, 크면 오른쪽에 있으므로 하한을 mid 바로 뒤로 올린다. 이미 비교한 mid를 범위에서 빼야 구간이 줄어 low <= high 조건으로 반복이 끝난다.

    • high = mid - 1, low = mid - 1 연결 — key가 오른쪽에 있을 때 하한이 오히려 왼쪽으로 가서 구간이 줄지 않고 반복이 끝나지 않을 수 있다.
    • high = mid + 1, low = mid - 1 연결 — 두 경우 모두 찾는 방향과 반대로 경계를 옮겨 범위가 줄지 않는다.
    • high = mid + 1, low = mid + 1 연결 — key가 왼쪽에 있을 때 상한을 mid 오른쪽으로 넓혀 범위가 줄지 않는다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    10[9급 국가직 컴퓨터일반] 24년 1회차
    3개의 페이지 프레임으로 구성된 기억장치에서 다음과 같은 참조열 순으로 페이지가 참조될 때, 페이지 부재 발생 횟수가 가장 적은 교체 방법은? (단, 초기 페이지 프레임은 비어 있으며, 페이지 교체 과정에서 사용 빈도수가 동일한 경우는 가장 오래된 것을 먼저 교체한다)
    참조열: 2 1 2 3 1 4 5 1 4 3
    1
    FIFO(First In First Out)
    2
    LFU(Least Frequently Used)
    3
    LRU(Least Recently Used)
    4
    MFU(Most Frequently Used)
    해설

    참조열에 각 기법을 적용하면 페이지 부재가 FIFO 7회, LFU 7회, LRU 6회, MFU 7회로 LRU가 가장 적다.

    LRU는 2, 1, 3을 적재한 뒤 4에서 가장 오래 안 쓴 2를, 5에서 3을 내보내 {1, 4, 5}가 되고 이어지는 1과 4는 적중한다. 마지막 3에서 5를 내보내므로 부재는 2, 1, 3, 4, 5, 3에서 일어난 6회이다.

    • FIFO — 4에서 2, 5에서 1, 1에서 3, 3에서 4를 차례로 교체해 부재가 7회이다.
    • LFU — 사용 횟수가 적은 3, 4, 5, 4를 차례로 내보내 두 번째 4와 마지막 3에서도 부재가 나 7회이다.
    • MFU — 자주 쓴 2와 1을 먼저 내보내 다시 참조된 1에서 부재가 나고, 마지막 3에서도 부재가 나 7회이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    11[9급 국가직 컴퓨터일반] 24년 1회차
    교착상태(deadlock)가 발생하기 위한 필요조건에 해당하지 않는 것은?
    1
    상호 배제(mutual exclusion)
    2
    선점(preemption)
    3
    순환 대기(circular wait)
    4
    점유와 대기(hold and wait)
    해설

    교착상태의 필요조건이 아닌 것은 선점이다. 필요조건은 비선점(no preemption)이다.

    교착상태는 상호 배제, 점유와 대기, 비선점, 순환 대기의 네 조건이 동시에 성립할 때 발생하며, 자원을 강제로 빼앗을 수 있으면(선점) 교착상태가 풀린다.

    • 상호 배제는 한 자원을 한 프로세스만 쓸 수 있다는 필요조건이다.
    • 순환 대기는 프로세스들이 원형으로 서로의 자원을 기다리는 필요조건이다.
    • 점유와 대기는 자원을 가진 채 다른 자원을 기다리는 필요조건이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    12[9급 국가직 컴퓨터일반] 24년 1회차
    다음 CPU 스케줄링 알고리즘 중 비선점형 알고리즘만을 모두 고르면?
    • ㄱ. FCFS(First Come First Served) 스케줄링
    • ㄴ. HRN(Highest Response-ratio Next) 스케줄링
    • ㄷ. RR(Round Robin) 스케줄링
    • ㄹ. SRT(Shortest Remaining Time) 스케줄링
    1
    ㄱ, ㄴ
    2
    ㄱ, ㄹ
    3
    ㄴ, ㄷ
    4
    ㄷ, ㄹ
    해설

    비선점형 알고리즘은 FCFS와 HRN이다.

    FCFS는 도착 순서대로, HRN은 (대기시간+서비스시간)/서비스시간으로 구한 응답 비율이 높은 순서로 프로세스를 고르며, 일단 CPU를 받으면 끝날 때까지 빼앗기지 않는다.

    • RR — 시간 할당량이 끝나면 CPU를 빼앗아 준비 큐 뒤로 보내는 선점형이다.
    • SRT — 남은 실행 시간이 더 짧은 프로세스가 도착하면 CPU를 넘기는 SJF의 선점형 버전이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    13[9급 국가직 컴퓨터일반] 24년 1회차
    네트워크 접속 형태 중 트리형 토폴로지(topology)에 대한 설명으로 옳지 않은 것은?
    1
    네트워크의 확장이 용이하다.
    2
    병목 현상이 나타나지 않는다.
    3
    분산처리 방식을 구현할 수 있다.
    4
    중앙의 서버 컴퓨터에 장애가 발생하면 전체 네트워크에 영향을 준다.
    해설

    옳지 않은 것은 병목 현상이 나타나지 않는다는 설명이다. 트리형은 상위 노드로 트래픽이 모이므로 병목 현상이 생길 수 있다.

    트리형은 중앙 노드에서 계층적으로 가지를 뻗는 구조라 하위 노드 간 통신도 상위 노드를 거친다.

    • 가지를 추가하는 방식이라 네트워크 확장이 용이하다는 설명은 옳다.
    • 계층별로 처리를 나누어 분산처리 방식을 구현할 수 있다는 설명은 옳다.
    • 중앙(최상위) 노드에 장애가 나면 전체 네트워크에 영향을 준다는 설명은 옳다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    14[9급 국가직 컴퓨터일반] 24년 1회차
    IPv4 주소를 클래스별로 분류했을 때, B 클래스에 해당하는 것은?
    1
    12.23.34.45
    2
    111.111.11.11
    3
    128.128.128.128
    4
    222.111.222.111
    해설

    B 클래스에 해당하는 것은 128.128.128.128이다.

    클래스는 첫 옥텟으로 구분하며, A 클래스는 0~127, B 클래스는 128~191, C 클래스는 192~223이다.

    • 12.23.34.45는 첫 옥텟이 12이므로 A 클래스이다.
    • 111.111.11.11은 첫 옥텟이 111이므로 A 클래스이다.
    • 222.111.222.111은 첫 옥텟이 222이므로 C 클래스이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    15[9급 국가직 컴퓨터일반] 24년 1회차
    다음 설명에 해당하는 모듈의 결합도는?
    한 모듈이 다른 모듈의 내부 기능 및 자료를 직접 참조하거나 사용하는 경우로, 한 모듈에서 다른 모듈의 내부로 제어가 이동하는 경우도 이에 해당한다.
    1
    공통 결합도(common coupling)
    2
    내용 결합도(content coupling)
    3
    외부 결합도(external coupling)
    4
    자료 결합도(data coupling)
    해설

    한 모듈이 다른 모듈의 내부 기능·자료를 직접 참조하거나 내부로 제어가 이동하는 경우는 내용 결합도이다.

    내용 결합도는 결합도 중 가장 강한(가장 바람직하지 않은) 단계로, 한 모듈을 고치면 그 내부를 참조하는 모듈도 함께 고쳐야 한다.

    • 공통 결합도 — 여러 모듈이 전역 변수 같은 공통 데이터 영역을 함께 쓰는 경우이다.
    • 외부 결합도 — 모듈이 외부에 선언된 데이터나 외부 장치·통신 형식을 참조하는 경우이다.
    • 자료 결합도 — 필요한 데이터만 매개변수로 주고받는 가장 약한(바람직한) 결합이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    16[9급 국가직 컴퓨터일반] 24년 1회차
    다음 <정보>를 이용하여 아래에 주어진 <연산>을 차례대로 수행한 후의 스택 상태는?
    <정 보>
    • Create(s, n): 스택을 위한 크기 n의 비어 있는 배열 s를 생성하고, top의 값을 -1로 지정한다.
    • Push(s, e): top을 1 증가시킨 후, s[top]에 요소 e를 할당한다.
    • Pop(s): s[top]의 요소를 삭제한 후, top을 1 감소시킨다.
    <연 산>
    Create(s, 4);
    Push(s, 'S');
    Push(s, 'T');
    Pop(s);
    Push(s, 'R');
    Push(s, 'P');
    Push(s, 'Q');
    Pop(s);
    1
    2
    3
    4
    해설

    연산 후 스택에는 인덱스 0부터 S, R, P가 남고 top은 2(P의 위치)를 가리킨다.

    Create로 top=-1이 된다. Push S로 top=0, Push T로 top=1, Pop으로 T를 삭제한 뒤 top=0이 된다.
    Push R로 top=1, Push P로 top=2, Push Q로 top=3, Pop으로 Q를 삭제한 뒤 top=2가 된다.

    • 인덱스 0에 P, 2에 S가 있고 top이 2인 상태 — 먼저 넣은 S가 바닥인 인덱스 0에 있어야 하므로 틀리다.
    • 인덱스 0부터 S, R, P이고 top이 빈 인덱스 3을 가리키는 상태 — Pop은 삭제 후 top을 1 감소시키므로 top은 마지막 요소 P의 인덱스 2여야 한다.
    • 인덱스 0에 P, 2에 S가 있고 top이 3인 상태 — 요소 순서와 top 위치가 모두 틀렸다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    17[9급 국가직 컴퓨터일반] 24년 1회차
    다음은 전체 버킷 개수가 11개이고 버킷당 1개의 슬롯을 가지는 빈 해시 테이블이다. 입력키 12, 33, 13, 55, 23, 83, 11을 순서대로 저장하였을 때, 입력키 23이 저장된 버킷 번호는? (단, 해시 함수는 h(k)=k mod 11이고, 충돌 해결은 선형 조사법을 사용한다)
    버킷 번호012345678910
    슬롯
    1
    1
    2
    2
    3
    3
    4
    4
    해설

    입력키 23은 버킷 4에 저장된다.

    h(k)=k mod 11로 차례로 넣으면 12→1, 33→0, 13→2에 저장된다. 55는 55 mod 11=0인데 0이 차 있어 선형 조사로 1, 2를 지나 3에 저장된다.

    23은 23 mod 11=1인데 1, 2, 3이 모두 차 있으므로 다음 빈 버킷인 4에 저장된다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    18[9급 국가직 컴퓨터일반] 24년 1회차
    다음 파이썬 코드는 std 변수에 저장된 각각의 Student 객체에 대해 학생 id 및 국어, 영어 성적의 평균을 출력한다. (가)~(다)에 들어갈 내용을 바르게 연결한 것은?
    class Student:
        def __init__(self, id, kor, eng):
            self.id = id
            self.kor = kor
            self.eng = eng
    
        def sum(self):
            return self.kor + self.eng
    
        def avg(self):
            return (가)
    
    std = [
        Student("ok", 90, 100),
        Student("pk", 80, 90),
        Student("rk", 80, 80)
    ]
    
    for to in (나):
        print((다))
    (가)(나)(다)
    ①self.sum() / 2stdto.id, to.avg()
    ②self.sum() / 2StudentStudent.id, Student.avg()
    ③sum(self) / 2stdto.id, to.avg(self)
    ④sum(self) / 2StudentStudent.id, Student.avg(self)
    1
    ①
    2
    ②
    3
    ③
    4
    ④
    해설

    (가) self.sum() / 2, (나) std, (다) to.id, to.avg()로 연결해야 한다.

    메서드 안에서 같은 객체의 메서드는 self.sum()으로 호출하고, 반복문은 객체 리스트 std를 순회하며 각 객체 to의 id와 avg()를 출력해야 한다. 메서드를 호출할 때 self는 자동으로 전달되므로 인자로 넘기지 않는다.

    • self.sum() / 2, Student, Student.id·Student.avg() 연결 — 클래스 Student 자체는 순회할 수 없고 id도 인스턴스 속성이라 클래스에서 읽을 수 없다.
    • sum(self) / 2, std, to.id·to.avg(self) 연결 — sum(self)는 메서드가 아닌 내장 함수 sum에 객체를 넘겨 오류가 나고, 반복문의 self는 정의되지 않은 이름이다.
    • sum(self) / 2, Student, Student.id·Student.avg(self) 연결 — 위 두 연결의 문제를 모두 가진다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    19[9급 국가직 컴퓨터일반] 24년 1회차
    DBMS에서의 병행 수행 및 병행 제어에 대한 설명으로 옳은 것은?
    1
    2단계 로킹 규약을 적용하면 트랜잭션 스케줄의 직렬 가능성을 보장할 수 있으나 교착상태가 발생할 수도 있다.
    2
    트랜잭션이 데이터에 공용 lock 연산을 수행하면 해당 데이터에 read, write 연산을 모두 수행할 수 있다.
    3
    연쇄 복귀는 하나의 트랜잭션이 여러 개의 데이터 변경 연산을 수행할 때 일관성 없는 상태의 데이터베이스에서 데이터를 가져와 연산을 수행함으로써 모순된 결과가 발생하는 것이다.
    4
    갱신 분실은 트랜잭션이 완료되기 전에 장애가 발생하여 rollback 연산을 수행하면, 이 트랜잭션이 장애 발생 전에 변경한 데이터를 가져가 변경 연산을 수행한 또 다른 트랜잭션에도 rollback 연산을 수행하여야 한다는 것이다.
    해설

    옳은 것은 2단계 로킹 규약은 직렬 가능성을 보장하지만 교착상태가 발생할 수 있다는 설명이다.

    2단계 로킹은 잠금을 얻는 확장 단계와 해제하는 축소 단계를 나누어 직렬 가능성을 보장하지만, 서로 상대의 잠금을 기다리는 교착상태는 막지 못한다.

    • 공용(shared) lock을 건 트랜잭션은 read만 할 수 있고, read와 write를 모두 하려면 전용(exclusive) lock이 필요하다.
    • 일관성 없는 상태의 데이터를 읽어 모순된 결과가 생기는 것은 연쇄 복귀가 아니라 모순성(불일치) 문제이다.
    • 장애로 rollback한 트랜잭션이 변경한 데이터를 읽은 다른 트랜잭션까지 rollback해야 하는 것은 갱신 분실이 아니라 연쇄 복귀이다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.
    20[9급 국가직 컴퓨터일반] 24년 1회차
    다음 C 프로그램의 출력 결과는?
    #include <stdio.h>
    
    int recursive(int n) {
        int sum;
        if (n > 2) {
            sum = recursive(n-1) + recursive(n-2);
            printf("%d ", sum);
        }
        else
            sum = n;
        return sum;
    }
    
    int main(void) {
        int result;
        result = recursive(5);
        printf("%d", result);
        return 0;
    }
    1
    1 2 3 5 7
    2
    1 3 5 7 9
    3
    3 3 5 9 9
    4
    3 5 3 8 8
    해설

    출력 결과는 3 5 3 8 8이다.

    n>2일 때만 두 호출의 합을 구해 출력하고, n이 2 이하이면 n을 그대로 반환한다.
    recursive(5)는 recursive(4)를 먼저 호출하고, recursive(4) 안의 recursive(3)=2+1=3을 출력한 뒤 recursive(4)=3+2=5를 출력한다.
    이어서 recursive(5)의 두 번째 항 recursive(3)=3을 다시 출력하고 recursive(5)=5+3=8을 출력한다.

    main에서 반환값 8을 한 번 더 출력하므로 전체 출력은 3 5 3 8 8이 된다.

    오류나 개정된 내용이 보이면 알려주세요

    메모
    아직 메모가 없어요. 위 버튼으로 첫 메모를 남겨보세요.

[9급 국가직 컴퓨터일반] 24년 1회차 시험지 PDF 다운로드·인쇄 →

전 회차를 한 권으로 — 9급 국가직 컴퓨터일반 기출문제 PDF 전자책(문제집·정답해설집) →

[9급 국가직 컴퓨터일반] 24년 1회차 정답과 해설은 무료인가요?

이 페이지의 20문항 정답과 해설은 로그인 없이 무료로 볼 수 있습니다. 무제한 풀이·실전 모의고사·PDF 출력·전자책 다운로드는 베이직 플랜에 포함됩니다.

이 회차를 CBT 로 직접 풀어볼 수 있나요?

9급 국가직 컴퓨터일반 기출문제 암기장에서 이 회차를 회차별·랜덤으로 풀고 오답노트에 자동으로 모을 수 있습니다. 9급 국가직 컴퓨터일반 기출문제 풀러 가기 →

시험지 PDF 나 전자책으로도 볼 수 있나요?

이 회차의 인쇄용 시험지 PDF 와, 전 회차를 문제집·정답해설집으로 묶은 PDF 전자책을 제공합니다. 9급 국가직 컴퓨터일반 기출문제 PDF 전자책 보기 →

[9급 국가직 컴퓨터일반] 24년 1회차 문항별 상세 페이지 전체 보기