정보처리기사 필기 4과목
- 교착상태 발생조건
상호배제 : 프로세스가 자원을 배타적으로 점유하여 다른 프로세스가 그 자원을 사용할 수 없는 상태
점유와 대기 : 한 프로세스가 자원을 점유하고 있으면서 또 다른 자원을 요청하여 대기하고 있는 상태
비선점 : 한 프로세스가 점유한 자원에 다른 프로세스가 선점할 수 없고 오직 점유 프로세스만이 해제 가능한 상태
환형 대기 : 두 개 이상의 프로세스간 자원의 점유와 대기가 하나의 원형을 구성한 상태
OSI 7 Layer 계층별 프로토콜 (물데네 전세표 응)
계층 1 – 물리 계층(Physical Layer) 실제 장치들을 연결하기 위한 세부 사항들을 정의하는 계층 RS-232
계층 2 – 데이터 링크 계층 링크의 설정과 유지,종료 담당/동기화, 오류 제어 흐름 제어 회선 제어 기능 수행
물리적 연결을 통해 신뢰성 있는 정보 제공 HDLC, PPP, 프레임 릴레이 ATM
계층 3 – 네트워크 계층 다양한 길이의 패킷을 네트워크 통해 전달 IP, ARP, RARP, ICMP, IGMP, 라우팅 프로토콜
계층4 – 전송 계층 TCP, UDP
계층 5 – 세션 계층 응용 프로그램 간의 대화를 유지하기위한 구조를 제공, 논리적 연결 담당 RCP, NetBIOS
계층 6 – 표현 계층 애플리케이션이 다루는 정보를 통신에 알맞은 형태로 만드는 역할 담당 JPEG, MPEG
계층 7 – 응용 세션 응용 서비스를 수행하는 역할을 담당 HTTP, FTP, SMTP, POP3, IMAP, Telnet, SSH, SNMP
원거리 통신망(WAN) 연결 기술
전용 회선 방식(Dedicated Line) : 통신 사업자가 사전에 계약을 체결한 송신자와 수신자끼리만 데이터를 교환함
회선 교환 방식(Circuit Switching) : 물리적 전용선을 활용하여 데이터 전달 경로가 정해진 후 동일 경로로만 전달
패킷 교환 방식(Packet Switching) : 전체 메시지를 각 노드가 수용할 수 있는 크기로 잘라서 보내는 방식
결합도의 유형 (결합도는 낮을수록 좋음) 좋은 순 : 내용 > 공통 > 외부 > 제어 > 스탬프 > 자료
내용 결합도 : 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도
공통 결합도 : 파라미터가 아닌 모듈 밖에 있는 전역변수를 참조하고 전역변수를 갱신하는 식으로 상호작용하는 경우
외부 결합도 : 두 개의 모듈이 외부에서 도입된 데이터 포맷, 통신 프로토콜 또는 디바이스 인터페이스를 공유할 경우
제어 결합도 : 어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어 신호를 이용하여 통신
스탬프 결합도 : 모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
자료 결합도 : 모듈 간의 인터페이스로 전달되는 파라미터를 통해서만 모듈 간의 상호작용이 일어나는 경우
선점형 스케줄링 알고리즘
SRT(Shortest Remaining Time First) : 가장 짧은 시간이 소요되는 프로세스를 먼저 수행
MLQ(Multi Level Queue, 다단계 큐) : 작업들을 여러 그룹으로 분할, 여러 개의 큐를 이용해 작업
MLFQ(다단계 피드백 큐) : 큐마다 서로 다른 CPU 시간 할당량 부여, 새로운 프로세스는 높은 우선순위,
프로세스의 실행시간이 길어질수록 낮은 우선순위 큐, 마지막 단계는 라운드 로빈 방식을 적용
Round Robin(라운드 로빈) : 할당된 시간 내에 처리 못할 시 준비 큐 리스트의 가장 뒤로, CPU는 다음 프로세스로
비선점형 스케줄링 알고리즘 : 우선순위, 기한부, FCFS, SJF, HRN
IPv4 : 32비트 주소체계 헤더 사이즈 최소 20byte 이상 유니캐스트 / 멀티 캐스트 / 브로드캐스트 사용
A 클래스 0~127 B 클래스 128 ~ 191 C 클래스 192 ~ 223 D 클래스 224 ~ 239
IPv6 : 128bit 주소 크기, IP 주소의 확장, 이동성, 인증 및 보안 기능, plug&play 지원, IPv4 주소 부족 문제 해결
유니캐스트, 애니캐스트, 멀티캐스트 사용 IPv6 헤더는 40 octect, 개선된 QoS지원, 16비트씩 8부분 16진수로
듀얼 스택 : IP 계층에 두가지의 프로토콜이 모두 탑재되어 있고 통신 상대방에 따라 해당 IP 스택을 선택하는 방법
터널링 : IPv6 망에서 인접한 IPv4 망을 거쳐 다른 IPv6와 통신할 때 IPv4에 터널을 만들고 캡슐화하여 전송하는 방법
주소변환 : IPv4와 IPv6 사이에 주소변환기를 사용하여 서로 다른 네트워크상의 패킷을 변환시키는 방법
오버로딩 : 매개변수의 유형과 개수를 다르게 하여 같은 이름의 메소드를 여러 개 가지는 기법 (더 많이 로딩한다)
오버라이딩 : 상위 클래스가 가지고 있는 메소드를 하위 클래스가 재정의하여 사용하는 기법
연산자 우선순위 증산시 관비 논삼대
증감(++,--) – 산술(+-*/%) – 시프트(<<,>>) – 관계(==,>,<) – 비트(&,^,|) – 논리(&&,||,!) – 삼항 – 대입(+=,-=,*=)
예외처리 : 오작동이나 결과에 악영향을 미칠 수 있는 실행시간 동안에 발생한 오류
배열의 인덱스가 그 범위를 넘어서는 경우, 존재하지 않는 파일을 읽으려고 하는 경우
쉘(shell) : 사용자가 입력시킨 명령어 라인을 읽어 필요한 시스템 기능을 실행시키는, 시스템과 사용자간 인터페이스
커널(kenel) : 프로그램과 하드웨어 간의 인터페이스 역할 담당 / 프로세스, 기억장치, 주변 장치, 파일, 메모리 관리
페이지 교체기법
FIFO, LRU(Least Recently Used) : 가장 오래 사용하지 않은, LFU(Least Frequently Used) : 참조 횟수 가장 적은
OPT(Optimal) : 앞으로 가장 사용안할(예측), NUR(Not Used Recently) : 최근 사용하지 않은
쓰레드 : 프로세스보다 가벼운, 독립적으로 수행되는 순차적인 제어의 흐름, 한 개의 프로세스는 여러 개 쓰레드가능
- UDP(사용자 데이터그램 프로토콜) : 비연결형 프로토콜 (TCP는 연결형 프로토콜)
비연결성, 신뢰성x, 순서화되지 않은 데이터그램 서비스 제공, 실시간 응용 및 멀티태스킹 가능, 단순 헤더
TCP : 순서 제어, 오류 제어, 흐름 제어, 양방향 가상회선 제공, 전송 데이터와 응답 데이터를 함께 전송
신뢰성 보장, 연결 지향적 특징, 흐름 제어, 혼잡 제어, 정지 – 대기 기법, 슬라이딩 원도 기법
라우팅 프로토콜(3계층)
-RIP(Routing Information Protocol): AS 내에서 사용하는 벡터 알고리즘에 기초하여 개발된 내부 라우팅 프로토콜,
벨만-포드 알고리즘 사용, 15홉 제한, UDP 사용, 30초마다 정보 공유
- OSPF(Open Shortest Path First) : 최단 경로 우선 프로토콜
다익스트라 알고리즘사용, 라우팅 메트릭 지정, AS 분할 사용, 홉 카운트 무제한, 멀티캐스팅 지원
- BGP : 경로 벡터 알고리즘
FIFO(선입선출), SSTF(가까운 순서대로), SCAN(진행방향 가까운 순서대로), C-SCAN(밖에서 안쪽 가까운 순서대로)
-ICMP(internet control message protocol) : 동작과정에 오류가 발생하는 것을 대비, 오류 정보를 전송하는 목적
C언어 strcat : 문자열을 이어 붙여줌
파이썬 range(A) : 0부터 A-1까지의 정수 범위, ranger(A,B) : A부터 B-1까지의 정수 범위
A class에 속하는 ip 주소 범위: 0.0.0.0 ~ 127.255.255.255 B class: 128.0.0.0 ~ 191.255.255.255
C class에 속하는 ip 주소 범위: 192.0.0.0 ~ 223.255.255.255
포인터
&n : 변수 n의 주소값 *pt : 포인터 pt가 가리키고 있는 주소에 저장된 값 = 변수 n
*&pt : *(포인터 pt의 주소값)-> 포인터 pt의 주소가 가리키고 있는 주소에 저장된 값 = 변수 n의 주소