11. 응용 SW 기초 기술 활용

운영체제

운영체제의 목적

  • 처리능력 (Throughput)
  • 반환 시간 (Turn Around Time)
  • 사용 가능도 (Availability)
  • 신뢰도 (Reliability)

운영체제의 기능

  • 프로세서(Processor, 처리기), 기억장치, 입출력 장치, 파일 및 정보 등의 자원 관리
  • 자원을 효율적으로 관리하기 위해 자원의 스케쥴링 기능 제공
  • 사용자와 시스템 간의 인터페이스 제공

운영체제의 종류

  • Windows
    • Microsoft 사가 개발한 운영체제
    • 그래픽 사용자 인터페이스 (GUI, Graphic User Interface)
    • 선점형 멀티태스킹 (Preemptive Multi-Tasking)
    • PnP (Plug and Play, 자동 감지 기능)
    • OLE (Object Linking and Embedding)
    • 255자의 긴 파일명
    • Single-User 시스템
  • UNIX
    • AT&T 벨(Bell) 연구소, MIT, General Electornic 이 공동 개발한 운영체제
    • 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제
    • 소스가 공개된 개방형 시스템(Open System)
    • 대부분 C언어로 작성되어 있어 이식성이 높으며 장치, 프로세스 간의 호환성이 높다.
    • 다중사용자(Multi-User), 다중작업(Multi-Tasking)을 지원
    • 트리(Tree) 구조의 파일 시스템
  • LINUX
    • 리누스 토발즈(Linus Torvalds)가 UNIX를 기반으로 개발한 운영체제
    • 다양한 플랫폼에 설치하여 사용이 가능하며, 재배포 가능
    • UNIX와 완벽하게 호환
  • MacOS
    • UNIX 기반의 운영체제
  • Android
    • Google 사에서 개발한 LINUX 커널 기반의 개방형 모바일 운영체제
    • 모든 코드가 공개된 개방형 소프트웨어
    • 자바코틀린으로 애플리케이션을 작성
  • IOS
    • Apple 사에서 개발한 UNIX 기반의 모바일 운영체제

기억장치 관리

기억장치 관리 전략

  • 반입(Fetch) 전략 – 언제 주기억장치로 적재할 것인지 결정하는 전략
  • 배치(Placement) 전략 – 주기억장치의 어디에 위치시킬 것인지를 결정하는 전략
    • 최초 적합 (First Fit) – 프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중에서, 첫 번째 분할 영역에 배치
    • 최적 적합 (Best Fit) – 프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중에서, 단편화를 가장 작게 남기는 분할 영역에 배치
    • 최악 적합 (Worst Fit) – 프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중에서, 단편화를 가장 많이 남기는 분할 영역에 배치
  • 교체(Replacement) 전략 – 주기억장치의 모든 영역이 사용중인 상태에서 프로그램이나 데이터를 주기억장치에 배치하려고 할 때, 어느 영역을 교체하여 사용할 것인지를 결정하는 전략
    • FIFO, OPT, LRU, LFU, NUR, SCR ..

가상기억장치 (Virtual Memory)

  • 보조기억장치의 일부를 주기억장치처럼 사용하는 것 

가상기억장치 구현 기법

  • 페이징(Paging) 기법 – 동일한 크기로 나눔
  • 세그먼테이션(Segmentation) 기법 – 다양한 크기의 논리적 단위로 나눔

페이지 교체 알고리즘

  • 페이지 부재(Page Fault)가 발생하면, 가상기억장치에서 필요한 페이지를 찾아 주기억장치에 적재해야하는데, 이때 주기억장치의 모든 페이지 프레임이 사용중이면 어떤 페이지 프레임을 선택하여 교체해야 할 것인지를 결정하는 기법
  • OPT (OPTimal replacement, 최적 교체)
    • 앞으로 가장 오랫동안 사용하지 않을 페이지를 교체 
  • FIFO
  • LRU
  • LFU
  • LUR

Locality

워킹 셋 (Working Set)

스래싱 (Thrashing)

OSI 7 참조 모델

OSI 7 참조 모델

  • 응용 계층 (Application Layer, 7계층) – 사용자가 어플리케이션에 입력한 정보를 특정 프로토콜(HTTP, SMTP, FTP 등)의 형식에 맞게 표현하는 계층
    • TCP (연결형) – HTTP(80), FTP(20, 21), SSH(22), TELNET(23), SMTP(25), HTTPS(443)
    • UDP (비연결형) – DNS(53), SNMP(161, 162), DHCP(67)
  • 표현 계층 (Presentation Layer, 6계층) – 수신자가 이해할 수 있는 형태로 데이터를 변환하고(인코딩), 데이터 전송의 효율성과 안정성을 보장하기 위해 데이터를 압축하고 암호화하는 계층
  • 세션 계층 (Session Layer, 5계층) – 통신하는 두 기기 사이의 연결 상태를 관장하는 계층
  • 전송 계층 (Transport Layer, 4계층) – 누가 누구에게 보냈는지에 대한 정보를 명시하는 계층이다. 최종 도착지에 위치한 어떤 프로세스에게 데이터를 전달할 것인가, 즉 포트 번호를 명시하는 계층이라고 할 수 있다.
    • TCP(신뢰성있는 정보전달), UDP
  • 네트워크 계층 (Network Layer, 3계층)
    • 전송 계층이 누구에게 보낼지를 명시한다면, 네트워크 계층은 수신자가 위치해 있는 최종 도착지를 명시한다. IP(Internet Protocol)가 바로 네트워크 계층에 해당하는 대표적인 프로토콜로, 이 경우 최종 도착지를 IP 주소로 명시하게 된다.
    • 비연결성, 비신뢰성 – 그냥 빠르게 전송
    • 라우터 (L3)
      • 정적
      • 동적
        • 내부 라우팅 프로토콜
          • 거리벡터 알고리즘 – RIP
          • 링크상태 알고리즘 – OSPF
        • 외부 라우팅 프로토콜 – EGP > BGP
    • IP, ICMP
      • IPSec – IP 계층에서 IP 패킷 단위의 데이터 변조 방지 및 암호화 기능을 제공하는 통신규약
        • AH(Authentication Header) – 인증, 무결성을 보장하기 위한 프로토콜
        • ESP(Encapsulation Security Payload) – 인증, 무결성, 기밀성
    •  ARP ( IP > MAC ), RARP ( MAC > IP )
  • 데이터 링크 계층 (Data Link Layer, 2계층)
    • 직접 연결된 두 개의 노드 사이에서 안전하게 데이터가 전송되도록 하고, 물리 계층에서 담당하지 않는 흐름 제어 및 오류 수정의 기능을 담당하는 계층
    • 스위치(L2 – 집선장치), 브리지
  • 물리 계층 (Physical Layer, 1계층)
    • 발신할 데이터를 디지털 신호에서 전기 신호로 바꾸고, 수신한 데이터를 전기 신호에서 디지털 신호로 바꾸는 계층
    • NIC, 허브, 리피터(증폭기)

TCP/IP 4계층

  • 응용 계층
    • 용 계층, 현 계층, 션 계층
    • TCP (연결형) – HTTP(80), FTP(20, 21), SSH(22), TELNET(23), SMTP(25), HTTPS(443)
    • UDP (비연결형) – DNS(53), SNMP(161, 162), DHCP(67)
  • 전송 계층
    • 송 계층
    • TCP, UDP
  • 인터넷 계층
    • 트워크 계층
    • IP, ICMP, IGMP, ARP, RARP
  • 네트워크 엑세스 계층
    • 이터 링크 계층
    • 리 계층

네트워크 관련 신기술

Iot (Internet of Things, 사물 인터넷)

M2M (Machine to Machine, 사물 통신)

모바일 컴퓨팅 (Mobile Computing)

클라우드 컴퓨팅 (Cloud Computing)

그리드 컴퓨팅 (Grid Computing)

모바일 클라우드 컴퓨팅 (MCC; Mobile Cloud Computing)

메시 네트워크 (Mesh Network)

와이선 (Wi-SUN)

NDN (Named Data Networking)

NGN (Next Generation Network, 차세대 통신망)

Loading

Leave a Reply

Your email address will not be published. Required fields are marked *