🚀 What I Studied/정보처리기사

[정보처리기사] 실기 11단원 '응용 SW 기초 기술 활용' 정리

박낑깡이 2022. 10. 9. 01:20

운영체제

: 사용자가 컴퓨터의 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해주는 소프트웨어

 

 

 

프로세스 스케줄링 유형

  선점형 스케줄링 비선점형 스케줄링
개념 하나의 프로세스가 CPU를 차지하고 있을 때, 우선순위가 높은 다른 프로세스가 현재 프로세스를 중단시키고 CPU를 점유하는 스케줄링 방식 한 프로세스가 CPU를 할당받으면 작업 종료 후 CPU 반환 시까지다른 프로세스는 CPU 점유가 불가능한 스케줄링 방식

 

 

선점형 스케줄링 알고리즘의 유형 (SMMR)

SRT
(Shortest Remaining Time First)
- 가장 짧은 시간이 소요되는 프로세스를 먼저 수행
다단계 큐
(Multi Level Queue)
- 각 큐는 독자적인 스케줄링을 가진다
- 작업들을 여러 종류 그룹으로 분할, 여러 개의 큐를 이용해 상위단계 작업에 의한 하위단계 작업이 선점 당하는 알고리즘
다단계 피드백
(Multi Level Feedback Queue)
 
라운드 로빈
(Round Robin)
- 프로세스는 같은 크기의 CPU 시간을 할당
- 할당된 시간 내에 처리 완료를 하지 못하면 준비 큐 리스트의 가장 뒤로 보내지고, CPU는 대기 중인 다음 프로세스로 넘어가는 알고리즘

 

 

비선점형 스케줄링 알고리즘의 유형 (우기 HFS)

우선순위  
기한부  
HRN
(Highest Response Ratio Next)
- 대기 중인 프로세스 중 현재 응답률이 가장 높은 것을 선택
- 기아 현상 최소화 기법
- 우선순위 = (대기시간 + 서비스 시간) / 서비스 시간
FCFS
(First Come First Service)
 
SJF
(Shortest Job First)
- 가장 짧은 작업부터 수행하고, 평균 대기시간이 최소가 됨
- CPU 요구 시간이 긴 프로세스는 기아 현상이 발생

 

 

기아 현상  시스템 부하가 많아서 준비 큐에 있는 낮은 등급의 프로세스가 무한정 기다리는 현상
에이징 (Aging) 기아 현상을 해결하기 위한 기법으로 오랫동안 기다린 프로세스의 우선순위를 높여주는 기법

 

 

프로세스 스케줄링 주요 용어

서비스 시간 소요되는 시간
응답시간 반응하기 시작할 때까지 소요되는 시간
반환시간 프로세스들이 입력되어 수행하고 결과를 산출할 때까지 소요되는 시간
대기시간 + 수행시간
대기시간 큐에 대기하는 시간

 

 

 

유닉스(Unix) 계열 운영체제

: 데니스 리치와 켄 톰슨 등이 함께 벨 연구소를 통해 만든 운영체제이며, 90% 이상 C 언어로 구현되어 있는 운영체제로 범용 다중 사용자 방식의 시분할 운영체제 

 

 

유닉스 특징 (대다사이계)

대화식 운영체제 기능 제공  
다중 작업 기능 제공  
다중 사용자 기능 제공  
이식성 제공 90% 이상 C언어로 구현되어 있고, 시스템 프로그램이 모듈화되어 있어서 다른 하드웨어 기종으로 쉽게 이식 가능
계층적 트리 구조 파일 시스템 제공  



윈도즈 운영체제 특징 (G선자 오)

그래픽 사용자 인터페이스(GUI) 제공 키보드 없이 마우스로 작업을 수행하는 그래픽 기반의 인터페이스 방식
선점형 멀티태스킹 방식 제공 동시에 여러 개의 프로그램을 실행하면서 운영체제가 각 작업의 CPU이용 시간을 제어
자동감지 기능 제공  
OLE(Object Linking and Embedding) 사용 개체를 현재 작성 중인 문서에 자유롭게 연결 또는 삽입하여 편집할 수 있게 하는 기능

 

 

윈도즈 운영체제의 기본 명령어 (대문자)

ATTRIB  
CALL  
CD 현재 디렉터리의 이름을 보여주거나 바꿈
CHKDSK 디스크를 검사하고 상태 보고서를 표시
CLS 화면을 지움
CMD 명령 프롬프트 창을 열어줌
COMP  
DISKPART  
ECHO  
ERASE 하나 이상의 파일을 지움
EXIT 명령 인터프리터를 마침

 

리눅스 / 유닉스 계열의 기본 명령어 (소문자)

ls 자신이 속해있는 폴더 내에서의 파일 및 폴더들을 표시
pwd 현재 작업 중인 디렉토리의 절대 경로 출력
rm 파일 삭제 명령어
cp 파일 복사 명령어
mv 파일 이동 명령어
cat 파일의 내용을 화면에 출력
chmod 특정 파일 또는 디렉토리의 퍼미션 수정 명령어
chown 파일이나 디렉토리의 소유자, 소유 그룹 수정 명령어

 

 

 

 

프로세스 상태 (생준 실대완)

: 생성 -> 준비 -> 실행 -> 대기 -> 완료

 

 

 

가상화

: 물리적인 리소스들을 사용자에게 하나로 보이게 하거나, 하나의 물리적인 리소스를 여러 개로 보이게 하는 기술

 

가상화 기술요소

컴퓨팅 가상화 물리적으로 컴퓨터를 논리적으로 나눠서 리소스를 활용할 수 있도록 하는 기술
ex) 하이퍼바이저
스토리지 가상화 스토리지와 서버 사이에 소프트웨어/하드웨어 계층을 추가하여 스토리지를 논리적으로 제어 및 활용할 수 있도록 하는 기술
ex) 분산 파일 시스템 
I/O 가상화  
컨테이너 컨테이너화된 애플리케이션들이 단일 운영체제 상에서 실행되도록 해주는 기술
ex) 도커(Docker)
분산처리 기술 여러 대의 컴퓨터 계산 및 저장능력을 이용하여 커다란 계산 문제나 대용량의 데이터를 처리하고 저장하는 기술
네트워크 가상화 기술 - 물리적으로 떨어져 있는 다양한 장비들을 연결하기 위한 수단
- 중계장치(라우터, 스위치)의 가상화 수행
ex) SDN, NFV

 

 

클라우드 컴퓨팅 

: 인터넷을 통해 가상화된 컴퓨터 시스템 리소스를 제공하고, 정보를 자신의 컴퓨터가 아닌 클라우드(인터넷)에 연결된 다른 컴퓨터로 처리하는 기술

 

클라우드 컴퓨팅 분류 (사공하)

: 사설 클라우드 / 공용 클라우드 / 하이브리드 클라우드

 

클라우드 서비스 유형 (인플소)

인프라형 서비스
(IaaS; Infrastructure as a Service)
- 서버, 스토리지 같은 시스템 자원을 클라우드로 제공하는 서비스
플랫폼형 서비스
(PaaS; Platform as a Service)
- 인프라를 생성, 관리하는 복잡함 없이 애플리케이션을 개발, 실행, 관리할 수 있게하는 플랫폼을 제공
소프트웨어형 서비스
(SaaS; Software as a Service)
- 소프트웨어 및 관련 데이터는 중앙에 호스팅되고 사용자는 웹 브라우저 등의 클라이언트를 통해 접속하여 소프트웨어를 서비스 형태로 이용하는 서비스

 

 

OSI 7 Layer (아(A)파(P)서(S) 티(T)내(N)다(D) 피(Phy)나다)

응용 계층 (7)
(Application Layer)
- 사용자와 네트워크 간 응용서비스 연결, 데이터 생성
- 사용자 친화 환경 제공 (이메일, 웹 등)
HTTP, FTP
표현 계층 (6)
(Presentation Layer)
데이터 형식 설정, 부호 교환, 암 / 복호화 JPEG, MPEG
세션 계층 (5)
(Session Layer)
- 송수신 간의 논리적인 연결
- 연결 접속, 동기 제어
RPC, NetBIOS
전송 계층 (4)
(Transport Layer)
- 송수신 프로세스 간의 연결
- 신뢰성 있는 통신 보장
- 데이터 분할, 재조립, 흐름 제어, 오류 제어, 혼잡 제어
TCP, UDP
네트워크 계층 (3) 
(Network Layer)
단말기 간 데이터 전송을 위한 최적화 경로 제공 IP, ICMP
데이터링크 계층 (2)
(Data Link Layer)
- 인접 시스템 간(직접적으로 연결된) 데이터 전송, 전송 오류 제어
- 동기화, 오류 제어, 흐름 제어, 회선 제어
HDLC, PPP
물리 계층 (1)
(Physical Layer)
- 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환 RS-232C

 

 

네트워크 장비

1계층 장비

허브 여러 대의 컴퓨터를 연결하여 네트워크로 보내거나, 하나의 네트워크로 수신된 정보를 여러 대의 컴퓨터로 송신하기 위한 장비
리피터 디지털 신호를 증폭시켜 주는 역할

 

2계층 장비

브리지 두 개의 근거리통신망(LAN)을 서로 연결해 주는 통신망 연결 장치
L2 스위치 출발지에서 들어온 프레임을 목적지 MAC 주소 기반으로 빠르게 전송시키는 데이터 링크 계층의 통신 장치

1) Store and Forwading : 데이터를 전부 받은 후 다음 처리를 하는 방식
2) Cut Through : 데이터의 목적지 주소만 확인 후 바로 전송 처리하는 방식
3) Fragment Free : 프레임의 앞 64바이트만을 읽어 에러를 처리하고 목적지 포트로 전송
NIC 외부 네트워크와 접속하여 가장 빠른 속도로 데이터를 주고받을 수 있게 컴퓨터 내에 설치되는 장치
스위칭 허브 스위치 기능을 가진 허브

 

3계층 장비

라우터 - LAN과 LAN을 연결하거나 LAN과 WAN을 연결하기 위한 인터넷 네트워킹 장비
- 패킷의 위치를 추출하여, 그 위치에 대한 최적의 경로를 지정하며, 이 경로를 따라 데이터 패킷을 다음 장치로 전송시키는 장비
게이트웨이 프로토콜을 서로 다른 통신망에 접속할 수 있게 해주는 장치
L3 스위치 - 3계층에서 네트워크 단위들을 연결하는 통신 장비
- IP 레이어에서의 스위칭을 수행하여 외부로 전송
유무선 인터넷 공유기 외부로부터 들어오는 인터넷 라인을 연결하여 유선으로 여러 대의 기계를 연결하거나 무선 신호로 송출하면서 여러 대의 컴퓨터가 하나의 인터넷 라인을 공유할 수 있도록 하는 네트워크 장비
망(백본) 스위칭 허브 광역 네트워크를 커버하는 스위칭 허브

 

 

 

프로토콜

: 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신규약

 

프로토콜의 기본 3요소 (구의타)

구문 (Syntax) 데이터 형식, 코딩, 신호, 레벨 등의 규정
의미 (Sementic) 제어 정보로 조정과 에러 처리를 위한 규정
타이밍 (Timing) 속도 조절과 순서 관리 규정

 

 

<아래에 나와있는 예시들은 모두 계층별 프로토콜 예시들>

데이터 링크 계층 (2계층)

: 링크의 설정과 유지 및 종료를 담당하며 노드 간의 회선 제어, 흐름 제어, 오류 제어 기능을 수행

HDLC
(High-level Data Link Control)
 
PPP
(Point-to-Point Protocol)
 
프레임 릴레이  
ATM
(Asynchronous Transport Model)
비동기 전송모드라고 하는 광대역 전송에 쓰이는 스위칭 기법

 

 

네트워크 계층 (3계층)

: 다양한 길이의 패킷을 네트워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질을 위한 수단을 제공

IP
(Internet Protocol)
 
ARP
(Address Resolution Protocol)
 
RARP
(Reverse Address Resolution Protocol)
물리 네트워크(MAC) 주소에 해당하는 IP 주소를 알려주는 역순 주소 결정 프로토콜
ICMP
(Internet Control Message Protocol)
- IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜
- 메시지 형식은 8바이트의 헤더와 가변 길이의 데이터 영역으로 분리
- ping 유틸리티의 구현을 통해 오류가 발생했음을 알리는 기능을 수행
IGMP
(Internet Group Management Protocol)
 
라우팅 프로토콜  

 

  IPv4 IPv6
주소 길이 32bit 128bit
표시 방법 8비트씩 4부분 16비트씩 8부분
주소 할당 클래스 단위 비순차적 할당
(비효율적)
네트워크 규모 및 단말기 수에 따른 순차적 할당
(효율적)
헤더 크기 가변 고정
전송 방식 유멀브 / 유니캐스트, 멀티캐스트, 브로드 캐스트 유멀애 / 유니캐스트, 멀티캐스트, 애니캐스트

 

라우팅 프로토콜

(1) RIP (Routing Information Protocol)

벨만-포드 알고리즘 사용
15홉 제한
UDP 사용
30초마다 정보 공유

 

(2) OSPF (Open Shortest Path First)

: 규모가 크고 복잡한 TCP / IP 네트워크에서 RIP의 단점을 개선하기 위해 자신을 기준으로 링크 상태 알고리즘을 적용해 최단 경로를 찾는 라우팅 프로토콜

: 대표적인 내부 라우팅 프로토콜로 다익스트라 알고리즘을 이용한 대규모 네트워크에 적합한 링크 상태 라우팅 프로토콜

다익스트라 알고리즘 사용
라우팅 매트릭 지정
AS 분할 사용
홉 카운트 무제한
멀티캐스팅 지원

 

(3) BGP (Border Gateway Protocol)

- ISP 사업자들 상호 간에 주로 사용되는 라우팅 프로토콜

- 순환을 피할 수 있도록 목적지까지 가는 경로 정보를 제공

 

(4) IGRP

- RIP의 문제점 개선을 위해 시스코에서 개발

- 네트워크 상태를 고려하여 라우팅 (대역폭, 속도 등)

 

 

(5) 라우팅 알고리즘

거리 벡터 알고리즘
(Distance Vector Algorithm)
- 벨만-포드 알고리즘 사용 ex) RIP
- 인접 라우터와 정보를 공유하여 목적지까지의 거리와 방향을 결정
- 수신된 경로 비용 정보는 이웃 라우터에게만 보내짐
링크 상태 알고리즘
(Link State Algorithm)
- 다익스트라 알고리즘 사용 ex) OSFP
- 링크 상태 정보를 모든 라우터에 전달
- 계산이 더 복잡하고 트래픽을 광범위한 범위까지 전달

 

 

전송 계층 (4계층)

: 종단 간의 사용자들에게 신뢰성 있는 데이터를 전달하는 계층

 

(1) TCP (Transmission Control Protocol) (신연흐혼)

: 전송계층에 위치하면서 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 일련의 옥텟을 안정적으로, 순서대로, 에러 없이 교환할 수 있게 해주는 프로토콜

신뢰성 보장  
연결 지향적 특징  
흐름 제어  
혼잡 제어  

 

(2) UDP (User Datagram Protocol)

: 비연결성이고, 신뢰성이 없으며, 순서화되지 않은 데이터그램 서비스를 제공하는 전송계층 프로토콜

 

 

세션 계층 (5계층)

: 응용 프로그램 간의 대화를 유지하기 위한 구조를 제공하고, 이를 처리하기 위해 프로세스들의 논리적인 연결을 담당

RPC
(Remote Procedure Call)
 
NetBIOS
(Network Basic Input / Output System)
 

 

 

표현 계층 (6계층)

: 애플리케이션이 다루는 정보를 통신에 알맞은 형태로 만들거나, 하위 계층에서 온 데이터를 사용자가 이해할 수 있는 형태로 만드는 역할

JPEG 이미지
MPEG 멀티비다오

 

 

응용 계층 (7계층)

: 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 역할

HTTP
(Hyper Text Transfer Protocol)
- 텍스트 기반의 통신 규약
- 하이퍼텍스트를 빠르게 교환하기 위한 프로토콜
FTP
(File Transfer Protocol)
- TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일을 전송하기 위한 프로토콜
SMTP 
(Simple Mail Transfer Protocol)
 
POP3
(Post Office Protocol. 3)
 
IMAP
(Internet Messaging Access Protocol)
 
Telnet  
SSH
(Secure Shell)
- Telnet 보다 강력한 보안을 제공하는 원격접수 프로토콜
SNMP
(Simple Network Management Protocol)
 

 

 

패킷 교환 방식 (네트워크 전달 방식 1)

: 컴퓨터 네트워크와 통신의 방식 중 하나로 작은 블록 단위로 데이터를 전송하며 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 하는 통신 방식

패킷 교환 방식 종류 데이터 그램(Datagram) 방식  가상회선  방식
개념 연결 경로를 확립하지 않고 각각의 패킷을 순서에 무관하게 독립적으로 전송하는 방식 패킷이 전송되기 전에 송/수신 스테이션 간의 논리적인 통신 경로를 미리 설정하는 방식
동작 원리 및 특성 헤더를 붙여서 개별적으로 전달하는 비연결형 교환 방식 목적지 호스트와 연결 후 통신하는 연결형 교환 방식

 

X.25

- 통신을 원하는 두 단말장치가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 프로토콜
- 고정된 대역폭을 갖고 신뢰성 있는 통신을 하지만 복잡한 기능으로 인해 ISDN등의 고속망으로 대체되는 통신 기술

 

ATM(Asychronous Transfer Mode)

: 비동기 전송모드라고 하는 광대역 전송에 쓰이는 스위칭 기법

 

ATM 계층

AAL (ATM Adaptation Layer) 패킷을 작은 조각인 셀로 전송한 후 다시 조립하여 원래의 데이터로 복원하는 역할
ATM 계층 셀과 셀 전송 역할을 담당
물리 계층 물리적 전송 매체를 처리하는 역할

 

 

서킷 교환 방식 (네트워크 전달 방식 2)

: 네트워크 리소스를 특정 사용층이 독점하도록 하는 통신 방식

전송 보장 네트워크를 독점적으로 사용하기 때문에 전송이 보장
서킷 확보 작업 서킷을 확보하기 위한 작업을 진행하고 실데이터를 전송하며 서킷을 닫는 프로세스로 진행

 

에드 혹 네트워크 (Ad-hoc Network)

: 노드 (Node)들에 의해 자율적으로 구성되는 기반 구조가 없는 네트워크

- 네트워크의 구성 및 유지를 위해 기지국이나 액세스 포인트와 같은 기반 네트워크 장치를 필요로 하지 않는 네트워크

 

 

네트워크 기법

단편화 전송이 가능한 작은 블록으로 나누어지는 기법
재조립 단편화되어 온 조각들을 원래 데이터로 복원하는 기법
캡슐화 상위계층의 데이터에 각종 정보를 추가하여 하위 계층으로 보내는 기법
연결 제어 데이터의 전송량이나 속도를 제어하는 기법
오류 제어 전송 중 잃어버리는 데이터나 오류가 발생한 데이터를 검증하는 제어 기법
동기화 송신과 수신 측의 시점을 맞추는 기법
다중화 하나의 통신 회선에 여러 기기들이 접속할 수 있는 기술
주소 지정 송신과 수신지의 주소를 부여하여 정확한 데이터 전송을 보장하는 기법

 

 

프로세스 관리 기법

- CPU와 데이터를 송수신하는 상황에서 현재 메모리 사용부분, 메모리 입출력 순서, 메모리 공간 확보 등 수행

- 일시 중지 및 재실행, 동기화, 통신, 교착상태 처리, 프로세스 생성 삭제 가 있다.

 

 

~ 해당 포스팅은 업데이트 중 ~