본문 바로가기
Certificate/정보처리기사

[정보처리기사] 2022년 1회차 (4)프로그래밍 언어 활용

by HJ0216 2023. 7. 9.

정보처리기사

IP 주소 체계

  • IPv4
    • 주소 길이: 32bit (4*8)
    • 헤더 길이: (가변) 20-60byte
    • 주소 개수: 2^32개
    • 주소 체계: 유니캐스트(1:1), 멀티캐스트(1:다), 브로드캐스트(방송)
    • 보안: IPSec, SSL, S-HTTP Protocol 별도 설치
  • IPv6
    • 주소 길이: 128bit (16*8)
    • 헤더 길이: (고정) 40byte
    • 주소 개수: 2^128
    • 주소 체계: 유니캐스트(1:1), 멀티캐스트(1:다), 애니캐스트(인근)
    • 보안: 자체 보안기능 제공

 

OSI 7 Layer Model

OSI_7_layer

  1. 물리 계층(Physical Layer)
    • 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환
    • 단위: 비트
    • 주요 장비: 허브, 리피터 등
  2. 데이터 링크 계층(Data Link Layer)
    • 인접 시스템 간 데이터 전송, 전송 오류 제어를 통한 신뢰성 구축
    • 단위: 프레임
    • 주요 장비: 스위치, 브릿지 등
  3. 네트워크 계층(Network Layer)
    • 단말기 간 데이터 전송을 위한 최적화된 경로 제공
    • 단위: 패킷
    • 주요 장비: 라우터 등
    • 프로토콜
      • IP: 데이터 전달
      • ICMP: IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜
      • ARP: 논리 주소인 IP 주소 ▶ 실제적인 물리 주소인 MAC 주소로 변환
      • RARP: 실제적인 물리 주소인 MAC 주소 ▶ 논리 주소인 IP 주소로 변환
  4. 전송 계층(Transport Layer)
    • 송수신 프로세스(종단) 간의 연결. 신뢰성 있는 통신 보장
    • 단위: 세그먼트
    • 프로토콜
      • TCP
        • telnet(23): 원격 컴퓨터 간
        • FTP(20-데이터, 21-제어): 파일 전송
        • HTTP(80): 웹 서비스
        • SMTP(25): 메일 전송
        • POP3(110): 메일 수신
      • UDP
        • DHCP: IP 자동 할당
        • SNMP: 네트워크 관리
        • DNS(53): 도메인 ▶ IP 주소로 변환
  5. 세션 계층(Session Layer)
    • 송수신 간의 논리적 연결
    • 단위: 데이터
  6. 표현 계층(Presentation Layer)
    • 데이터 형식 설정, 암/복호화
    • 단위: 데이터
  7. 응용 계층(Application Layer)
    • 일반적인 응용 서비스를 수행
    • 단위: 데이터

 

Protocol 3요소

: 구문, 의미, 타이밍

정보보안 3요소

: 기밀성, 무결성, 가용성

 

임계 영역(Critical Section)

: 문제가 발생하지 않도록 한번에 하나의 프로세스만 이용하게끔 보장해야 하는 영역

상호 배제(Mutual Exclusion)

: 멀티 프로그래밍에서 공유 불가능한 자원의 동시 사용을 피하기 위해 사용되는 알고리즘
- 뮤텍스(Mutex, 상호배제)
- Locking과 UnLocking를 통해 구현
- 세마포어(Semaphore)
- wait(-)과 signal(+)을 통해 구현
- 모니터(Monitor)
- synchronized를 통해 구현

 

기억 장치 배치 전략

  1. 최초 적합 기법(first-fit strategy)
    : 주기억장치의 첫 번째 유용한 공백을 우선적으로 선택하는 방법
  2. 최적 적합 기법(best-fit strategy)
    : 가장 적합한 공간을 선택함으로써 기억장치의 단편화를 최소로 하는 방법
  3. 최악 적합 기법(worst-fit strategy)
    : 프로그램을 주기억장치 내에서 가장 알맞지 않은 공백, 즉 가장 큰 공백에 배치하는 방법
  • 예시
    • 20 ◀ 21: 외부단편화(20)
    • 50 ◀ 21: 내부단편화(29)

 

빌드 도구

: 소스코드에서 어플리케이션 생성을 자동화하기 위한 프로그램(컴파일 후 서버에 올리는 것)
: Make, Ant, Gradle, Maven

 

페이지 교체 알고리즘 (Page Replacement Algorithm)

LRU(Least Recently Used)

: 가장 오랫동안 사용하지 않은 페이지를 교체하는 알고리즘

OPT(Optimal)

: 앞으로 가장 오랫동안 사용하지 않을 페이지를 교체

MFU(Most Frequently User)

: 참조 횟수가 가장 많은 페이지를 교체

 

C언어

strcat

: char* strcat(char* dest, const char* origin);
: origin에 있는 문자열을 dest 뒤쪽에 이어 붙이는 함수(dest가 변화)

Shift 연산

  • <<: 좌측으로 1비트 이동
  • >>: 우측으로 1비트 이동

 

Shell

: 사용자 명령을 해석하고 커널로 전달하는 기능
- 커널(Kernel): Linux 운영 체제(OS)의 주요 구성 요소이자 컴퓨터 하드웨어와 프로세스를 잇는 핵심 인터페이스
: Shell Script-반복적인 명령 프로그램을 만드는 프로그래밍 기능 제공

 

 

 

참고 자료

 

흥달쌤

흥달쌤과 함께하는 IT 채널입니다. 정보처리기사 자격증 관련된 강의 및 실무 노하우, 프로그래밍 언어(JAVA, C언어, Python) 특강 등이 진행됩니다. 앞으로 진행 예정인 동영상은 IT 관련된 이야기

www.youtube.com

 

[OS] 상호배제 방법 : 뮤텍스, 세마포어, 모니터

상호 배제(mutual exclusion) 멀티 프로그래밍에서 공유 불가능한 자원의 동시 사용을 피하기 위해 사용되는 알고리즘으로, 임계 구역으로 불리는 코드 영역에 의해 구현된다. = 하나의 프로세스가

dar0m.tistory.com

 

기억장치 배치 기법

입력되는 프로그램과 데이터를 주기억장치의 어느 곳에 넣을 것인가를 결정하기 위해 사용되는 것이 기억장치 배치 전략(memory placement strategy)이다. 1. 최초 적합 기법(fisrt-fit strategy): 주기억장치

choijiuen.tistory.com

 

[C언어/C++] strcat, strncat 문자열 연결 함수에 대해서

안녕하시죠? BlockDMask 입니다. 오늘은 문자열을 이어붙이는, 문자열 연결함수에 대해서 알아볼 것 입니다. C/C++ 에서 char*, char[] 타입의 문자열을 이어 붙이기 위해서는 strcat, strncat 함수를 사용하

blockdmask.tistory.com