9급 지방직 공무원 서울시 컴퓨터일반 필기 기출문제복원 (2016-06-25)

9급 지방직 공무원 서울시 컴퓨터일반 2016-06-25 필기 기출문제 해설

이 페이지는 9급 지방직 공무원 서울시 컴퓨터일반 2016-06-25 기출문제를 CBT 방식으로 풀이하고 정답 및 회원들의 상세 해설을 확인할 수 있는 페이지입니다.

9급 지방직 공무원 서울시 컴퓨터일반
(2016-06-25 기출문제)

목록

1과목: 과목 구분 없음

1. 다음 논리회로에서 A=1010, B=0010일 때, S에 출력되는 값은?

  1. 1011
  2. 1101
  3. 0111
  4. 1110
(정답률: 62%)
  • 제시된 논리회로 의 논리식을 분석하면 $S = (A \oplus \overline{B}) \text{ AND } ((A \oplus \overline{B}) \text{ OR } \overline{A \text{ AND } B})$ 입니다. 하지만 식을 단순화하면 $S = A \oplus \overline{B}$와 동일한 결과가 나옵니다.
    A=1010, B=0010일 때 각 비트별로 계산하면:
    1 $\oplus$ 1 = 0
    0 $\oplus$ 1 = 1
    1 $\oplus$ 0 = 1
    0 $\oplus$ 0 = 1
    따라서 최종 출력 S는 0111 입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

2. 현재 실행 중인 프로세스에 할당된 CPU사용권을 다른 프로세스에게 할당하려면, 현재 실행 중인 프로세스의 실행 정보를 저장하고 다음으로 실행할 프로세스의 실행정보를 가져오는 과정이 필요하다. 이 과정을 무엇이라고 하는가?

  1. 컨텍스트 스위칭(Context Switching)
  2. 가상메모리(Virtual Memory)
  3. 교체정책(Replacement Strategy)
  4. 디스패치(Dispatch)
(정답률: 81%)
  • CPU가 현재 실행 중인 프로세스의 상태(Context)를 PCB(Process Control Block)에 저장하고, 다음에 실행할 프로세스의 상태를 복구하여 실행권을 넘겨주는 과정을 컨텍스트 스위칭(Context Switching)이라고 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

3. 다음 중 유효한 SQL 문장이 아닌 것은?

  1. SELECT * FROM Lawyers WHERE firmName LIKE '% and %';
  2. SELECT firmLoc, COUNT(*) FROM Firms WHERE employees < 100;
  3. SELECT COUNT(*) FROM Firms WHERE employees < 100;
  4. SELECT firmLoc, SUM(employees) FROM Firms GROUP BY firmLoc WHERE SUM(employees) < 100;
(정답률: 78%)
  • SQL에서 집계 함수(SUM, COUNT 등)를 사용한 조건절은 WHERE 절이 아니라 HAVING 절에 작성해야 합니다.
    SELECT firmLoc, SUM(employees) FROM Firms GROUP BY firmLoc WHERE SUM(employees) < 100; 문장은 WHERE 절에 집계 함수를 사용했으므로 문법적으로 유효하지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

4. 다음 중 나머지 셋과 역할 기능이 다른 하나는?

  1. Array processor
  2. DMA
  3. GPU
  4. SIMD
(정답률: 59%)
  • Array processor, GPU, SIMD는 모두 대량의 데이터를 동시에 처리하는 병렬 처리 방식과 관련이 있는 기술입니다.
    반면 DMA는 CPU의 개입 없이 주변 장치와 메모리가 직접 데이터를 주고받게 하여 CPU의 부하를 줄이는 데이터 전송 방식이므로 성격이 다릅니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

5. 다음은 IPv6에 대한 설명이다. 옳지 않은 것은?

  1. 기존의 IP 주소 공간이 빠른 속도로 고갈되어 왔기 때문에 고안되었다.
  2. IPv6는 IP 주소 크기를 기존의 4바이트에서 6바이트로 확장했다.
  3. IPv6는 유니캐스트, 멀티캐스트 주소뿐만 아니라 새로운 주소 형태인 애니캐스트 주소가 도입되었다.
  4. 네트워크 프로토콜을 바꾼다는 것은 매우 어렵기 때문에 IPv6로의 전환을 위해 여러 방법들이 고안되었다.
(정답률: 83%)
  • IPv6는 IPv4의 주소 고갈 문제를 해결하기 위해 도입되었으며, 주소 크기를 획기적으로 확장했습니다.
    IPv4는 4바이트(32비트)를 사용하지만, IPv6는 16바이트(128비트)를 사용하여 거의 무한한 주소 공간을 제공합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

6. 다음 정렬 알고리즘 중 최악의 경우에 시간복잡도가 가장 낮은 것은?

  1. 버블 정렬(Bubble sort)
  2. 삽입 정렬(Insertion sort)
  3. 퀵 정렬(Quick sort)
  4. 힙 정렬(Heap sort)
(정답률: 66%)
  • 정렬 알고리즘의 최악의 경우 시간복잡도를 비교하면 힙 정렬이 가장 효율적입니다.
    버블, 삽입, 퀵 정렬(최악의 경우)은 $O(n^2)$의 시간복잡도를 가지지만, 힙 정렬은 최악의 경우에도 $O(n \log n)$을 보장합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

7. 다음 C 프로그램의 실행 결과는?

  1. Good morning
    C-language
  2. morning
    a
  3. morning
    g
  4. morning
    u
(정답률: 71%)
  • 포인터 연산을 통해 문자열의 특정 위치부터 출력하거나 특정 문자를 추출하는 문제입니다.
    첫 번째 printf 문에서 array1[0]은 "Good morning"을 가리키며, 여기에 5를 더하면 6번째 문자인 'm'부터 시작하는 "morning"이 출력됩니다.
    두 번째 printf 문에서 array1[1]은 "C language"를 가리키며, 여기에 6을 더한 위치의 값(\*)을 가져오면 7번째 문자인 'u'가 출력됩니다.
    따라서 결과는 morning
    u 가 됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

8. 메모리 크기가 200KB인 시스템에서 요구 페이징(demand paging)으로 가상 메모리(virtual memory)를 구현한다고 하자. 페이지 크기가 2KB이고 페이지 테이블(page table)의 각 항목이 3바이트라고 하면, 25KB 크기의 프로세스를 위한 최소 페이지 테이블의 크기는 어떻게 되는가?

  1. 25바이트
  2. 39바이트
  3. 60바이트
  4. 75바이트
(정답률: 64%)
  • 프로세스의 크기를 페이지 크기로 나누어 필요한 페이지 수를 구한 뒤, 여기에 페이지 테이블 항목 하나당 크기를 곱하여 전체 테이블 크기를 계산합니다.
    ① [기본 공식]
    $$\text{Table Size} = \lceil \frac{\text{Process Size}}{\text{Page Size}} \rceil \times \text{Entry Size}$$
    ② [숫자 대입]
    $$\text{Table Size} = \lceil \frac{25\text{KB}}{2\text{KB}} \rceil \times 3\text{bytes} = 13 \times 3\text{bytes}$$
    ③ [최종 결과]
    $$\text{Table Size} = 39\text{bytes}$$
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

9. 다음 그래프에서 최소 비용의 ‘신장 트리’ 값은 얼마인가?

  1. 16
  2. 20
  3. 23
  4. 26
(정답률: 82%)
  • 최소 신장 트리(MST)를 구하는 문제입니다. 크루스칼 알고리즘을 사용하여 가중치가 가장 작은 간선부터 사이클이 생기지 않게 선택합니다.
    1. 간선 BC(2) 선택
    2. 간선 DE(3) 선택
    3. 간선 DF(4) 선택
    4. 간선 CD(6) 선택
    5. 간선 AB(9) 선택
    총 비용: $2 + 3 + 4 + 6 + 9 = 24$이나, 이미지 내 최적 경로 재분석 시 BC(2), DE(3), DF(4), CD(6), AD(8)를 선택하면 $2+3+4+6+8 = 23$이 됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

10. 라우팅 알고리즘은 라우터에 패킷이 도착했을 때 포워딩 테이블을 검색하고 패킷이 전달될 인터페이스를 결정하는 알고리즘이다. 다음 중 라우팅 알고리즘이 아닌 것은?

  1. RIP(Routing Information Protocol)
  2. OSPF(Open Shortest Path First)
  3. CDMA(Code Division Multiple Access)
  4. BGP(Border Gateway Protocol)
(정답률: 86%)
  • 라우팅 알고리즘은 네트워크 상에서 최적의 경로를 결정하는 프로토콜입니다. RIP, OSPF, BGP는 모두 대표적인 라우팅 프로토콜입니다.
    CDMA(Code Division Multiple Access)는 코드 분할 다중 접속 방식으로, 라우팅이 아닌 무선 통신 전송 기술입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

11. 암달(Amdahl)의 법칙은 컴퓨터 시스템의 일부를 개선할 때 전체적으로 얼마만큼의 최대 성능 향상을 기대할 수 있는지를 예측하는 데 사용된다. 만약 특정 응용프로그램의 75%가 멀티코어(Multicore)를 이용한 병렬 수행이 가능하고 나머지 25%는 코어의 수가 증가해도 순차 실행만 가능하다는 전제 하에, 컴퓨팅 코어(Core)의 수를 4개로 늘릴 때 기대할 수 있는 최대 성능 향상은 약 몇 배인가?

  1. 약 1.28배
  2. 약 2.28배
  3. 약 3.28배
  4. 약 4.28배
(정답률: 61%)
  • 암달의 법칙은 병렬화 가능한 부분의 성능 향상과 순차 실행 부분의 한계를 고려하여 전체 성능 향상도를 계산합니다.
    ① [기본 공식] $S = \frac{1}{(1 - P) + \frac{P}{N}}$
    ② [숫자 대입] $S = \frac{1}{(1 - 0.75) + \frac{0.75}{4}}$
    ③ [최종 결과] $S = 2.28$
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

12. <보기> 중 우리가 흔히 인터넷을 통해 비용을 지불하거나 혹은 무료로 사용하는, 클라우드 저장 서버에 대한 분류로 옳은 것을 모두 고르면?

  1. ㄱ, ㄷ
  2. ㄱ, ㅁ
  3. ㄴ, ㄷ
  4. ㄴ, ㄹ
(정답률: 63%)
  • 일반 사용자가 인터넷을 통해 서버 자원을 빌려 쓰는 서비스는 Public cloud이며, 이를 통해 제공되는 인프라 서비스는 Infrastructure as a service(Iaas)입니다.


    오답 노트

    Private cloud: 특정 기업/조직 내부에서만 사용하는 전용 클라우드
    Software as a service(SaaS): 소프트웨어 애플리케이션을 서비스로 제공
    Platform as a service(PaaS): 애플리케이션 개발 및 실행 환경을 제공
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

13. 16진수로 표현된 B9E(16)를 2진수로 표현하면 다음 중 무엇인가?

  1. 1100 0101 1101 (2)
  2. 0101 0101 1001 (2)
  3. 1011 1001 1110 (2)
  4. 1110 0101 1101 (2)
(정답률: 94%)
  • 16진수 한 자리는 2진수 4자리로 변환됩니다. 각 자리수를 2진수로 변환하여 나열하면 됩니다.
    B $\rightarrow$ 1011, 9 $\rightarrow$ 1001, E $\rightarrow$ 1110
    따라서 1011 1001 1110 입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

14. 다음 프로그램의 구성 요소들 중 프로세스 내에서 생성한 스레드들 사이에 공유되지 않는 것을 모두 고르면?

  1. ㄱ, ㄴ
  2. ㄱ, ㄹ
  3. ㄴ, ㄷ
  4. ㄷ, ㄹ
(정답률: 80%)
  • 멀티스레드 환경에서 스레드들은 프로세스의 자원인 힙(Heap) 메모리와 전역 변수(Global variables)를 공유하지만, 각 스레드의 독립적인 실행 흐름을 위해 레지스터(Register)와 스택(Stack) 메모리는 개별적으로 할당되어 공유되지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

15. 다음 중 Use case diagram에서 사용하는 기본 요소가 아닌 것은?

(정답률: 77%)
  • Use case diagram의 기본 요소는 액터(Actor), 유스케이스(Use Case), 시스템 경계(System Boundary), 관계(Relationship)입니다. 형태의 단순 직사각형은 유스케이스 다이어그램의 표준 기본 요소가 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

16. 가상메모리(Virtual Memory)를 효과적으로 제공하기 위해 Core i7과 같은 프로세서 내부에 있는 장치는 무엇인가?

  1. TLB(Translation Lookaside Buffer)
  2. 캐시(Cache)
  3. 페이지 테이블(Page Table)
  4. 스왑 스페이스(Swap Space)
(정답률: 63%)
  • TLB(Translation Lookaside Buffer)는 가상 주소를 물리 주소로 변환하는 과정에서 발생하는 페이지 테이블 접근 시간을 줄이기 위해 프로세서 내부에 위치한 고속 캐시 메모리입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

17. 다음 중 C 프로그래밍 언어의 식별자로 사용할 수 없는 것은?

  1. 3id
  2. My_ID
  3. __yes
  4. K
(정답률: 65%)
  • C 언어의 식별자 명명 규칙에 따라, 식별자는 영문자, 숫자, 언더바(_)로 구성될 수 있지만 반드시 숫자로 시작할 수 없습니다.

    오답 노트

    My_ID, __yes, K: 영문자나 언더바로 시작하므로 사용 가능한 식별자입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

18. 3개의 page를 수용할 수 있는 메모리가 있으며, 현재 완전히 비어 있다. 어느 프로그램이 <보기>와 같이 page 번호를 요청했을 때, LRU(Least-Recently-Used)를 사용할 경우 몇 번의 page-fault가 발생하는가?

  1. 6번
  2. 5번
  3. 4번
  4. 3번
(정답률: 75%)
  • LRU(Least-Recently-Used) 알고리즘은 가장 오랫동안 사용되지 않은 페이지를 먼저 교체하는 방식입니다. 메모리 크기가 3일 때 요청 순서 2, 3, 2, 1, 5, 2, 4, 5에 따른 변화는 다음과 같습니다.
    1. 2 요청: [2] (Fault)
    2. 3 요청: [2, 3] (Fault)
    3. 2 요청: [3, 2] (Hit)
    4. 1 요청: [3, 2, 1] (Fault)
    5. 5 요청: [2, 1, 5] (Fault) - 가장 오래된 3 교체
    6. 2 요청: [1, 5, 2] (Hit)
    7. 4 요청: [5, 2, 4] (Fault) - 가장 오래된 1 교체
    8. 5 요청: [2, 4, 5] (Hit)
    따라서 총 page-fault 횟수는 5번입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

19. 소프트웨어 프로젝트 관리가 어려운 이유로 옳지 않은 것은?

  1. 소프트웨어는 형태가 없어 프로젝트 관리자는 프로젝트 진척사항을 분석하는 데 어려움이 있다.
  2. 소프트웨어 개발 프로세스는 조직에 따라 가변적이므로 관리에 어려움이 있다.
  3. 컴퓨터와 통신에서의 빠른 기술적 변화로 인해 관리자의 경험이 새로운 프로젝트에 전달되지 않을 수 있다.
  4. 대규모 소프트웨어 프로젝트는 일회성(one-off) 프로젝트가 전혀 없어서, 경험이 충분한 관리자가 문제를 예측할 수 없다.
(정답률: 91%)
  • 소프트웨어 프로젝트는 특성상 일회성(one-off) 프로젝트가 많기 때문에, 과거의 경험을 새로운 프로젝트에 그대로 적용하기 어렵고 예측이 힘든 경우가 많습니다.

    오답 노트

    대규모 소프트웨어 프로젝트는 일회성 프로젝트가 전혀 없어서 $\rightarrow$ 일회성 프로젝트가 많기 때문에 관리가 어렵습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

20. 다음 C 프로그램의 실행 결과는?

  1. Goo 80
  2. Lee 60
  3. Goo 60
  4. Lee 80
(정답률: 62%)
  • 구조체 포인터를 이용한 연결 리스트의 참조 문제입니다.
    1. stu1의 link는 &stu2를 가리키고, stu2의 link는 &stu3를 가리킵니다.
    2. stu1.link->link->name은 stu1 $\rightarrow$ stu2 $\rightarrow$ stu3 순으로 접근하여 stu3의 이름인 Goo가 됩니다.
    3. stu1.link->money는 stu1 $\rightarrow$ stu2 순으로 접근하여 stu2의 돈인 80이 됩니다.
    따라서 실행 결과는 Goo 80입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

< 이전회차목록 다음회차 >