기타/정보처리기사실기

[정보처리기사 실기 / 내용정리] 11. 응용 SW 기초 기술 활용

rinix_x 2022. 4. 20. 18:53
반응형
정보처리기사 실기 11. 응용 SW 기초 기술 활용
반응형
운영체제의 특징

* 운영체제(OS: Operating System) : 사용자가 컴퓨터의 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해주는 소프트웨어

* 운영체제 목적

 - 처리능력(Throughput) : 일정 시간 내에 시스템이 처리하는 일의 양

 - 반환시간(Turn Around Time) : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간

 - 사용 가능도(Availability) : 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도

 - 신뢰도(Reliability) : 시스템이 주어진 문제를 정확하게 해결하는 정도

* 운영체제 종류

 - 윈도우즈(Windows) 

   + 그래픽 사용자 인터페이스

   + 선점형 멀티태스킹

   + PnP(자동감지 기능)

   + OLE

   + 225자의 긴 파일명

   + Single-User 시스템

 - 유닉스(Unix) : Bell연구소, MIT, GeneralEletric이 공동 개발

   + 크기가 작고 이해하기 쉽다

   + 다중 사용자, 다중 작업을 지원

   + 트리 구조의 파일 시스템

   + 커널(Kerner) : 핵심적인 부분

   + 쉘(Shell) : 명령을 수행하는 명령어 해석기

   + 유틸리티 프로그램(UtilityProgram) : 응용프로그램을 처리하는 데 사용

 - 리눅스(Linux) : 리누스 토발즈가 Unix를 기반으로 개발

   + Unix와 완벽 호환

   + 대부분 특징이 Unix와 동일

 -  그 외

   + 맥(Mac) : Apple에서 Unix기반으로 개발한 운영체제

   + 안드로이드(Android) : 리눅스 기반의 안드로이드 운영체제

* 기본 명령어

더보기

* Windows기본 명령어

명령어 기능
DIR 현재 디렉터리의 파일 목록 표시
COPY 파일 복사 ex) copy a b -> a를 b로 복사
DEL 파일을 삭제
TYPE 내용 표시
REN 이름 변경 ex)ren a b -> a를 b로 변경
MD 디렉터리 생성
CD 동일한 드라이브에서 디렉터리의 위치 변경
CLS 화면의 내용 지움
ATTRIB 파일의 속성 변경
ex) attrib +r a ->a를 읽기전용으로 변경
FIND 파일에서 문자열을 찾는다.
ex) find "123" a
-> a에서 "123"이 포함된 문자열을 찾는다.
CHKDSK 디스크 상태 점검
FORMAT 디스크 표면을 트랙과 섹터로 나누어 초기화
MOVE 파일 이동

* Unix/Linux 기본 명령어

cat 파일 내용을 화면에 표시
cd 디렉터리의 위치를 변경
cmod 파일의 보호모드를 설정하여 파일의 사용허가를 지정
ex) chmod u=rwx A 
-> u에게 A파일의 읽기(r), 쓰기(w), 실행(x)권한 부여(=)
chown 파일 소유자와 그룹을 변경
ex) chown M A -> A파일 소유자를 M으로 변경
cp 파일을 복사
rm 파일 삭제
find 파일 찾기
fsck 파일 시스템을 검사 및 보수
kill PID(프로세스 고유번호)를 이용하여 프로세스를 종료
kilall 프로세스의 이름을 이용하여 프로세스 종료
ls 현재 디렉터리의 파일 목록 표시
mkdir 디렉터리 생성
r,dor 디렉터리 삭제
mv 파일을 이동
ps 현재 실행중인 프로세스 표시
pwd 현재 작업중인 디렉터리 경로를 화면에 표시
top 시스템의 프로세스와 메모리 사용 현황을 표시
who 현재 시스템에 접속해 있는 사용자를 표시
u : user, g : group, o : other, a : all, + : 권한 추가, - : 권한 삭제, = : 권한 부여, r : read, w : write, x : excute

 

* 메모리 관리 기법

 - 반입 기법 : 메모리 적재 시기 결정

 - 배치 기법 : 메모리 적재 위치 결정

 - 할당 기법 : 메모리 적재 방법 결정

 - 교체 기법 : 메모리 교체 대상 결정

* 메모리 배치 기법

 - 최초 적합(First-fit) : 프로세스가 적재될 수 있는 가용 공간 중에서 첫 번째 분할에 할당하는 방식

 - 최적 적합(Best-fit) : 가용 공간 중에서 가장 크기가 비슷한 공간을 선택하여 프로세스를 적재하는 방식

 - 최악 적합(Worst-fit) : 프로세스의 가용 공간들 중에서 가장 큰 공간에 할당하는 방식

 

* 프로세스 상태

 - 생성(Create) : 사용자에 의해 프로세스가 생성된 상태

 - 준비(Ready) : CPU를 할당받을 수 있는 상태

 - 실행(Run) : 프로세스가 CPU를 할당받아 동작 중인 상태

 - 대기(Wait) : 프로세스 실행 중 입출력 처리 등으로 인해 CPU를 양도하고 입출력 처리가 완료까지 대기 리스트에서 기다리는 상태

 - 완료(complete) : 프로세스가 CPU를 할당받아 주어진 시간 내에 완전히 수행을 종료한 상태

 

* 프로세스 상태 전이

시나공 참조

 - 제출(Submit) : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태

 - 접수(Hold) : 제출된 작업이 스풀 공간이 디스크의 할당 위치에 저장된 상태

   + Spooling은 입출력 장치의 공유 및 상대적으로 느린 입출력 장치의 처리속도를 보완하고 향상시키기 위해 디스크에 저장하는 과정

 - 준비(Ready) : 프로세스삭 프로세서를 할당받기 위해 기다리고 있는 상태

 - 실행(Run) : 준비 상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태

 - 대기(Wait), 보류, 블록(Block) : 프로세스에 입출력 처리가 필요하면 현재 실행 중인 프로세스가 중단되고, 입출력 처리가 완료될 때까지 대기하고 있는 상태

 - 종료(Terminated, Exit) : 프로세스의 실행이 끝나고 프로세스 할당이 해제된 상태

 

* 프로세스 스케줄링의 유형
 - 선점형 스케줄링 : 우선순위가 높은 프로세스가 CPU를 점유하는 스케줄링
   + 라운드 로빈(Round Robbin) : 프로세스는 같은 크기의 CPU 시간 할당
   + SRT(Shortest Remaining Time First) : 가장 짧은 시간이 소요되는 프로세스를 먼저 수행
   + 다단계 큐(Multi Level Queue) : 여러 개의 큐를 이용하여 상위단계 작업에 의한 하위 단계 작업이 선점
   + 다단계 피드백 큐(Multi Level Feedback Queue) : 큐마다 서로 다른 CPU 시간 할당량을 부여, FIFO+라운드 로빈 스케줄링 기법 혼합
 - 비선점형 스케줄링 : 한 프로세스가 CPU를 할당받으면 작업 종료 전까지 다른 프로세스는 CPU 점유 불가능한 스케줄링
   + 우선순위(Priority) : 프로세스별 우선순위에 따라 CPU 할당
   + 기한부(Deadline) : 작업들이 명시된 기한 내에 완료되도록 계획
   + FCFS(First Come First Service) : 프로세스가 대기 큐에 도착한 순서에 따라 CPU 할당=FIFO
   + SJF(Shortest Job First) : 가장 짧은 작업부터 수행, 평균 대시 시간 최소화. 기아 현상 발생
   + HRN(Highest Response Ratio Next) : 대기 중인 프로세스 중 현재 응답률이 가장 높은 것을 선택, 기아 현상 최소화 기법

 

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

 - 플랫폼 가상화 : 플랫폼 위에 독립된 환경을 만드는 기술

 - 리소스 가상화 : 독립된 하드웨어에서 소프트웨어가 실행되는 것처럼 활용하는 기법

 - 컴퓨터 가상화(Hyper V) : 물리적인 리소스를 논리적인 리소스로 사용

 - 분산처리 기술 : 여러 대 컴퓨터를 이용하여 대용량 처리


* 클라우드 컴퓨팅(Cloud Computing) : 인터넷을 통해 가상화된 컴퓨터 시스템 리소스 제공
* 클라우드 컴퓨팅 유형
 - 인프라형 서비스(IaaS: Infrastructure as a Service) : 서버, 스토리지 같은 시스템 자원을 클라우드로 제공하는 서비스
 - 플랫폼형 서비스(Paas: Platform as a Service) : 애플리케이션 개발, 실행, 관리할 수 있게 하는 플랫폼을 제공하는 서비스
 - 소프트웨어형 서비스(SaaS: Software as a Service) : 클라이언트 통해 접속하여 소프트웨어 서비스 형태로 이용하는 서비스

 

네트워크 계층 구조 파악

* 네트워크(Network) : 원하는 정보를 원하는 수신자 또는 기기에 정확하게 전송하기 위한 기반 인프라
 - 광대역 네트워크(WAN) : LAN에 비해 전송거리가 넓음
 - 근거리 네트워크(LAN) : 한 건물 또는 작은 지역 커버
* OSI(Open System Interconnection) 7 계층
 - 물리 계층(Physical Layer) : 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환, 

   + 10 BASE-T,10 BASE-TX, DSL, X.21

   + 데이터 단위 : 비트

   + 관련 장비 : 리피터, 허브
 - 데이터링크 계층(Data Link Layer) : 인접 시스템 간 데이터 전송, 전송 오류 제어

   + 이더넷 : LAN을 위해 개발된 기술, 고유한 MAC 주소 CSMA/CD방식 이용, 토큰 링 : IEEE 802.5, FDDI : 광섬유, 

   + 데이터 단위 : 프레임

   + 관련 장비 : 랜카드, 브리지, 스위치
 - 네트워크 계층(Network Layer) : 단말기 간 데이터 전송을 위한 최적화된 경로 제공

   + IP : 데이터 세그먼트를 패킷으로 만듦, ICMP : ping, ARP : IP주소를 물리적 하드웨어로 변경, RARP, IGMP, BGP

   + 데이터 단위 : 패킷

   + 관련 장비 : 라우터
 - 전송 계층(Transport Layer) : 송수신 프로세스 간의 연결

   + TCP, UDP : TCP에 비해 빠름

   + 데이터 단위 : 세그먼트

   + 관련 장비 : 게이트웨이
 - 세션 계층(Session Layer) : 송수신 간의 논리적인 연결

   + SSL, TLS, NetBIOS

   + 데이터 단위 : 메시지

   + 관련 장비 : 데이터

 - 표현 계층(Presentation Layer) : 데이터 형식 설정, 부호 교환, 암/복호화

   + SMB(SAMBA) : 다른 시스템(리눅스)의 디스크나 프린터 등의 지원을 공유할 수 있도록 함, 현재는 SMB가 확장된 CIFS라 부른다.

   + 데이터 단위 : 메시지

   + 관련 장비 : 데이터

 - 응용 계층(Application Layer) : 사용자와 네트워크 간 응용서비스 연결, 데이터 생성

   + HTTP(80), HTTPS(443), SMTP(25), POP3(110), IMAP(143), DNS(53), NFS : RPC 프로토콜 기반으로 작동, 보안에 취약

   + 데이터 단위 : 메시지

   + 관련 장비 : 데이터

 

* 허브(Hub)

 - 더미 허브(Dummy Hub) : 네트워크에 흐르는 모든 데이터를 단순히 연결하는 기능만을 제공한다.

 - 스위칭 허브(Switching Hub) : 네트워크상에 흐르는 데이터의 유무 및 흐름을 제어하여 각각의 노드가 허브의 최대 대역폭을 사용할 수 있는 지능형 허브

* 리피터(Repeater)

 - 전송되는 신호가 전송 선로의 특성 및 외부 충격 등의 요인으로 인해 원래의 형태와 다르게 왜곡되거나 약해질 경우 원래의 신호 형태로 재생하여 다시 전송하는 역할을 수행한다.

* 브리지(Bridge)

 - 브리지는 LAN과 LAN을 연결하거나 LAN안에서의 컴퓨터 그룹(세그먼트)을 연결하는 기능을 수행한다.

* 스위치(Switch)

 - 브리지와 같이 LAN과 LAN을 연결하여 훨씬 더 큰 LAN을 만드는 장치이다.

 - 전송속도가 빠름

   + L2 스위치 : OSI의 2 계층에 속하는 장비, MAC 주소를 기반으로 프레임을 전송

   + L3 스위치 : OSI의 3 계층에 속하는 장비, IP주소를 기반으로 패킷을 전송

   + L4 스위치 : OSI의 4 계층에 속하는 장비, IP주소 및 TCP/UDP를 기반으로 사용자들의 요구를 서버 부하가 적은 곳에 배분하는 로드밸런싱 기능을 제공

   + L7 스위치 : OSI 7 계층에 속하는 장비, IP주소, TCP/UDP 포트 정보에 패킷 내용까지 참조하여 세밀하게 로드밸런싱

* 라우터

 - LAN과 LAN의 연결 기능에 데이터 전송의 최적 경로를 선택할 수 있는 기능이 추가된 것.

* 게이트웨이

 - 전 계층의 프로토콜 구조가 다른 네트워크의 연결을 수행한다.

 

* 프로토콜(Protocol) : 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신규약
* 프로토콜 기본 3요소
 - 구문(Syntax) : 시스템 간의 정보 전송을 위한 데이터 형식, 코딩, 신호 레벨 등의 규적
 - 의미(Semantic) : 시스템 간의 정보 전송을 위한 제어 정보로 조정과 에러 처리를 위한 규정
 - 타이밍(Timing) : 시스템 간의 정보 전송을 위한 속도 조절과 순서 관리 규정
* 네트워크 프로토콜(Network Protocol) : 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고받는 양식과 규칙의 체계


* 데이터 링크 계층 프로토콜
 - HDLC(High-level Data Link Control) : 점대점 방식이나 다중방식 통신에 사용되며, 동기식 비트 중심
 - PPP(Point-to-Point Protocol) : 네트워크 분야에서 두 통신 노드 간의 직접적인 연결
 - 프레임 릴레이(Frame Relay) : 프로토콜 처리를 간략화하여 데이터 처리속도의 향상 및 전송 지연을 감소시킨 고속 데이터 전송 기술
 - ATM(Asynchronous Transport Mode) : 53바이트 셀 단위로 전달하는 비동기식 시분할 다중화 방식의 패킷형 전송 기술

* 표현 계층 프로토콜
 - JPEG : 이미지를 위해 만들어진 표준 규격
 - MPEG : 멀티미디어(비디오, 오디오)를 위해 만들어진 표준 규격
* 응용계층 프로토콜
 - FTP(File Transfer Protocol)

   + TCP/IP를 갖고 서버와 클라이언트 사이의 파일을 전송하기 위한 프로토콜

   + 컴퓨터와 컴퓨터 또는 컴퓨터와 인터넷 사이에서 파일을 주고받을 수 있도록 하는 원격 파일 전송 프로토콜
 - SMTP(Simple Mail Transfer Protocol) 

   + 인터넷에서 TCP 포트 25번을 사용하여 이메일을 보내기 위해 이용되는 프로토콜

   + 전자 우편을 교환하는 서비스
 - TELNET

   + 인터넷이나 로컬 영역에서 네트워크 연결에 사용되는 네트워크 프로토콜

   + 프로그램을 실행하는 등 시스템 관리 작업을 할 수 있는 가상 터미널 기능을 수행한다.
 - SNMP(Simple Network Managemnet Protocol)

   + 라우터나 허브 등 네트워크 장치로부터 정보를 수집 및 관리 사용되는 표준 통신 규약

   + TCP/IP의 네트워크 관리 프로토콜

 - DNS(Domain Name System)

   + 도메인 네임을 IP주소로 매핑(Mapping)하는 시스템이다.
 - HTTP(Hyper Text Transfer Protocol)

   + 텍스트 기반의 통신 구약, 하이퍼텍스트를 빠르게 교환하기 위한 프로토콜

   + 월드 와이드 웹(WWW)에서 HTML 문서를 송수신하기 위한 표준 프로토콜
 - POP3(Post Office Protocol Version 3) : 원격 서버로부터 TCP/IP 연결을 통해 이메일을 가져오는 데 사용하는 프로토콜
 - IMAP(Internet Messaging Access Protocol) : 원격 서버로부터 TCP/IP 연결을 통해 이메일을 가져오는 데 사용하는 프로토콜
 - SSH(Secure Shell) : 서로 연결되어 있는 컴퓨터 간 원격 명령 실행이나 쉘 서비스 등을 수행, Telent보다 강력한 보안 제공

* 네트워크 계층 프로토콜
 - IP(Internet Protocol) : 송수신 간의 패킷 단위로 데이터를 교환하는 네트워크에서 정보를 주고받는 데 사용
 - ICMP(Internet Control Message Protocol) : IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜
 - IGMP(Internet Group Managemnet Protocol) : 호스트 컴퓨터와 인접 라우터가 멀티캐스트 그룹 멤버십을 구성하는 데 사용하는 통신 프로토콜
 - ARP(Adress Resolution Protocol) : IP 네트워크상에서 IP주소를 MAC 주소(물리 주소)로 변환하는 프로토콜
 - RARP(Reverse Address Resolution Protocol) : 서버로부터 IP 주소를 요청하기 위해 사용하는 프로토콜
 - 라우팅 프로토콜(Routing Protocol) : 데이터 전송을 위해 최적의 경로를 설정해주는 라우터 간의 상호 통신 프로토콜

* 네트워크 액세스 계층 프로토콜

 - Ethernet(IEEE 802.3) : CSMA/CD방식의 LAN이다.

 - IEEE 802 : LAN을 위한 표준 프로토콜

 - HDLC : 비트 위주의 데이터 링크 제어 프로토콜

 - X.25 : 패킷 교환망을 통한 DTE와 DCE 간의 인터페이스를 제공하는 프로토콜

 - RS-232C : 공중전화 교환망(PSTN)을 통한 DTE와 DCE 간의 인터페이스를 제공하는 프로토콜


* IPv4 (Internet Protocol version 4) : 인터넷에서 사용되는 패킷 교환 네트워크상에서 데이터를 교환하기 위한 32bit 주소체계를 갖는 네트워크 계층 프로토콜
 - 8비트씩 4 부분으로 나뉜 10진수
 - 0~255까지 3 자릿수 표현
 - 유니캐스트, 멀티캐스트, 브로드캐스트
* IPv4 클래스 분류
 - A클래스 : 국가나 대형 통신망에 사용(1~127), 네트워크 사용자에게 부여가 가능한 IP
 - B클래스 : 중대형 통신망에 사용(128~191)
 - C클래스 : 소규모 통신망에 사용(192~223)
 - D클래스 : 멀티캐스트 용도로 예약된 주소(224~239)
 - E클래스 : 연구를 위해 예약된 주소(공용 사용 불가)
* IPv6 (Internet Protocol version 6) : IPv4의 주소 부족 문제를 해결하기 위해 개발
 - IPv4에 비해 자료 전송속도가 빠름
 - 128비트 주소체계
 - 16비트씩 8개 부분으로 나눈 16진수

   + 유니캐스트 : 단일 송신자와 단일 수신자 간의 통신(1:1 통신에 사용)

   + 멀티캐스트 : 단일 송신자와 다중 수신자 간의 통신(1:N 통신에 사용)

   + 애니캐스트 : 단일 송신자와 가장 가까이 있는 단일 수신자 간의 통신(1:1 통신에 사용)
* IPv4에서 IPv6으로 전환 방법 : 듀얼 스택, 터널링, 주소 변환 방식


* 라우팅 프로토콜
 - 내부 라우팅 프로토콜(IGP)
   + RIP(Routing Information Protocol) : AS(자율시스템) 내에서 사용하는 거리 벡터 알고리즘에 기초하여 개발된 내부 라우팅 프로토콜

     = IGRP : RIP의 문제 접을 개선하기 위해 개발된 통신규약 거리 벡터 알고리즘, 
   + OSPF(Oepn Shortest Path First) : 자신을 기준으로 링크 상태 알고리즘을 적용하여 최단 경로를 찾는 라우팅 프로토콜
 - 외부 라우팅 프로토콜(EGP)
   + BGP(Border Gateway Protocol) : AS상호 간에 경로 정보를 교환하기 위한 라우팅 프로토콜 (링크 상태 알고리즘)


* TCP(Transmission Control Protocol)

 - 근거리 통신망이나 인터넷에서 신뢰성 있는 전송을 수행하는 프로토콜
 - TCP 특징 : 신뢰성 보장, 연결 지향적 특징, 흐름 제어, 혼잡 제어
* UDP(User Datagram Protocol)

 - 비연결성이고 신뢰성이 없으며 순서화되지 않는 데이터그램 서비스를 제공하는 통신 프로토콜
 - UDP 특징 : 비신뢰성, 순서화되지 않은 데이터그램 서비스 제공, 실시간 응용 및 멀티캐스트 가능, 단순 헤더

* RTCP(Real-Time-Control Protocol)

 - RIP 패킷의 전송 품질을 제어하기 위한 제어 프로토콜

 - 하위 프로토콜은 데이터 패킷과 제어 패킷의 다중화를 제공한다.


* 패킷 교환 방식(Packet Switching) : 작은 블록의 패킷으로 데이터를 전송하여 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 하는 통신 방식
 - 활용 : 이메일, 메시지
* 패킷 교환 방식 기술
 - X.25 : 통신을 원하는 두 단말장치가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 프로토콜
 - 프레임 릴레이 : ISDN을 사용하기 위한 프로토콜로서 ITU-T에 의해 표준으로 작성
 - ATM(Asynchronous Transfer Mode) : 비동기 전송 모드, 광대역 전송에 쓰이는 스위칭 기법
* 서킷 교환 방식(Circuit Switching) : 네트워크 리소스를 특정 사용층이 독점하도록 하는 통신 방식
 - 활용 : 영상, 비디오
* 애드 혹 네트워크(Ad-hoc Network) : 노드들에 의해 자율적으로 구성되는 기반 구조가 없는 네트워크

 

기본 개발환경 구축하기

* 개발환경 인프라 구성 방식
 - 온프레미스(On-Premise) 방식 : 외부 인터넷망이 차단된 상태에서 인트라넷망만을 활용하여 개발환경을 구축하는 방식
 - 클라우드(Cloud) 방식 : 클라우드 공습 서비스를 제공하는 회사들(아마존, 구글, MS 등)의 서비스를 임대하여 개발 환경을 구축하는 방식
 - 하이브리드(Hybrid) 방식 : 온프레미스와 클라우드 방식을 혼용한 방식

반응형