11단원. 응용 sw 기초 기술 활용

2022. 10. 5. 01:19정보처리기사 실기 개념 외울것만

반응형

응용 sw 기초 기술 활용


chap1. 운영체제의 특징


운영체제의 개념

- 사용자가 컴퓨터의 하드웨어를 쉽게 사용할 수 있더록 인터페이스를 제공해 주는 소프트웨어
- 한정된 시스템 자원 효과적으로 사용 가능하도록 관리 및 운영.
- 컴퓨터 시스템과 사용자 간의 인터페이스 담당

운영체제 특징

사인스자제

  • 사용자 편리성 제공

  • 인터페이스 기능 담당

  • 스케줄링 담당

  • 자원 관리

  • 제어 기능

    커널 - 운영체제의 핵심적인 기능들이 커널에 모여있고, 인터페이스(GUI) 는 이런 커널을 사용자가 이용하기 편하게 해줌.

    • 프로세스 관리
    • 기억장치 관리
    • 주변장치 관리
    • 파일 관리

운영체제 종류

윈도우즈, 유닉스로 크게 나눔
유닉스는 또 리눅스, 맥, 안드로이드로 나눔

  • 윈도즈 지선자오

    • 그래픽 사용자 인터페이스 제공
    • 선점형 멀티태스킹 방식 제공
    • 자동감지 기능 제공
    • OLE(Object Linking and Embedding) 사용
  • 유닉스 대다 사이계

    • 대화식 운영체제 기능
    • 다중 작업 기능
    • 다중 사용자 기능 제공
    • 이식성 제공
    • 계층적 트리 구조 파일 시스템
    • 리눅스
      • 유닉스 기반, 소스코드 공개 오픈 소스 기반 운체
      • 데비안, 레드헷, ubuntu, Centos
      • 애플이 유닉스 기반 개발
    • 안드로이드
      • 휴대전화, 휴대용 장치 운영체제
      • 리눅스 기반
      • 자바와 코틀린 언어
      • 런타임 라이브러리
      • 안드로이드 소프트웨어 개발키트

운영체제 기본 명령어 활용

  • 운영체제 제어 방법

    • CLI command line interface, 사용자가 직접 명령어 입력
    • GUI graphic user interface, 마우스로 화면을 클릭
  • 윈도우 운영체제 기본 명령어

    • ATTRIB          파일속성 표시, 변경
    • CALL           한 일괄 프로그램에서 다른 일괄 프로그램을 호출
    • CD            현재 디렉터리 이름을 보여주거나 바꿈.
    • CHKDSK         디스크를 검사하고 상태보고서 표시
    • CLS           화면을 지움
    • CMD           윈도우 명령 프롬프트 창을 열어줌
    • COMP           두 개 이상 파일 비교
    • DISKPART        디스크 파티션 속성을 표시하거나 구성
    • ECHO           메시지를 표시하거나 echo를 사용 또는 사용하지 않음
    • ERASE          하나 이상의 파일을 지움
    • EXIT           cmd,exe 프로그램을 마침.
  • 리눅스/유닉스 계열의 기본 명령어

    • 시스템 관련
      • uname -a
      • uname -r
      • cat
      • uptime
    • 사용자
      • id
      • last
      • who
    • 파일 처리
      • ls
      • pwd
      • rm
      • cp
      • mv
    • 프로세스
      • ps
      • pmap
      • kill
    • 파일 권한
      • chmod
      • chown
    • 네트워크
      • ifconfig
      • host
    • 압축
      • tar
      • gzip
    • 검색
      • grep
      • find
    • 파일 이동
      • cp
      • rsync
    • 디스크 사용
      • df
      • du
    • 디렉터리 이동
      • cd
  • 리눅스/유닉스 운영체제 파일 접근 권한 관리

    • 리눅스/유닉스 시스템에서 사용자가 파일을 읽거나 실행하면 open, read, write 같은 시스템 호출이 수행됨. 각 파일의 정보가 저장된 i-node 값을 읽게 됨.
      • i-node : 유닉스 계통 파일 시스템에서 사용하는 자료구조이다. 각 파일의 물리적 위치, 생성,수정,사용 날짜, 접근 권한 등 정보 기록, DAC 기반 접근제어 수행.
    • 접근 권한 유형 : User ,Group, Other
    • 파일 접근 모드 : Read, Write, eXecute 로 3가지 모드로 구분.
  • 운영체제 핵심 기능 파약

    • 운영체제 핵심 기능
      • 메모리 관리
        • 메모리 관리 기법 (반배할교)
          • 반입 기법 > 주기억장치에 적재할 다음 프로세스의 반입 시기를 결정
          • 배치 기법 > 디스크에 있는 프로세스를 주기억장치의 어디에 저장할지 결정하는 기법
          • 할당 기법 > 실행해야 할 프로세스를 주기억장치에 어떤 방법으로 할당할 것인지 결정
          • 교체 기법 > 재배치 기법으로 주기억장치에 있는 프로세스 중 어떤 프로세스를 제거할 것인지 결정
        • 메모리 배치 기법 (초적악)
          • 최초 적합(first fit) > 프로세스가 적재될 수 있는 가용 공간 중 첫번째 분할에 할당함.
          • 최적 적합(best fit) > 가용 공간 중 가장 크기가 비슷한 공간에 할당.
          • 최악 적합(worst fit) > 가용 공간들 중 가장 큰 공간에 할당.
      • 프로세스 관리
        • 프로세스 상태 (생준실대완)
          • 생성
          • 준비
          • 실행
          • 대기
          • 완료
        • 프로세스 상태전이 (디타블웨)
          • 디스패치
          • 타이머 런 아웃
          • 블록
          • 웨이크 업
        • 프로세스 스케줄링 - cpu를 사용하려는 프로세스들 사이의 우선순위를 관리하는 작업.
          • 선점형 스케줄링 (SMMR)
            • 우선순위가 높은 프로세스가 현재 프로세스를 중단시키고 cpu를 점유하는 방식
            • 라운드 로빈
            • SRT
            • 다단계 큐
            • 다단계 피드백 큐
          • 비선점형 스케줄링 (우기 HFS)
            • 한 프로세스가 cpu를 할당받으면 반환 전까지 다른 프로세스는 cpu를 점유하지 못함.
            • 우선순위
            • 기한부
            • FCFS
            • HRN
            • SJF
  • 가상화, 클라우드

    • 물리적인 리소스들을 사용자에게 하나로 보이게 하거나, 하나의 물리적인 리소스를 여러 개로 보이게 하는 기술, 플랫폼 가상화, 리소스 가상화로 나눔.
    • 플랫폼 가상화 : 하드웨어 플랫폼 위에서 실행되는 호스트 프로그램이 게스트 프로그램을 만들어 마치 독립된 환경을 만들어 낸 것처럼 보여주는 기법
    • 리소스 가상화 : 게스트 소프트웨어 위에서 사용자는 독립된 하드웨어에서 소프트웨어가 실행되는 것처럼 활용하는 기법.
    • 가상화 기술요소
      • 컴퓨팅 가상화 -> 하이퍼바이저
      • 스토리지 가상화 -> 분산 파일 시스템
      • I/O 가상화 -> 가상 네트워크 인터페이스 카드
      • 컨테이너 -> 도커
      • 분산처리 기술
      • 네트워크 가상화 기술 -> SDN, NFV
    • 클라우드 컴퓨팅
      • 인터넷을 통해 가상화된 컴퓨터 시스템 리소스를 제공, 정보를 자신의 컴퓨터가 아닌 클라우드에 연결된 다른 컴퓨터로 처리하는 기술
      • 클라우드 컴퓨팅 분류 사공하
        • 사설 클라우드
        • 공용 클라우드
        • 하이브리드 클라우드
      • 클라우드 컴퓨팅 유형 인플소
        • 인프라형 서비스 (IaaS)
        • 플랫폼형 서비스 (PaaS)
        • 소프트웨어형 서비스 (SaaS)


chap2. 네트워크 기초 활용하기


네트워크 계층 구조 파악

  • 네트워크 개념
    • 거리에 따른 분류 (WAN, LAN)
  • OSI 7계층 물데네전세표응
    • 1계층 물리 -> 7계층 애플리케이션 계층
    • 응용계층 -> 사용자와 네트워크 간 응용서비스 연결, 데이터 생성 (HTTP, FTP)
    • 표현계층 -> 데이터 형식 설정, 부호교환, 암,복호화(JPEG, MPEG)
    • 세션계층 -> 송수신 간의 논리적 연결 , 연결 접속, 동기 제어 (RPC, NetBIOS)
    • 전송계층 -> 송수신 프로세스 간 연결, 신뢰성 있는 통신 보장 (TCP, UDP)
    • 네트워크 계층 -> 단말기 간 데이터 전송을 위한 최적화된 경로 제공 (IP, CMP)
    • 데이터링크 계층 -> 인접 시스템 간 데이터 전송, 전송 오류 제어. 동기화, 오류제어, 흐름제어 (HDLC, PPP)
    • 물리계층 -> 0,1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환
  • 네트워크 장비
    • 1계층 장비 : 호브, 리피터
    • 2계층 장비 : 브리지 , L2 스위치, NIC, 스위칭 허브
    • 3계층 장비 : 라우터, 게이트웨이, L3 스위치, 유무선 인터넷 공유기, 망 스위칭 허브
    • 4계층 장비 : L4 스위치

  • 허브 : 여러 대의 컴퓨터를 연결하여 네트워크로 보내거나 수신되는 정보를 여러 컴터로 송신함
  • 리피터 : 디지털 신호를 증폭시켜 주는 역할을 해 신호가 약해지지 않고 컴퓨터로 수신되도록 하는 장비
  • 브리지 : 두 개의 LAM을 서로 연결해주는 통신망 연결 장치
  • L2 스위치 : 느린 전송 속도의 브리지, 허브 단점 개선
  • NIC : network interface card. 외부 네트워크와 접속해 가장 빠르게 데이터를 주고받을 수 있는 장치
  • 스위칭허브 : 스위치 기능을 가진 허브
  • 라우터 : LAN 들을 연결하거나 WAN 을 연결하기 위한 인터넷 네트워킹 장비
  • 게이트웨이 : 프로토콜을 서로 다른 통신망에 접속할 수 있게 해주는 장치
  • L3 스위치 : 3계층에서 네트워크 단위들을 연결하는 통신 장비
  • 유무선 인터넷 공유기 : 외부로부터 들어오는 인터넷 라인을 연결하여 유선으로 여러 대의 기계를 연걸, 라인 공유할 수 있도록 하는 장비
  • 망 스위칭 허브 : 광역 네트워크를 커버하는 스위칭 허브
  • L4 스위치 : 4계층에서 네트워크 단위들을 연결하는 통신 장비

  • 프로토콜

    • 프로토콜은 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신 규약
    • 데이터 처리 기능, 제어기능, 관리적 기능이 있다.
    • 프로토콜의 기본 3요소 구의타
      • 구문 : 시스템 간의 정보 전송을 위한 데이터 형식, 코딩, 신호 레벨 규정
      • 의미 : 시스템 간의 정보 전송을 위한 제어 정보로 조정과 에러 처리를 위한 규정
      • 타이밍 : 시스템 간의 정보 전송ㅇ르 위한 속도 조절과 순서 관리 규정
  • 네트워크 프로토콜

    • 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고받는 양식과 규칙의 체계.
    • 단편화
    • 재조립
    • 캡슐화
    • 연결 제어
    • 오류 제어
    • 동기화
    • 다중화
    • 주소 지정
  • 데이터 링크 계층 (2계층)

    • 회선 제어, 흐름 제어, 오류 제어
    • 프로토콜 종류
      • HDLC > 점대점 방식, 다중 방식의 통신에 사용되는 동기식 비트 중심 데.링 프로토콜
      • PPP > Point to point, 두 통신 노드 간의 직접적인 연결
      • 프레임 릴레이 > 프로토콜 처리를 간략화, 단순 데이터 프레임의 중계기능만 수행. 고속의 전송 기술
      • ATM > 정보 전달의 기본단위를 53바이트 셀 단위로 전달하는 비동기식 시분할 다중화 방식의 패킷형 전송 기술
  • 네트워크 계층 (3계층)

    • 다양한 길이의 패킷을 네트워크들을 통해 전달, 서비스 품질을 위한 수단 제공. 라우팅, 패킷 포워딩, 인터 네트워킹 수행

    • 프로토콜 종류

      • IP > 송수신 간 패킷 단위로 데이터를 교환하는 네트워크에서 정보를 주고받는데 사용
      • ARP > ip 네트워크 상 ip주소를 mac 주소로 변환하는 프로토콜
      • RARP > ip호스트가 자신의 물리 네트워크 주소를 알지만 ip는 모를 때 서버에 요청하기 위해 사용
      • ICMP > ip패킷 처리 시 발생되는 문제를 메시지로 알려주는 프로토콜
      • IGMP > 인터넷 그룹 관리 프로토콜, 멀티캐스트 그룹 멤버십을 구성하는 데 사용
      • 라우팅 프로토콜 > 데이터 전송을 위해 가는 경로 중 최적 경로를 설정해주는 프로토콜
    • IPv4

      • 인터넷에서 사용되는 패킷 교환 네트워크 상에서 데이터를 교환하기 위한 32비트 주소체계를 갖는 네트워크 계층의 프로토콜
      • IPv4 헤더 - ip 패킷의 앞부분에 주소 등 각종 제어 정보를 담고 있는 부분.
      • 32비트 주소 체계
    • IPv6

      • ipv4의 주소 고갈, 보안성 등 문제 해결을 위한 128비트 주소체계의 인터넷 프로토콜
        • ip 주소의 확장
        • 이동성
        • 인증 및 보안
        • 개선된 QoS 지원
        • Plug & play
        • Ad-hoc 네트워크 지원
        • 단순 헤더 적용
        • 실시간 패킷 추적 가능
      • IPv6헤더 -> ipv4보다 단순해짐, 128비트 주소 공간.
    구분 IPv4 IPv6
    주소길이 32bit 128bit
    표시방법 8비트씩 4부분으로 나뉜 10진수 16비트씩 8부분으로 나뉜 16진수
    주소 개수 약 42억개 3.4x10^38
    주소할당 A,B,C,D 등 클래스 단위 할당(비효율) 네트워크 규모및 단말에 따란 할당(효율)
    품질제어 품질 보장 곤란 품질 보장 용이
    헤더크기 가변 고정
    전송방식 유니캐스트, 멀티캐스트, 브로드 캐스트 유니캐스트, 멀티캐스트, 애니캐스트
    • IPv4 -> IPv6 전환 방법
      • 듀얼스택, 터널링, 주소변환 의 3가지 방법으로 변환함.
      • 듀얼 스택 : 통신 상대방에 따라 해당 ip 스택을 선택하는 방식
      • 터널링 : ipv6 망에서 ipv4 망을 거쳐 다른 ipv6 망으로 통신할 때 ipv4망에 터널을 만들고 사용하는 프로토콜로 캡슐화하여 전송하는 방법
      • 주소변환 : 주소 변환기를 사용해 서로 다른 네트워크상의 패킷을 변환시키는 방법.
    • 멀티, 유니, 브로드, 애니 캐스트
      • 멀티캐스트 프로토콜 -> 같은 내용의 데이터를 여러 명의 그룹 수신자들에게 동시 전송하는 프로토콜
      • 유니캐스트 프로토콜 -> 고유 주소로 식별된 하나의 목적지에 1:1로 전송하는 프로토콜
      • 브로드캐스트 프로토콜 -> 하나의 송신자가 같은 서브 네트워크상 모든 수신자에게 데이터 전송
      • 애니캐스트 프로토콜 -> 단일 송신자로부터의 데이터를 잠재적 수신자 그룹안에서 가장 가까운 노드로 연결시키는 프로토콜
    • 라우팅 프로토콜
      • 목적지까지 갈 수 있는 경로 중 최적의 경로를 설정해주는 라우터 간의 상호 통신 규약
      • RIP
      • OSPF
      • BGP
      • 라우팅 알고리즘
  • 전송계층 (4계층)

    • 상위 계층들이 데이터 전달의 유효성, 효율성을 생각하지 않도록 해주며 종단 간의 사용자들에게 신뢰성 있는 데이터를 전달하는 계층
    • 두 종류 (TCP, UDP)
    • TCP
      • 전송 계층에 위치하면서 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 컴퓨터에서, 순서대로, 에러 없이 교환할 수 있도록 해줌.
      • TCP 특징 (신연흐혼)
        • 신뢰성 보장
        • 연결 지향적 특징
        • 흐름 제어
        • 혼잡 제어
      • TCP 헤더 구조
        • 소데씨엑 헤리플윈 체어옵패
    • UDP
      • 비연결성, 신뢰성 X, 순서화되지 않은 데이터그램 서비스를 제공하는 프로토콜
      • UDP 틀징 (비순실단)
        • 비신뢰성
        • 순서화되지 않은 데이터그램
        • 실시간 응용 및 멀티캐스팅
        • 단순 헤더
      • UDP 헤더 구조 (소데 랭체다)
        • source port number
        • destination port number
        • udp length
        • udp checksum
        • data
  • 세션 계층 (5계층)

    • 응용 프로그램 간의 대화를 유지하기 위한 구조 제공, 이를 처리하기 위해 프로세스들의 논리적인 연결 담당
    • 세션 계층 프로토콜
      • RPC > 원격 프로시저 호출, 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수 있는 프로세스 간 통신에 사용되는 프로토콜
      • NetBIOS > 응용계층(7) 의 app 프로그램에게 API를 제공하여 상호 통신할 수 있도록 해줌
  • 표현 계층 (6계층)

    • 애플리케이션이 다루는 정보를 통신에 알맞은 형태로 만들거나, 하위 계층에서 온 데이터를 사용자가 이해할 수 있는 형태로 만드는 역할 담당
    • 표현 계층 프로토콜
      • JPEG > 이미지를 위해 만들어진 표준 규격
      • MPEG > 멀티미디어를 위해 만들어진 표준규격
  • 응용 계층 (7계층)

    • 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 역할 담당
    • 응용 계층 프로토콜
      • HTTP > 인터넷에서 데이터 주고받는 프로토콜,
      • FTP > tcp/ip 로 서버와 클라이언트 사이 파일 전송
      • SMTP > tcp포트 25번을 사용해 이메일을 보내기 위한 프로토콜
      • POP3 > 원격 tcp/ip 연결 통해 이메일을 가져오는데 사용
      • IMAP > 원격 서버로부터 icp/ip 연결 통해 이메일 가져오는데 사용
      • Telnet > 인터넷 로컬 영역에서 네트워크 연결에 사용
  • 네트워크 전달 방식

    • 패킷 스위칭
      • 컴퓨터 네트워크와 통신의 방식, 작은 블록의 패킷으로 데이터를 전송하며 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 함.
      • X.25 -> 통신을 원하는 두 단말장치가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 프로토콜
      • 프레임 릴레이 -> ISDN을 사용하기 위한 프로토콜로 ITU-T에 의해 표준으로 작성되었다.
      • ATM(Asynchronous Transfer Mode) -> 비동기 전송모드라 부르는, 광대역 전송에 쓰이는 스위칭 기법이다.
    • 서킷스위칭
      • 네트워크 리소스를 특정 사용층이 독점하도록 하는 통신 방식
      • 전송 보장
      • 서킷 확보 작업


chap3. 기본 개발환경 구축하기


잘 안나온다고 한다...

운영체제 설치 및 운용

  • 운영체제 선택
    • 윈도우 계열 선택
    • 리눅스 계열 선택
      • 데비안
      • 레드햇
      • 기타
  • 운영체제 운용
    • 서버 운영체제 운용 기준
    • 개별 pc 용 운영 체제 운용 기준
  • 개발 도구 설치 및 운용
  • 개발 지원 도구
  • 응용 시스템 개발 인프라 구축
    • 개발하려는 전체 시스템에 필요로 하는 서비스를 효율적으로 선택해 개발환경을 구축해야함.
    • 개발환경 인프라 구성 방식
      • 온프레미스 방식 (On-Premise) > 외부 인터넷망이 차단된 상태에서 인트라넷망만을 활용해 개발환경을 구축하는 방식
      • 클라우드 방식 (Cloud) > 클라우드 공급 서비스를 하는 회사들의 서비스를 임대하여 개발환경을 구축하는 방식
      • 하이브리드 방식 (Hybrid) > 온프레미스와 클라우드 방식을 혼용하는 방식