[정보처리기사/필기] 4과목 <프로그래밍 언어 활용> 오답정리

정보처리기사 필기시험을 준비하며 전자문제집CBT의 해설을 정리한 것입니다.

1. 운영체제

1) HRN스케줄링 방식의 작업 순서 구하기

우선순위 = (작업시간 + 서비스시간) / 서비스시간
우선순위를 정한 다음 숫자가 높은 것부터 순위가 부여된다.

2) 메모리 관리 기법

  • Worst fit(최악 적합) : 들어갈 수 있는 영역 중 자원 낭비가 제일 심한 영역에 들어가는 방법

2. OSI-7Layer (Open Systems Interconnection)

0) OSI 7계층이란?

  • OSI 참조 모델이다. (1984 국제표준화기구(ISO)가 발표)
  • 모든 컴퓨팅 장치나 네트워킹 장치를 만들 때 OSI 참조 모델을 참조해서 통신 장치를 만든다. (쉽게 말해 규칙. 호환성, 유지보수 강화)
  • 통신이 일어나는 과정을 크게 7단계로 분류하여 정리한 것.
  • 이때 각 계층은 독립되어 있다. → 문제가 생긴 곳만 해결 가능
  • 네트워크에서 트래픽의 흐름을 알 수 있다.
  • 상하구조(계층)
구분 계층 계층명 기능
7 응용(Message) - 사용자에게 서비스 제공 역할.
- SMTP, FTP, HTTP 등 사용자가 원하는 최종 목표에 해당
6 표현(Message) - 데이터의 변환, 압축, 암호화를 담당
5 세션(Message) - 통신하는 프로세스 사이의 대화 제어 및 동기화를 담당
4 전송(Segment) - 네트워크계층에서 패킷을 종단(네트워크주소)까지 전달한다면, 전송층은 종단 내에서 최종 수신 프로세스(포트주소)로의 전달을 담당
3 네트워크(Packet) - 송신 측에서 최종목적지(네트워크주소)까지 패킷을 전달
- 송수신 측의 논리구조 지정 및 패킷이 최종목적지에 도달하도록 경로를 배정하는 라우팅 기능
- 데이터 링크의 물리주소는 패킷이 시스템으로 이동할 때마다 변경되지만, 네트워크 주소는 목적지까지 변하지 않음
2 데이터 링크(Frame) - 노드와 노드 사이의 데이터 전달
- 단순히 bit를 전송하는 물리층에 신뢰성을 더하기 위한 흐름제어 및 오류제어 기능
- LLC, MAC 두 개의 서브레이어로 구성
1 물리(bit) - 물리 매체를 통해 bit 흐름을 전송
- 물리적 장치와 인터페이스가 전송을 위해 필요한 기능과 처리절차 규정
  • 구분 → 상 : 상위층 , 하 : 하위층
  • 물리계층(하드웨어), 데이터링크계층(HW+SW), 나머지(SW)

여긴 헷갈려서 특별히 번호랑 계층 맞춤

1) 물리 계층

  • 전송에 필요한 장치 간 실제 접속

2) 데이터 링크 계층

  • 링크의 설정과 유지 및 종료 담당
  • 송수신(노드 간) 측 속도 차이 해결을 위한 흐름제어 기능 및 오류 검출과 회복을 위한 오류제어 기능
  • 프레임 시작 및 끝을 구분하기 위한 동기화 기능
  • 프레임 순서적 전송을 위한 순서 제어 기능

5) 세션 계층

  • 송수신 측 간 관련성 유지 및 대화 제어, 체크점(동기점)을 두어 정보 수신상태 체크

7) 응용 계층

  • 사용자가 OSI 환경에 접근 가능하도록 서비스 제공

3. 결합도(Coupling) 또는 의존도

  • 어떤 모듈이 다른 모듈에 의존하는 정도
  • 응집도(cohesion)과 대비되는 개념 (종종...)
  • 결합도 높음 ———————————————-낮음
    content > common > external > control > stamp > data

1) 내용 결합도 (Content)

  • 하나의 모듈이 다른 모듈의 내부 동작을 수정하거나 내부 동작에 의존하는 상태
  • 예) 다른 모듈의 로컬 데이터에 접근하는 경우

2) 공통 결합도 (Common || Global )

  • 두 개의 모듈이 같은 글로벌 데이터를 공유하는 상태 (전역변수 등)

3) 외부 결합도 (External)

  • 두 개의 모듈이 외부에서 도입된 데이터 포맷, 통신 프로토콜, 또는 디바이스 인터페이스를 공유할 때 발생
  • 기본적으로 외부 툴이나 디바이스와의 통신과 관련있다.

4) 제어 결합도 (Control)

  • 하나의 모듈이 다른 모듈로 무엇을 해야하는지에 대한 정보를 넘겨줌으로써 다른 모듈의 흐름을 제어하는 경우
  • 권리 전도 현상 발생

5) 스탬프 결합도 (Stamp)

  • 모듈들이 데이터 구조를 공유하고, 서로 다른 일부만을 사용하는 경우
  • 접근할 필요가 없는 필드만 수정되는 경우에도 (데이터의 배치가 변경되므로) 레코드(필드)를 읽는 방법을 변경해야 함

6) 자료 결합도 (Data)

  • 모듈들이 파라미터 등을 통해 데이터를 공유하는 경우
  • 각 데이터가 기본적인 것(elementary piece)이고, 그 데이터들이 공유되는 유일한 데이터여야 한다.
  • 자료요소로만 구성. 처리값을 다시 돌려줌

7) 기타

  • 메시지 결합도

    • 가장 낮은 결합도
  • 결합도 없음

    • 모듈이 어떠한 다른 모듈과도 통신하지 않는 경우

4. 네트워크 서브네팅

1) 네트워크 주소, 브로드캐스트 주소

  • subnet의 시작 주소 : 네트워크 주소
  • subnet의 마지막 주소 : 브로드캐스트 주소 (서브넷의 끝부분에 연속된 0으로된 비트를 모두 1비트로 변환했을 때)
  • (예시)
    현재 pc의 아이피가 203.230.7.3 이고, 서브넷마스크가 255.255.255.0 이라면, 네트워크 주소 (203.230.7.0) 브로드캐스트 주소 (203.230.7.255)
    즉, 사용 가능한 아이피 주소 : 203.230.7.1 ~ 203.230.7.254

2) FLSM방식으로 Subnet을 나누고, IP subnet-zero 적용

(예제) 200.1.1.0/24 네트워크를 FLSM방식을 이용하여 10개의 Subnet으로 나누고, ip subnet-zero를 적용했다. 이때 서브네팅된 네트워크 중 10번째 네트워크의 broadcast IP주소는?

1️⃣ 필요한 서브넷의 개수
2^3 < 10개 +2(네트워크, 브로드캐스트) < 2^4
(꼭 2^n 이어야 함! 2진수니까.. 밑에 네트워크 대역 생긴거 참고)
-> 16개씩 나누기!!
-> 네트워크대역의 뒤에 4개를 0으로! (또는 그냥 서브넷 시작하는 ip에서 2^4개씩 세어서 나눠준다..)


2️⃣ 서브넷마스크
200.1.1.1111 0000 → 255.255.255.240

3️⃣ 네트워크 대역
200.1.1.0000 0000 = 200.1.1.0~15
200.1.1.0001 0000 = 200.1.1.16~31
200.1.1.0010 0000 = 200.1.1.32~47
200.1.1.0011 0000 = 200.1.1.48~63
200.1.1.0100 0000 = 200.1.1.64~79
...
200.1.1.1001 0000 = 200.1.1.144~159 ← 10번째 네트워크
...

4️⃣브로드캐스트 IP주소 : 200.1.1.159

5. UNIX

1) 명령어

  • ls - 디렉토리, 파일목록 출력
  • cat - 파일 내용(만) 출력
  • fork - 새로운 프로세스 생성
  • chmod - 파일이나 디렉토리에 대한 접근권한 변경

6. 소프트웨어 취약점

  • FTP 바운스 공격 : FTP 프로토콜 구조의 허점을 이용한 공격 <네트워크 공격>
  • SQL 삽입 : SQL의 논리적 에러를 이용한 공격 <웹관련 공격>
  • 버퍼 오버플로 : 메모리를 다루는 데 오류가 발생하여 잘못된 동작을 하게 하는 공격 <어플 공격>
  • 디렉토리 접근 공격 : 웹 루트 디렉토리 외부에 저장된 파일 또는 디렉토리에 접근하는 공격 방법 <웹관련 공격>

7. 네트워크

1) IPv6

  • 128비트 주소체계 사용. (16비트 8부분)
  • v4의 주소부족 문제 해결 및 자료 전송 속도 빠름
  • 보안문제 해결 → 인증성, 기밀성, 데이터 무결성 지원
  • 확장성, 융퉁성, 연동성 뛰어남
  • 실시간 흐름 제어로 향상된 멀티미디어 기능 지원
  • 세 가지 주소 체계 : Unicast, Multicast, Anycast

2) TCP 프로토콜

  • 기본 헤더 크기는 최소 20byte 최대 60byte (헤더에 Option값 포함 시 최대 40byte 추가 가능)
  • 신뢰성이 있는 연결 지향형 전달 서비스이다.
  • 스크림 전송 기능을 제공한다.
  • 순서제어, 오류제어, 흐름제어 기능을 제공한다.

(참조)

© 2020 euzl. from JunhoBaik's, Built with Gatsby