본문 바로가기
  • 문과생의 백엔드 개발자 성장기
|Developer_Study/정보처리기사

[정보처리기사] 2020년 4회 실기 기출

by 케리's 2023. 3. 22.

1. 현재 IPv4의 확장형으로 IPv4가 가지고 있는 주소 고갈, 보안성, 이동성 지원 등의 문제점을 해결하기 위해서 개발된 128비트 주소체계를 갖는 차세대 인터넷 프로토콜은 무엇인가?

더보기

IPv6

 

 

 

 

2. 목적에 따른 디자인 패턴의 유형에는 생성(Creational) 패턴, 구조(Structural) 패턴, (  ) 패턴이 있다. 괄호에 들어갈 알맞은 패턴 유형을 쓰시오.

더보기

행위(Behavioral)

 

 

 

3. 다음은 어떤 UML 다이어그램에 관한 예시이다. 어떤 종류의 다이어그램인가?

 

더보기

패키지 다이어그램

 

 

 

 

 

4. 데이터베이스의 회복(Recovery) 기법 중 Rollback 시 Redo, Undo가 모두 실행되는 트랜잭션 처리법으로 트랜잭션 수행 중 갱신 결과를 바로 DB에 반영하는 기법은 무엇인가?

 

더보기

즉시갱신 회복 기법(Immediate Update)

 

 

5. 다음은 n이 10일 때, 10을 2진수로 변환하는 자바 소스 코드이다. A, B 괄호 안에 알맞은 값을 적으시오.

[출력결과] : 00001010

 

class good {
	public static void main (String[] args) {
    	int[]a = new int[8];
        int i=0; int n=10;
        while (  1.  ) {
        	a[i++] = (  2.  );
            n /= 2;
        }
        for(i=7; i>=0; i--){
         System.out.print(a[i]);
        }
     }
  }
더보기

1. n > 0 or n >=1 or i < 8 or i <= 7
2. n%2 or n&1

 

 

 

6.  다음은 자바 소스 코드이다. 출력 결과를 보고 , 1,2에 알맞는 값을 적으시오.

[출력 결과] 

1 4 7 10 13

2 5 8 11 14

3 6 9 12 15 

 

public class good {
	public static void main(String[] args) {
    	int[][]a = new int[(1.)][(2.)];
        for(int i = 0; i <3; i++){
        for(int j=0; j < 5; j++){
        a[i][j] = j*3+(i+1);
        	System.out.print(a[i][j]+"");
         }
         System.out.println();
       }
     }
   }

 

 

 

7. 스니핑(Sniffing)에 대하여 서술하시오.

더보기

암호화되지 않은 패킷들을 수집하여 순서대로 재조합 후 ID, PW와 같은 중요한 정보를 유출하기 위한 수동적인 형태의 공격


네트워크 공격 

공격기법 설명
스니핑
(Sniffing)
공격대상에게 직접공격을 하지 않고 데이터만 몰래 들여다보는 수동적 공격기법
네트워크 스캐너, 스니퍼
(Scanner, Sniffer)
네트워크 하드웨어 및 소프트웨어 구성의 취약점 파악을 위해 공격자가 취약점을 탐색하는 공격도구
패스워드 크래킹
(Password Cracking)
사전 크래킹
(Dictionary)
시스템 또는 서비스  ID와 패스워드를 크랙하기 위해 ID와 패스워드가 될 가능성이 있는 단어를 파일로 만들어놓고 이 파일의 단어를 대입하여 크랙하는 공격기법
무차별 크래킹
(Brute Force)
패스워드로 사용될 수 있는 영문자, 숫자, 특수문자등을 무작위로 패스워드 자리에 대입하여 패스워드를 알아내는 공격기법
패스워드 하이브리드 사전공격 + 무차별 대입공격 결합하여 공격
레인보우 테이블 공격 패스워드 별로 해시값을 미리 생성해서 테이블에 모아놓고 크래킹하고자하는 해시값을 테이블에서 검색해서 역으로 패스워드 찾는 공격기법
IP 스푸핑 침입자가 인증된 컴퓨터 시스템인 것처럼 속여 타깃 시스템의 정보를 빼내기 위해
본인의 패킷 헤더를 인증된 호스트 IP어드레스로 위조하여 타깃에 전송하는 공격기법
ARP 스푸핑 공격자가 특정 호스트의 MAC 주소를 자신의 MAC 주소로 위조한 ARP Reply를 만들어 희생자에게 지속적으로 전송하여 희생자의 ARP Cache Table에 특정 호스트의 MAC 정보를 공격자의 MAC 정보로 변경, 희생자로부터 특정 호스트로 나가는 패킷을 공격자가 스니핑하는공격 
ICMP Redirect 공격 3계층에서 스니핑 시스템을 네트워크에 존재하는 또다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격기법
ICMP redirect 메시지를 공격자가 원하는 형태로 만들어 특정 목적이로 가는 패킷을 공격자가 스니핑 하는 기법
트로이목마 악성 루틴이 숨어있는 프로그램으로 겉보기에는 정상적인 프로그램으로 보이나 실행하면 악성코드를 실행하는 프로그램

 

 

 

8. IP 패킷에서 외부의 공인 IP주소와 포트 주소에 해당하는 내부 IP주소를 재기록하여 라우터를 통해 네트워크 트래픽을 주고받는 기술은 무엇인가?

더보기

NAT(Network Address Transformation)

 

 

 

9.다음은 파이썬 소스 코드이다. 출력 결과를 쓰시오.

lol = [[1,2,3],[4,5],[6,7,8,9]]
print(lol[0])
print(lol[2][1])
	for sub in lol;
    	for item in sub;
        	print(item, end = '')
        print()
더보기

[1,2,3]
7
123
45
6789

 

 

 

10. 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술로 P2P방식을 기반으로 하여 소규모 데이터들이 연결되어 형성된 '블록'이라는 분산 데이터 저장 환경에 관리 대상 데이터를 저장함으로써 누구도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있게끔 만드는 기술은 무엇인가?

더보기

블록체인

 

 

 

11. 오픈 소스 기반으로 한 분산 컴퓨팅 플랫폼으로, 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고 그 안에 보관된 거대한 데이터 세트를 병렬로 처리할 수 있도록 개발된 자바 소프트웨어 프레임워크로 구글, 야후 등에 적용한 기술은 무엇인가?

더보기

하둡

 

 

 

 

12. 이상 현상의 종류 3가지를 쓰시오.

더보기

입 이상, 삭제 이상,  갱신 이상

 

 

 

13. 다음은 프로세스 상태 전이도이다. 1, 2, 3에 알맞은 상태를 쓰시오.

더보기

1. 준비
2. 실행
3. 대기


구분 설명
생성 (Create) 사용자에 의해 프로세스가 생성된 상태
준비 (Ready) CPU를 할당받을 수 있는 상태
실행 (Running) 프로세스가 CPU를 할당받아 동작 중인 상태
대기 (Waiting) 프로세스 실행 중 입출력 처리 등으로 인해 CPU를 양도하고 입출력 처리가 완료될 때 까지 대기 리스트에서 기다리는 상태
완료 (Complete) 프로세스가 CPU를 할당받아 주어진 시간 내에 완전히 수행을 종료한 상태
PCB
(Process Control Block)
특정한 프로세스를 관리할 필요있는 정보를 포함하는 운영체제 커널의 자료구조
운영체제가 프로세스 스케줄링을 위해 프로세스에 관한 모든 정보를 가지고 있는 데이터베이스
문맥교환
(Context Switching)
CPU가 현재 실행하고 있는 프로세스의 문맥 상태를 프로세스 제어블록 (PCB)에 저장하고 다음 프로세스의 PCB로부터 문맥을 복원하는 작업을 문맥교환이라고 한다.
디스패치
(Dispatch)
준비 상태에 있는 여러 프로세스 중 실행될 프로세스를 선정하여 CPU 할당함
할당 시간 초과
(Timer Runout)
CPU를 할당받은 프로세스는 지정된 시간이 초과되면 스케줄러에 의해 PCB 저장, CPU 반납 후 다시 준비상태로 전이됨, 타임슬라이스만료/ 선점시 타임아웃 발생
입출력발생
(Block)
실행 상태에 있는 프로세스가 지정된 할당 시간을 초과하기 전에 입출력이나 기타 사건이 발생하면 CPU를 스스로 반납하고 입출력이 완료될 때까지 대기 상태로 전이됨
깨움
(Wake Up)
어느 순간에 입출력이 종료되면 대기상태의 프로세스에게 입출력 종료사실을 wait/signal 등에 알려주고 준비상태로 전이됨

 

 

 

14. 테스트 오라클 중 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클은 무엇인가?

더보기

샘플링 오라클


테스트 오라클 - 참샘휴일

테스트 결과가 올바른지 판단하기 위해 사전에 정의 된 참 값을 대입하여 비교하는 기법

참 오라클
(True)
모든 입력값에 대하여 기대하는 결과 제공하는 오라클
샘플링 오라클
(Sampling)
특정한 몇개의 입력 값에 대해서만 기대하는 결과를 제공하는 오라클
휴리스틱 오라클
(Heuristic)
특정 입력값에 대해 올바른 결과를 제공하고 나머지 값들에 대해서는 추정 (휴리스틱)으로 처리하는 오라클
일관성 검사 오라클
(Consistent)
애플리케이션 변경이 있을때 수행 전과 후의 결괏값이 동일한지 확인하는 오라클

 

 

 

15. 점수에 따른 성적 부여가 잘 되었는지 테스트하고자 한다. 아래에 알맞는 테스트 기법은 무엇인가?

 

점수 성적
0 ~ 59
60 ~ 69
70 ~ 79
80 ~ 89
90 ~ 100

[테스트 값]

-10점 / 30점 / 65점 / 75점 / 85점 / 95점 / 110점

 

더보기

동등분할 테스트


블랙박스테스트 (명세 기반 검사) - 동결 결상 유분 폐원비

사용자의 요구사항 명세를 보면서 수행하는 테스트

동등 분할 테스트
(Equivalence Partitioning)
입력 데이터 영역의 유사한 도메인별로 유효값/무효값을 그룹핑하여 대표값 테스트를 케이스를 도출하여 테스트 하는 기법
경곗값 분석 테스트
(Boundary Value Analysis)
최소값 바로 위, 최대 치 바로 아래 등 입력값의 극한 한계를 테스트하는 기법
결정 테이블 테스트
(Decision Table)
요구사항의 논리와 발생 조건을 테이블 형태로 나열하여 조건과 행위를 모두 조합하여 테스트
상태 전이 테스트
(State Transition)
이벤트에 의해 어느 한 상태에서 다른 상태로 전이되는 경우의 수를 수행하는 테스트
유스케이스 테스트
(Use Case)
프로세스 흐름을 기반으로 테스트케이스를 명세화하여 수행하는 테스트
분류 트리 테스트
(Classification Tree)
SW의 일부 또는 전체를 트리구조로 분석 및 표현하여 테스트케이스 설계해 테스트
페어와이즈 테스트
(Pairwise)
테스트 데이터 값들간에 최소한 한번씩 조합하는 방식
원인-결과 그래프 테스트
(Cause-Effect Graphing)
그래프를 활용해 입력 데이터 간의 관계 및 출력에 미치는 영향을 분석
비교테스트
(Comparision)
여러 프로그램에 같은 입력값을 넣어 비교해 테스트

 

 

 

 

 

 

16. 다음 조건을 만족하면서 학과별로 튜플 수가 얼마인지 구하는 SQL문을 작성하시오.

 

- 대소문자를 구분하지 않는다.

- WHERE 구문을 사용하지 않는다.

- GROUP BY 를 사용한다.

- 세미콜론(;)은 생략 가능하다.

- 별칭(AS)을 사용해야 한다. (별칭 사용 시 별칭은 작은 따옴표를 써야 함)

- 집계 함수를 사용해야 한다.

[학생]

학과 학생
전기 이순신
컴퓨터 안중근
컴퓨터 윤봉길
전자 이봉창
전자 강우규

[결과]

학과 학과별튜플수
전기 1
컴퓨터 2
전자 2
더보기

SELECT 학과, COUNT(학과) AS 학과별튜플수 FROM 학생 GROUP BY 학과;

 

 

 

17. 데니스 리치와 켄톰슨 등이 함께 벨 연구소를 통해 만든 운영체제이며, 90% 이상 C언어로 구현되어 있고, 시스템 프로그램이 모듈화되어 있어서 다른 하드웨어 기종으로 쉽게 이식 가능하며 계층적 트리 구조를 가짐으로써 통합적인 파일 관리가 용이한 운영체제는 무엇인가?

 

더보기

유닉스

 

 

 

18. 다음은 C언어 소스 코드이다. 출력 값을 쓰시오.

#include 
void main(){
  char *p = "KOREA"
  printf("%sn" , p); // 100번지가 가리키고있는 값의 전체출력 (S출력하라고했으니까)
  printf("%sn" , p+3); // 103번지가 가리키고 있는 값부터 전체출력 (S출력)
  printf("%cn" , *p); // P의 값 즉 P의 주소값의 값은 K (c출력 문자)
  printf("%cn" , *(p+3)); // p+3 즉 103번지가 가르키고 있는 값의 값은 E (c출력 문자)
  printf("%cn" , *p+2); // p의 값 즉 p의 주소값의 값은 k인데 +2는 숫자2를 더할 수없으니까 
  // 아스키코드로 바꾼후 +2를 더함 즉 알파벳순으로 K의 다다음인 M 출력 
}
더보기

KOREA
EA
K
E
M

 

 

 

 

19. 다음은 자바 소스 코드이다. 출력 결과를 쓰시오.

class parent{
	public int compute(int num){
    	if(num <=1) return num;
        return compute(num-1) + compute(num-2);
    }
 }
 
 class Child extends parent {
 	public int compute(int num){
    	if(num<=1) return num;
        	return compute(num-1) + compute(num-3);
        }
   }
   
  class good{
  	public static void main (String[] args){
    parent obj = new Child();
    System.out.print(obj.compute(4));
   }
 }

 

더보기

1


class parent{
	public int compute(int num){
    	if(num <=1) return num;
        return compute(num-1) + compute(num-2);
    }
 }
 
 class Child extends parent {
 	public int compute(int num){ // num은 4
    	if(num<=1) return num; // num이 1보다 작거나 같을때 num출력
        	return compute(num-1) + compute(num-3); //그게아니면 compute(4-1) + compute (4-3)
            //재귀함수!!! 
            // compute(3) + compute(1) -> 즉 1
            // compute(3-1) = compute (2) + compute(3-3) = compute(0) = 0
            // compute (2-1) = compute (1) = 1 + compute (2-3) = compute(-1) = -1
            // 즉, 1 + 0 + 1 + -1 은 = 1
        }
   }
   
  class good{
  	public static void main (String[] args){
    parent obj = new Child();
    System.out.print(obj.compute(4)); //오버라이딩했으니 child의 compute로 이동
   }
 }

 

 

 

20. 정보 보안의 3요소 중 가용성(Availability)에 대하여 설명하시오.

더보기

권한을 가진 사용자가 애플리케이션이 원하는 서비스를 지속 사용할 수 있도록 보장하는 특성


SW 개발 보안 구성요소 - 무기가

3대요소 설명
무결성
(Integrity)
정당한 방법을 따르지 않고서는 데이터가 변경될 수 없으며 데이터의 정확성 및 완전성과 고의/악의로 변경되거나 훼손 또는 파괴 되지 않음 보장
기밀성
(Confidentiality)
인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출 차단하는 특성
가용성
(Avaliability)
권한을 가진 사용자가 애플리케이션이 원하는 서비스를 지속해서 사용할 수 있도록 보장하는 특성

 

 

 

https://chobopark.tistory.com/314

댓글