공부하는 스누피

[정보처리기사] 4-3 응용 소프트웨어 기초 기술 정리 본문

CS/소프트웨어 공학

[정보처리기사] 4-3 응용 소프트웨어 기초 기술 정리

커피맛스누피 2020. 8. 19. 13:04

1. 운영체제

- 시스템 자원 관리 & 환경 제공 (유틸리티와 하드웨어 사이에 위치)

- 목적

  처리능력 Throughput : 일의 양

  반환시간 Turn Around Time: 응답시간

  사용가능도 Availability: 즉시 사용할 수 있게

  신뢰도 Reliability: 정확성

- Window : Single User, Multi Tasking(Multi Programming)

- UNIX: Multi User, Multi Tasking(Multi Programming)

 

2. UNIX

- 시분할 시스템, Open System

- 커널 Kernel: 프로그램과 하드웨어 간 인터페이스

- 쉘 Shell: 명령어 해석기, 파이프라인 가능하게 함

- Utility Program: 응용 프로그램(컴파일러,,,)

 

3. 기억장치 관리

------------------(가격 비쌈, 시간 단축, 용량 적음)

레지스터

캐시

주 기억장치

보조 기억장치

------------------(가격 쌈, 시간 증가, 용량 큼)

- 관리 전략

a) 반입 Fetch

요구 반입, 예상 반입(Anticipatory)가 있음. 요청없이도 반입하느냐 안하느냐의 차이.

b) 배치 Placement

최초, 최적, 최악의 장소에 배치함에 따라 단편화 정도가 달라짐.

c) 교체 Replacement

메모리가 부족할 경우 공간 확보를 해야 함. (FIFO, LRU ...)

 

- 가상기억장치 관리

a) 페이징 Paging (외부 단편화 x, 내부 단편화 o)

프로그램을 페이지로 나눠서 나눠진 주기억장치(페이지 프레임)에 적재함. 페이지는 크기가 동일함.

b) 세그멘테이션 Segmentation (외부 단편화 o, 내부 단편화 x)

프로그램을 논리적단위(Segment)로 나누어서 주기억장치(페이지 프레임)에 적재함. 세그먼트 크기는 변할 수 있음.

 

- 페이지 교체 알고리즘

a) OPT 최적 교체 알고리즘

b) FIFO 큐

c) LRU 오래 사용 안한 것부터

d) LFU 사용 빈도 적은 것부터

e) NUR 최근 사용 안한 것부터 (비트 2개 필요)

f) SCR: FIFO와 LFU 합친 것.

 

- Working Set: 자주 참조하는 것을 메인 메모리에 상주시킴 (프로세스 내에서 변경 가능)

 

- Locality: 프로그램의 참조 영역은 지역화 된다는 이론(증명됨)

시간 구역성 Tempral Locality

: 일정 시간동안 집중 액세스 => (반복에 적용)

공간 구역성 Spatial Locality

: 일정 위치를 계속 액세스 => (배열, 순차적인 작업에 적용)

 

- Page Fault Frequency: Page Fault 횟수 (페이지 프레임이 많아질수록 줄어듬)

* Page Fault: 메인 메모리에 찾고자 하는 페이지가 없을 경우

 

- Thrashing: 프로세스 처리시간 < 페이지 교체 시간

=> 페이지 크기가 너무 작을 경우 발생할 수도

 

- 프로세스: 실행중인 프로그램

PCB(Process Control Block): 프로세스 상태, 포인터, 식별자, 우선순위, CPU 레지스터, 주기억장치 정보, 입출력상태 계정정보,,, 등 프로세스 제어와 관련된 데이터 블록

 

- 프로세스 상태

-------------------------------------------------------------------

submit -> hold -> ready -(dispatch)-> run -> exit(terminate)

    (spooling)|         L(wake up)- wait -/ 

               disk

-------------------------------------------------------------------

Dispatch: 대기->실행

Wake up: 대기->준비

Spooling: hold된 프로세스들 한꺼번에 디스크 저장

 

- 스레드: 프로세스 내에서의 작업 단위

 -> 실행환경 공유해서 메모리 낭비 적음

 

4. 인터넷: TCP/IP 프로토콜 기반의 컴퓨터 통신망

- IP

IP 주소: A class(국가) B class(중대형) C class(소규모) D class(멀티캐스트용) E class(실험용, 공용 X)

IPv6: IPv4가 부족해져서 나타남. Unicast(1:1), Multicast(1:N), Anycast(1:1 가까이) 가능함. 16비트.

Domain name: IP 문자화

www -> 호스트 컴퓨터 이름

knu -> 소속기관 이름

ac -> 기관 종류

kr ->  소속 국가

 

- OSI 참조 모델

---------------------

Application: 사용자 접근

---------------------

Presentation: 데이터 변환 -> 상호 접속, 암호화,,,

---------------------

Session: 대화 제어, 수신체크, 동기점(대화 전달 확인)

---------------------

Transport: 종단 시스템 간 전송 설정(게이트웨이: 프로토콜 구조가 다른 네트워크 연결), 위 3계층과 아래 3계층 사이의 인터페이스 역할.

---------------------

Network: 네트워크 연결 관리, 데어터 중계(라우터: 데이터 전송 최적 경로 선택/프로토콜 변환)

---------------------

Data Link: 인접한 개방 시스템 간 전송, 흐름 제어, 동기화, 데이터 복구 (랜카드, 브리지: LAN끼리 연결- MAC, 스위치: LAN 연결해서 더 큰 LAN 만들기)

---------------------

Physical: 기계적,,, 물리적인 요소,,, (허브: 컴퓨터와 컴퓨터 연결, 리피터: 전송오류시 다시 전송)

---------------------

 

- 프로토콜

3요소: Syntax(형식), Semantics(제어 정보), Timing(속도)

 

 

- TCP/IP 프로토콜

a) Application

 FTP(File Transfer Protocol), SNMP(Simple Network Management Protocol), SMTP(Simple Mail Transfer Protocol)

 TELNET(virtual terminal) DNS(Domain Name System) HTTP...

 

b) Transport

 TCP(Transmission Control Protocol) UDP(User Datagram Protocol)

RTCP(Real-Time Control Protocol): 주기적으로 정보전송(Multiflexing)

 

c) Internet

 IP(Internet Protocol): 경로 설정 ICMP: 오류 처리 프로토콜

 ARP(Address Resolution Protocol): 논리 주소 -> 물리 주소

 RARP(Reverse ARP): 물리 주소 -> 논리 주소

 

d) Network Access

 Ethernet, IEEE, HDLC(비트 위주)

Comments