반응형

운영체제

- 사용자가 컴퓨터 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해주는 소프트웨어

  • 특징 : 편리성 제공, 인터페이스 기능 담당, 스케줄링 담당, 자원 관리, 제어 기능
  • 운영체제 = 인터페이스(쉘) + 커널
    • 쉘(Shell) : 명령어 해석기, 인터페이스 제공, 내장 명령어
    • 커널(Kernel) : 컴퓨터 프로그램, 프로그램과 하드웨어 간의 인터페이스 역할 담당
      • 커널의 기능 : 프로세스 관리, 기억장치 관리, 주변장치 관리, 파일 관리
  • 종류 : 윈도즈, 유닉스, 리눅스, 맥, 안드로이드
  • 윈도즈(Windows) 특징 (자선자 오)
    • 그래픽 사용자 인터페이스(GUI) 제공
    • 선점형 멀티태스킹 방식 제공
    • 자동감지 기능 제공
    • OLE(Object Linking and Embedding) 사용
  • 유닉스(Unix) 계열 특징 (대다 사이계)
    • 대화식 운영체제 기능 제공
    • 다중 작업 기능 제공
    • 다중 사용자 기능 제공
    • 이식성 제공 : 90% 이상 C언어로 구현, 시스템 프로그램이 모듈화
    • 계층적 트리 구조 파일 시스템 제공 : 통합적인 파일 관리가 용이
  • 안드로이드(Android) 운영체제 특징
    • 리눅스 기반 : 리눅스 커널 위에서 동작
    • 자바와 코틀린 언어
    • 런타임 라이브러리
    • 안드로이드 소프트웨어 개발 키트(SDK)

메모리 관리 기법 (반배할교)

  • 반입 기법 : 메모리로 적재 시기 결정 (When)
  • 배치 기법 : 메모리로 적재 위치 결정 (Where)
  • 할당 기법 : 메모리로 적재 방법 결정 (How)
  • 교체 기법 : 메모리 교체 대상 결정 (Who)
    • FIFO : 가장 먼저 들어와 가장 오래 있던 페이지를 교체하는 기법(선입선출)
    • LRU : 가장 오랫동안 사용되지 않은 페이지를 선택하여 교체하는 기법
    • LFU : 참조 횟수가 가장 적은 페이지를 선택하여 교체하는 기법

메모리 배치 기법

  • 최초 적합(First-fit) : 첫 번째 분할에 할당
  • 최적 적합(Best-fit) : 가장 크기가 비슷한 공간을 선택하여 프로세스를 적재
  • 최악 적합(Worst-fit) : 가장 큰 공간에 할당

메모리 단편화

- 분할된 주기억장치에 프로세스를 할당, 반납 과정에서 사용되지 못하고 낭비되는 기억장치가 발생하는 현상

  • 내부 단편화
    • 분할된 공간에 프로세스를 적재한 후 남은 공간
    • 고정분할 할당 방식 및 페이징 기법 사용 시 발생하는 메모리 단편화
    • 해결 방안 : Slab Allocator, 통합, 압축
  • 외부 단편화
    • 할당된 크기가 프로세스 크기보다 작아서 사용하지 못하는 공간
    • 가변 분할 할당 방식 또는 세그먼테이션 기법 사용 시 발생하는 메모리 단편화
    • 해결방안 : 버디 메모리 할당, 통합, 압축

프로세스 상태 전이 (생준실대완)

  • 생성(Create) 상태 : 사용자에 의해 프로세스가 생성된 상태
  • 준비(Ready) 상태 : CPU를 할당받을 수 있는 상태
  • 실행(Running) 상태 : 프로세스가 CPU를 할당받아 동작중인 상태
  • 대기(Waiting) 상태 : CPU를 양도하고 입출력 처리가 완료까지 대기 리스트에서 기다리는 상태
  • 완료(Complete) 상태 : 프로세스가 CPU를 할당받아 주어진 시간 내에 완전히 수행을 종료한 상태

 

프로세스 스케줄링

  • 선점형 : 하나의 프로세스가 CPU를 차지하고 있을 때, 우선순위가 높은 다른 프로세스가 현재 프로세스를 중단시키고 CPU를 점유하는 스케줄링 방식
    • 장점 : 비교적 빠른 응답, 대화식 시분할 시스템에 적합
    • 단점 : 높은 우선순위 프로세스들이 들어오는 경우 오버헤드 초래
    • 라운드 로빈(Round Robin) : 같은 크기의 CPU 시간을 할당 (균등한 CPU 점유시간, 시분할 시스템 사용)
    • SRT(Shortest Remaining Time First) : 가장 짧은 시간이 소요되는 프로세스를 먼저 수행, 남은 처리시간이 더 짧다고 판단되는 프로세스가 준비 큐에 생기면 언제라도 프로세스가 선점 (짧은 수행 시간 프로세스 우선 수행)
    • 다단계 큐(Multi Level Queue) : 여러 개의 큐를 이용하여 상위단계 작업에 의한 하위단계 작업이 선점(독립된 스케줄링 큐)
    • 다단계 피드백 큐(Multi Level Feedback Queue) : 큐마다 서로 다른 CPU시간 할당량, FIFO, 라운드 로빈 스케줄링 기법 혼합, 마지막 단계는 라운드 로빈 방식 처리
  • 비선점형 : 한 프로세스가 CPU를 할당 받으면, 작업 종료후 다시 반환되기까지 다른 프로세스가 점유 불가능한 방식
    • 장점 : 응답시간 예상 용이, 모든 프로세스에 대한 요구를 공정하게 처리
    • 단점 : 짧은 작업을 수행하는 프로세스가 긴 작업 종료 시까지 대기 
    • 우선순위(Priority) : 프로세스별 우선순위에 따라 CPU할당
    • 기한부(Deadline) : 작업들이 명시된 기한 내에 완료되도록 계획
    • FCFS(=FIFO) : 프로세스가 대기 큐에 도착한 순서에 따라 CPU 할당
    • SJF(Shortest Job First) : 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간을 갖는 프로세스가 종료 시까지 자원 점유, 기아 현상 발생 가능성
    • HRN(Highest Response Ratio Next) : 대기 중인 프로세스 중 현재 응답률이 가장 높은 것을 선택, 기아현상 최소화 기법
      • HRN의 우선순위 = (대기시간+ 서비스시간) / 서비스시간
  • 반환시간 = 종료시간 - 도착시간
  • 대기시간 = 반환시간 - 서비스 시간

교착상태(Deadlock)

- 다중 프로세싱 환경에서 두 개 이상의 프로세스가 특정 자원할당을 무한정 대기하는 상태

  • 발생 조건 (상점비환)
    • 상호 배제 : 프로세스가 자원을 배타적으로 점유하여 다른 프로세스가 그 자원을 사용할수 없는 상태
    • 점유와 대기 : 한 프로세스가 자원을 점유하고 있으면서 또 다른 자원을 요청하여 대기하고 있는 상태
    • 비선점 : 한 프로세스가 점유한 자원에 대해 다른 프로세스가 선점할 수 없고, 오직 점유한 프로세스만이 해제 가능한 상태
    • 환형 대기 : 두 개 이상의 프로세스 간 자원의 점유와 대기가 하나의 원형을 구성한 상태
  • 해결 방법 : 예방, 회피, 발견, 복구

 

가상화(Virtualization)

- 물리적인 리소스들을 사용자에게 하나로보이게 하거나, 하나의 물리적 리소스를 여러 개로 보이게 하는 기술

- 이를 통해 서버의 가동률을 60~70% 이상으로 올릴 수 있다.

 

클라우드 컴퓨팅

- 인터넷을 통해 가상화된 컴퓨터 시스템 리소스를 제공하고, 정보를 자신의 컴퓨터가 아닌 클라우드에 연결된 다른 컴퓨터로 처리하는 기술

  • 클라우드 컴퓨팅 유형
    • 인프라형 IaaS : 서버, 스토리지 같은 시스템 자원을 클라우드로 제공하는 서비스
    • 플랫폼형 PaaS : 애플리케이션을 개발, 실행, 관리할 수 있게 하는 플랫폼을 제공하는 서비스
    • 소프트웨어형 SaaS : 클라이언트를 통해 접속하여 소프트웨어를 서비스 형태로 이용하는 서비스

OSI 7계층 (아파서 티내다, 피나다)

  • 계층 7 - 응용 계층(Application Layer) : 사용자와 네트워크 간 응용 서비스 연결, 데이터 생성
    • 프로토콜
      • HTTP : 하이퍼텍스트 교환
      • FTP : 서버- 클라이언트 사이의 파일을 전송
      • SMTP : 이메일 보냄
      • POP3 : 원격 서버로부터 이메일 가져옴
      • IMAP :원격 서버로부터 이메일 가져옴
      • Telnet: 인터넷이나 로컬에서 네트워크 연결에 사용
    • 장비 : L7스위치
  • 계층 6 - 표현 계층(Presentation Layer) : 데이터 형식 설정, 부호교환, 암복호화, 압축
    • 프로토콜
      • JPEG : 이미지
      • MPEG : 멀티미디어
  • 계층 5 - 세션 계층(Session Layer) : 송수신 간의 논리적인 연결, 연결 접속, 동기제어
    • 프로세스들의 논리적인 연결, 응용 프로그램 간의 대화를 유지하기 위한 구조 제공, 연결이 끊어지지 않도록 유지 시켜주는 역할 수행
    • 프로토콜
      • RPC
      • NetBIOS
  • 계층 4 - 전송 계층(Transport layer) : 송수신 프로세스 간의 연결, 신뢰성, 데이터 분할, 재조립, 흐름 제어, 오류 제어, 혼잡 제어
    • 프로토콜
      • TCP (신연흐혼): 옥텟을 안정적이고, 순서대로 에러없이 교환할 수 있게 해줌
        • 신뢰성, 연결성, 흐름제어, 혼잡제어
      • UDP : 비연결성, 비신뢰성, 순서화되지 않은 데이터그램 서비스 제공
    • 전송 단위 : 세그먼트
    • 장비 : L4스위치
  • 계층 3 - 네트워크 계층(Network Layer) : 단말기 간의 데이터 전송을 위한 최적화된 경로 제공
    • 프로토콜
      • IP : 송수신 간의 패킷 단위, 정보를 주고받는 데 사용하는 통신 프로토콜
      • ARP : IP네트워크 상에서 MAC 주소를 알기 위해서 사용, IP 주소를 MAC 주소로 변환
      • RARP : MAC 주소는 알지만 IP주소를 모르는 경우 서버로부터 IP주소를 요청하기 위해 사용
      • ICMP: 수신지 도달 불가 메시지를 통지하는 데 사용
      • IGMP: 화상회의, IPTV에서 활용되는 프로토콜
      • 라우팅 프로토콜 : 데이터 전송을 위해 목적지까지 갓 수 있는 여러 경로 중 최적의 경로를 설정해주는 상호 통신 규약
        • RIP : AS(자율 시스템)내에서 사용하는 거리벡터 알고리즘에 기초하여 개발된 내부 라우팅 프로토콜, 최초 라우팅 프로토콜, 벨만-포드 알고리즘, 15홉 제한, IGRP
        • OSPF : RIP의 단점 개선, 최단 경로를 찾는 프로토콜, 다익스트라 알고리즘, 홉 제한 없음, ELGRP
        • BGF : 자치 시스템(AS)간 경로 정보를 교환, 링크 상태 알고리즘 사용
        • 라우팅 알고리즘
          • 거리 벡터 알고리즘: 인접 라우터와 정보를 공유하여 목적지까지의 거라와 방향을 결정하는 알고리즘, 벨만포드 사용
          • 링크 상태 알고리즘: 링크상태 정보를 모든 라우터에 전달하여 최단경로 트리를 구성하는 알고리즘, 다익스트라 알고리즘사용
    • 장비 : 라우터, L3스위치
  • 계층 2 - 데이터 링크 계층(Data Link Layer) : 인접 시스템 간 데이터 전송, 전송 오류 제어, 동기화, 오류 제어, 흐름 제어, 회선 제어
    • 프로토콜
      • HDLC : 점대점 방식이나 다중방식 통신에 사용
      • PPP : 두 통신 노드 간의 직접적인 연결
    • 전송 단위 : 프레임
    • 장비 : 스위치, 브리지
  • 계층 1 - 물리계층(Physical Layer) : 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환
    • 프로토콜
      • RS-232
    • 전송 단위 : 비트
    • 장비 : 허브, 리피터

프로토콜(Protocol)

- 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활히 하기 위한 표준화된 통신규약

  • 프로토콜의 기본 3요소
    • 구문(Syntax) : 시스템 간의 정보 전송을 위한 데이터 형식, 코딩, 신호 레벨 등의 규정
    • 의미(Semantic) :시스템 간의 정보 전송을 위한 제어 정보로 조정과 에러처리를 위한 규정
    • 타이밍(Timing) : 시스템 간의 정보 전송을 위한 속도 조절과 순서 관리 규정

네트워크 프로토콜(Network Protocol)

- 컴퓨터나 원거리 통신 장비 사이에서 메세지를 주고받는 양식과 규칙의 체계

 

IPv4

  • 32 비트
  • 8비트씩 4부분으로 나뉜 10진수
  • 유니캐스트, 멀티캐스트, 브로드캐스트

IPv6

  • 128 비트
  • 16비트씩 8부분으로 나뉜 16진수
  • 유니캐스트, 멀티캐스트, 애니캐스트

4 → 6 전환 방법

  • 듀얼 스택
  • 터널링
  • 주소변환

개발환경 인프라 구성 방식

  • 온프레미스(On-Pramise)방식 : 외부 인터넷망이 차단된 상태에서 인트라넷 망만을 활용하여 개발환경을 구축하는 방식
  • 클라우드(Cloud)방식 : 아마존, 구글, 마이크로소프트 등 클라우드 공급 서비스를 하는 회사들의 서비스를 임대하여 개발환경을 구축하는 방식
  • 하이브리드 방식 : 온프레미스 + 클라우드

서킷 스위칭(Circuit Swiching)

- 네트워크 리소스를 특정 사용 층이 독점하도록 하는 통신 방식

 

애드 혹 네트워크(Ad-hoc Network)

- 노드들에 의해 자율적으로 구성되는 기반 구조가 없는 네트워크

 

패킷 스위칭(Packet Switching)

- 작은 블록의 패킷으로 데이터를 전송하며, 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 하는 통신 방식

  • X.25 : 통신을 원하는 두 단말장치가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 프로토콜
  • 프레임 릴레이 : ISDN을 사용하기 위한 프로토콜, ITU-T에 의해 표준으로 작성됨
  • ATM(Asynchronous Transfer Mode) : 비동기 전송모드, 광대역 전송에 쓰이는 스위칭 기법

<2023 수제비 정보처리기사 실기 참고>

반응형

+ Recent posts