ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4-2 응용 sw 기초 기술 활용
    자격증/정처기 2023. 5. 20. 09:07

     

     

    운영체제

    - 사용자와 하드웨어(시스템) 사이 인터페이스를 제공

    - 사용자 > app > 유틸리티 > OS > 하드웨어

    - 제어: 감시 + 작업 관리 + 데이터 관리

    - 처리: 언어 번역 + 서비스

     

    윈도우

    - 선점형(Preemptive) 멀티 태스킹: 문제 발생시 강제 종료 = CPU 독점 방지

    - 자동 감지 기능 (Plug N Play = PNP): HW에 필요한 환경 자동 구성

    - OLE: 개체를 자유롭게 연결(Link), 삽입(Embedd) -> 프로그램간 자료 공유

    + GUI, VFAT(255자 파일명)

     

     유닉스

    - 하드웨어 > 커널 > 쉘 > 유틸 > 사용자

    - 쉘: 시스템과 사용자 사이 인터페이스 + 파이프라인

    - 커널: HW와 프로그램 사이 인터페이스

    - 오픈소스, 시분할, C, 이식성, 트리구조(계층)

     

    - 윈도우 = 싱글 유저 멀티 태스킹

    - UNIX = 멀티 유저 멀티 태스킹

     

     

     

     

     

    기억 장치 계층 구조

    - 레지스터 + 캐시 + 주 + 보조 기억정치

    - 주 기억장치까지 CPU가 직접 접근 가능

     

    기억 장치 관리 전략

    -반입(Fetch), 배치(Placement), 교체(Replacement) 

    -반입: 언제 로딩할지 // 요구(Demand) + 예상(Anticipatory)

    -배치: 어디에 로딩할지 // 최초 + 최적 + 최악

    -교체: 

     

     

    주기억장치 할당(Allocation)

    - 어떻게 할당할지 정함

     

    연속 할당 기법

    - 단일: 스와핑 + 오버레이  *경계(boundary) 레지스터

    - 다중: 고정(정적, MFT) + 가변(동적, MVT)

     

    분산 할당 기법

    - 가상메모리 = 주소 변환 필요

     

    1) 페이징

    - 일정한 단위로 나눠진 프로그램(페이지)을 메모리(페이지 프레임)에 적재

    - 외부 단편화 X, 내부 단편화 O

    - 주소 변환: 페이지 맵 테이블 = 비용 증가. 속도 감소

    - 페이지 크기가 작을수록 로딩시간/단편화 감소, 지역성/워킹셋 효율 증가, 맵핑/입출력 시간 증가

     

    2) 세그먼테이션: 

    - 논리적인 단위로 나눠진 프로그램(세그먼트)을 메모리에 적재

    - 내부 단편화 X, 외부 단편화 O

    - 각 세그먼트는 고유한 이름과 크기를 지님

    - 사용자 관점, 기억공간 절약, 세그먼트 맵 테이블, 보호키

     

     

    페이지 교체 알고리즘

    1)OPT = Optimal = 앞으로 가장 오래 사용하지 않을 것 교체

    2)LRU = Least Recently Used = 가장 오래 사용하지 않은 것 교체

    3)NUR = Not Used Recently = 최근에 사용하지 않은 것 교체

    4)LFU = Least Frequently Used = 가장 적게 사용한 것 교체

    5)FIFO = FCFS (First Come First Serve)

    6)SCR = Second Chance Replacement = 가장 오래된 것중 자주 사용하는건 제외

     

    *참조 비트 + 변형 비트 = NUR

     

     

     

    지역성

    시간: 루프, 스택, 서브루틴, 카운팅, 집계(total)

    공간: 배열, 순차적 코드, 변수

     

    워킹셋: 자주 참조하는 페이지 집합

    프리페이징: 많이 페이징

    스래싱: 과도한 병렬처리로 CPU 이용률 감소,  //  프로세스 처리 시간 < 페이지 교체 시간

     

     

     

    프로세스

    - 실행중인 프로그램/프로시저

    - 작업(job)이나 Task라고도 함

    - 디스패치가 가능한 단위 (준비->실행) = OS의 실행 단위

    - 비동기적(시분할)

    - PCB: 현재 상태 + 식별자 + 우선순위 + 포인터 + 레지스터(PC)/메모리/IO/계정 정보

     

    프로세스 상태

    스풀링: 접수된 입출력 데이터를 디스크에 모았다가 한번에 처리

    타임아웃 = 실행->준비  //  IO발생 = 실행->대기

     

     

    스레드

    - 프로세스 내 작업 단위

    - 독립적인 스케쥴링의 최소 단위

    - 레지스터, 스택은 비공유

     

    스케쥴링

    -비선점: FIFO, SJF, HRN, 우선순위, 기한부(데드라인)                                     (공정, 예측, 일괄처리)

    -선점: RR, SRT, 선점 우선순위, MLQ(다단계 큐), MLFQ(다단계 피드백 큐) //  (우선순위, 오버헤드, Clock, 대화식 시분할) 

     

    1)SJF = Shortest Job First

    - 실행 시간이 짧은 것 부터

    - 평균 대기 시간이 가장 적음

    - 실행시간이 긴 프로세스가 무한 연기될 수 있음

     

    2)HRN = Hightest Response-ratio Next

    - (대기+실행)/실행

    - SJF의 문제 보완

     

     

     

    환경변수: %윈도우(SET), $리눅스(set, env, setenv, printenv)

     

     

     

     

     

    인터넷

    - TCP/IP + 유닉스

    - 브리지 + 라우터 + 게이트웨이

    - (데이터링크, 네트워크, 전송)

     

     

     

    IP 주소 클래스

    - 네트워크와 호스트 영역을 구분하는 방법/약속

    - A: 0 = 0~127로 시작, 국가/대형통신망

    - B: 10 = 128~191로 시작. 중형 통신망

    - C: 110 = 192~223로 시작, 소규모 통신망

    - D: 1110 = 224~239로 시작, 멀티캐스트

     

    서브네팅

    - 네트워크를 더 잘게 나눠 사용하는 것

     

    200.1.1.0/24를 10개의 subnet으로 나눴다

    -> 서브넷 마스크가 /24 = 1이 24개 = 0이 (32-24=)8비트

    -> 10개의 서브넷 = 네트워크 구분에 8<10<16, 4비트 필요

    -> 8비트중 4비트는 네트워크 구분, 나머지 4비트는 호스트 구분 

    -> 200.1.1.0~15 / 16~31 / 32 ~47 (0010+0000~0010+1111) / 48~64

    *CIDR

     

     

    IPv6

    - 8비트*4 -> 16비트*8 = 128비트

    - 기밀성 + 무결성 + 인증성

    - 패킷 크기 확장 가능 = 제한 없음

    - 패킷 헤더는 40바이트 고정

    - 유니(1:1) + 멀티(1:N) + 애니(1:1) 

    * IPv4는 유니 + 멀티 + 브로드

     

     

     

    OSI 참조 모델

    최상위

    7계층: 응용  //  메시지  -> 응용 서비스 (파일 전송, 가상 터미널, 전자 사서함)

    6계층: 표현  //  메시지  ->  코드변환, 구문 검색, 암호화, 압축, 문맥 관리, 포맷 변환

    5계층: 세션  //  메시지  ->  동기, 토큰

    4계층: 전송  //  세그먼트  ->  오류,흐름 제어 + 다중화, 인터페이스, 종단(end to end= 단말기 사이)

    3계층: 네트워크  //  패킷  ->  최적화 경로(라우팅), 트래픽 제어

    2계층: 데이터 링크  //  프레임  ->  오류,흐름 제어 + 프레임 동기화   *물리적 = 인접한

    1계층: 물리  //  비트  ->  기계적, 전기적, 기능적, 절차적

    최하위

     

    *응용 = HTTP, FTP,  SMTP, SNTP, DNS, TELNET,

    *표현 = JPEG MPEG

    *세션 = SSH TL

    *전송 = TCP UDP RTCP

    *네트워크 = IP + ICMP IGMP RIP + ARP RARP OSPF

    *데이터크 = MAC + PPP + L 들어가는거 

     

    *X21 = 물리, X25 = 네트워크

     

     

    네트워크 장비

    - 리피터(Repeater): 물리계층, 약해진 신호를 재생하여 '재전송' 

    - 허브: 물리, 연결

     

    - 스위치: 데이터링크 계층, LAN과 LAN 연결 -> 더 큰 LAN   + 하드웨어 기반

    - 브리지: 데이터링크 계층, LAN과 LAN 연결, MAC, 세그먼트 연결 (4계층 아님!), 네트워크 분산,

    *브리지가 N개면 회선은 N(N-1)/2

     

    - 라우터: 네트워크 계층, LAN과 LAN, LAN과 WAN연결 + 전송 경로 최적화

    *LAN = 근거리, WAN은 원거리

    - 게이트웨이: 전송 계층, 전 계층의 연결 수행

     

     

     

    프로토콜

    - 표준화된 통신 규약

    - HW, SW, 문서를 모두 규정

    - 구문 + 의미 + 시간(타이밍)

     

     

    TCP/IP

    - 인터넷 표준 프로토콜

    - TCP: 전송 계층, 연결형 = 양방향 = 신뢰성 // 제어 있음 + 패킷 다중화, 패킷 투명성 스트림, 헤더(체크섬)

    - IP: 네트워크 계층, 비연결형 // 주소 지정, 경로 선택, 패킷 분해/조립, 헤더(20~60~100바이트), BestEffort

    + UDP: 전송 계층, 비연결형 // 제어 없음 = 빠름 = 실시간 전송에 유리

    + RTCP: 전송 계층, 연결형? // RealTime으로 제어 정보 전송, 품질, 패킷 다중화, 32비트 경계

     

     

    TCP/IP 4계층

    응용: 응용 + 표현 + 세션

    전송: 전송

    인터넷: 네트워크

    네트워크 액세스: 물리 + 데이터링크

     

    응용 프로토콜

    - FTP : 파일

    - SMTP : 전자 메일

    - SNMP: 네트워크, 라우터, 허브

    - TELNET: 가상 터미널 원격 접속

    - DNS: 도메인 네임을 IP 주소로 맵핑

    - MQTT: 발행 구독 + IOT

     

    전송 프로토콜: TCP, UDP, RTCP

     

    인터넷 프로토콜

    - IP

    - ICMP: Control = 오류 제어

    - IGMP = Group = 멀티캐스트

    - ARP: 논리(IP) -> 물리(MAC)

    - RARP: 물리(MAC) -> 논리(IP)

     

    네트워크 액세스 프로토콜

    - Ethernet = IEEE 802.3 = CSMA/CD

    - IEEE 802= LAN

    - HDLC = 데이터링크, 비트

    - X25 = 패킷 교환망 + DTE DCE

    - RS-232C = 공중전화 교환망 + DTE DCE

     

     

     

     

    '자격증 > 정처기' 카테고리의 다른 글

    5-2 정보시스템 구축 관리  (0) 2023.05.21
    5-1 소프트웨어 개발 방법론  (0) 2023.05.21
    4-1 프로그래밍 언어 활용  (0) 2023.05.20
    3-3 SQL  (0) 2023.05.19
    3-2 물리 데이터베이스 설계  (0) 2023.05.19
Designed by Tistory.