기타/정처기

정보처리기사 실기 시나공 10장 응용 SW 기초 기술 활용

TheWing 2020. 12. 31. 18:21

운영체제의 개념

운영체제(OS; Operation System)의 정의

  • 운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임
    • 사용자
    • 응용 프로그램
    • 유틸리티
    • 운영체제
    • 하드웨어

운영체제의 목적

  • 운영체제의 목적에는 처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축 등이 있다
    • 처리 능력(Throughput)
      • 일정 시간 내에 시스템이 처리하는 일의 양
    • 반환 시간(Turn Around Time)
      • 시스템 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
    • 사용 가능도(Availability)
      • 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
    • 신뢰도 (Reliability)
      • 시스템이 주어진 문제를 정확하게 해결하는 정도

운영체제의 기능

  • 프로세서(처리기, Processor), 기억장치(주기억장치, 보조기억장치), 입출력장치, 파일 및 정보 등의 자원을 관리한다
  • 자원을 효율적으로 관리하기 위해 자원의 스케줄링 기능을 제공한다
  • 사용자와 시스템 간의 편리한 인터페이스를 제공한다
  • 시스템의 각종 하드웨어와 네트워크를 관리 제어한다
  • 자원 보호 기능을 제공한다
  • 시스템의 오류를 검사하고 복구한다

운영체제의 주요 자원관리

  • 프로세스 관리
    • 프로세스 스케줄링 및 동기화 관리 담당
    • 프로세스 생성과 제거, 시작과 정지, 메시지 전달 등의 기능 담당
  • 기억장치 관리
    • 프로세스에게 메모리 할당 및 회수 관리 담당
  • 주변장치 관리
    • 입출력장치 스케줄링 및 전반적인 관리 담당
  • 파일 관리
    • 파일의 생성과 삭제, 변경 , 유지 등의 관리담당

운영체제의 종류

  • Window, UNIX,LINUX, MacOS

운영체제의 종류

UNIX의 개요 및 특징 기출

  • UNIX는 1960년대 AT&T 벨(Bell) 연구소, MIT, General Electric이 공동 개발한 운영체제이다.
    • 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제로, 소스가 공개된 개방형 시스템(Open System)이다.
    • 대부분 C언어로 작성되어 있어 이식성이 높으며 장치, 프로세스 간의 호환성이 높다.
    • 크기가 작고 이해하기 쉽다.
    • 다중 사용자(Multi-User), 다중 작업(Multi-Tasking)을 지원한다
    • 트리(Tree) 구조의 파일 시스템을 갖는다
    • 전문적인 프로그램 개발에 용이하다
    • 다양한 유틸리티 프로그램이 존재한다.

UNIX 시스템의 구성

커널(Kerne)

  • UNIX의 가장 핵심적인 부분이다.
  • 컴퓨터가 부팅될 때 주기억장치에 적재된 후 상주하면서 실행된다
  • 하드웨어를 보호하고, 프로그램과 하드웨어 간의 인터페이스 역할을 담당한다.

쉘(Shell)

  • 사용자의 명령어를 인식하여 프로그램을 호출하고 명령을 수행하는 명령어 해석기이다.
  • 시스템과 사용자 간의 인터페이스를 담당한다
  • DOS의 COMMAND.COM과 같은 기능을 수행한다
  • 주기억장치에 상주하지 않고 명령어가 포함된 파일 형태로 존재하며 보조기억장치에서 교체 처리가 가능하다
  • 공용 Shell이나 자신이 만든 Shell을 사용할 수 있다

유틸리티 프로그램(Utility Program)

  • 일반 사용자가 작성한 응용 프로그램을 처리하는데 사용한다.
  • DOS에서 외부 명령어에 해당된다
  • 에디터, 인터프리터, 디버거 등이 있다.

LINUX의 개요 및 특징

  • LINUX는 1991년 리누스 토발즈가 UNIX기반으로 개발한 운영체제이다.
    • 프로그램 소스 코드가 무료로 공개 되어 있기 때문에 프로그래머가 원하는 기능을 추가할 수 있고, 다양한 플랫폼에 설치하여 사용이 가능하며, 재배포가 가능하다
    • UNIX와 완벽하게 호환이된다
    • 대부분의 특징이 UNIX와 동일하다

운영체제의 기본 명령어

운영체제의 기본 명령어의 개요

  • CLI(Command Line Interface)는 키보드로 명령어를 직접 입력하여 작업을 수행하는 사용자 인터페이스를 의미한다.
  • GUI(Graphic User Interface)는 키보드로 명령어를 직접 입력하지 않고 , 마우스로 아이콘이나 메뉴를 선택하여 작업을 수행하는 그래픽 사용자 인터페이스를 의미

Windows 기본 명령어

  • CLI 기본명령어

UNIX / LINUX 기본 명령어

 

프로세스 관리

프로세스(Process) 정의

  • 프로세스는 일반적으로 프로세서(처리기, CPU)에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미하며 , 작업(Job),테스트(Task)라고도 한다
    • 프로세스는 다음과 같이 여러 형태로 정의할 수 있다.
      • PCB를 가진 프로그램
      • 실기억장치에 저장된 프로그램
      • 프로시저가 활동중인 것
      • 비동기적 행위를 일으키는 주체

데이터베이스 개념

데이터베이스(Database)

  • 통합된 데이터(Integrated Data)
    • 검색의 효율성을 위해 중복이 최소화된 데이터의 모임
  • 저장된 데이터(Stored Data)
    • 컴퓨터가 접근할 수 있는 저장 매체에 저장된 데이터
  • 운영 데이터(Operational Data)
    • 조직의 고유한 업무를 수행하는데 존재가치가 확실하고 없어서는 안 될 반드시 필요한 데이터
  • 공용 데이터(Shared Data)
    • 여러 응용 시스템들이 공동으로 소유하고 유지하는 데이터

DBMS(DataBase Management System; 데이터베이스 관리 시스템)

  • DBMS란 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어이다

ER모델

  • 1 : 1 관계
    • 관계에 참여하고 있는 두 개체 타입이 모두 하나씩의 개체 어커런스를 갖는 관계
  • 1 : N 관계
    • 관계에 참여하고 있는 개체 타입 중 한 개체 타입은 여러 개의 개체 어커런스를 가질 수 있고, 다른 한 개체 타입은 하나의 개체 어커런스를 갖는 관계
  • N : M 관계
    • 관계에 참여하고 있는 두 개체 타입 모두 여러개의 개체 어커런스를 가질 수 있는 관계

키의 개념 및 종류

슈퍼키(Super Key)

  • 릴레이션을 구성하는 모든 튜플에 대해 유일성(Unique)은 만족하지만 희소성(Minimality)은 만족하지 못한다

후보키(Candidate Key)

  • 후보키는 유일성과 최소성을 모두 만족한다.

기본키(Primary Key)

  • 기본키는 후보키의 성질을 갖는다. 즉, 유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키이다.
  • 기본키는 NULL 값을 가질 수 없다. 즉 튜플에서 기본키로 설정된 속성에는 NULL 값이 있어서는 안된다.

대체키(Alternate Key)

  • 후보키 중 선정된 기본키를 제외한 나머지 후보키를 의미한다

외래키(Foreign Key)

  • 외래키는 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미한다

무결성

무결성(Integrity)의 개념 및 종류

  • 무결성이란 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 정확성을 의미한다

개체 무결성(Entity Integrity)

  • 개체 무결성은 기본 테이블의 기본키를 구성하는 어떤 속성도 Null값이나 중복 값을 가질 수 없다는 규정이다

참조 무결성(Referential Integrity)

  • 외래키 값은 Null 이거나 참조 릴레이션의 기본키 값과 동일해야 한다. 즉 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다는 규정이다

도메인 무결성(Domain Integrity)

  • 도메인 무결성은 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다는 규정

네트워크 / 인터넷

네트워크(Network)의 개념

  • 네트워크는 두 대 이상의 컴퓨터를 전화선이나 케이블 등으로 연결하여 자원을 공유하는 것을 말한다.
    • 네트워크는 다른 컴퓨터의 데이터, 프로그램, 주변장치 인터넷 등을 공유하기 위해 사용한다.
    • 근거리 통신망(LAN; Local Area Network)
      • 회사, 학교, 연구소 등에서 비교적 가까운 거리에 있는 컴퓨터, 프린터, 저장장치 등과 같은 자원을 연결하여 구성된다
      • 주로 자원 공유를 목적으로 사용한다
      • 사이트 간의 거리가 짧아 데이터의 전송 속도가 빠르고, 에러 발생율이 낮다
      • 근거리 통신망에서는 주로 버스형이나 링형 구조를 사용한다
    • 광대역 통신망(WAN; Wide Area Network)
      • 국가와 국가 혹은 대륙과 대륙 등과 같이 멀리 떨어진 사이트들을 연결하여 구성한다
      • 사이트 간의 거리가 멀기 때문에 통신 속도가 느리고, 에러 발생률이 높다.
      • 일정한 지역에 있는 사이트들을 근거리 통신망으로 연결한 후 각 근거리 통신망을 연결하는 방식이다.

인터넷(Internet)의 개요

  • 인터넷이란 TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된 광범위한 컴퓨터 통신망이다
    • 인터넷은 미 국방성의 ARPANET에서 시작되었다.
    • 인터넷은 유닉스를 기반으로 한다
    • 인터넷에 연결된 모든 컴퓨터는 고유한 IP주소를 갖는다

IP 주소(Internet Protocol Address)

  • IP 주소는 인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 고유한 주소이다.

    • 숫자로 8비트씩 4부분, 총 32비트로 구성되어있다.

    •  

IPv6(Internet Protocol version 6)

  • 현재 사용하고 있는 IP 주소 체계인 IPv4의 주소 부족 문제를 해결하기 위해 개발 되었다.
    • IPv4에 비해 자료 전송 속도가 빠르다
    • IPv4와 호환성이 뛰어나다
    • 인증성, 기밀성, 데이터 무결성의 지원으로 보안 문제를 해결할 수 있다.

IPv6의 구성

  • 16비트씩 8부분, 총 128비트로 구성되어 있다
  • 각 부분을 16진수로 표현하고, 콜론(:)으로 구분한다
  • IPv6는 세 가지 주소 체계로 나뉘어진다
    • 유니캐스트(Unicast)
      • 단일 송신자와 단일 수신자 간의 통신(일대일(1:1)통신에 사용)
    • 멀티캐스트(Multicast)
      • 단일 송신자와 다중 수신자 간의 통신(일대다(1:N)통신에 사용)
    • 애니캐스트(Anycast)
      • 단일 송신자와 가장 가까이 있는 단일 수신자 간의 통신(일대일(1:1) 통신에 사용)

OSI 참조 모델

OSI(Open System Interconnection) 참조 모델의 개요

  • OSI 참조 모델은 다른 시스템 간의 원활한 통신을 위해 ISO(국제표준화 기구)에서 제안한 통신 규약(Protocol)이다.

    • OSI 7계층은 1~3계층을 하위 계층, 4~7계층을 상위 계층이라고 한다

      • 하위계층

        • 물리 계층→ 데이터 링크 계층→ 네트워크 계층
      • 상위계층

        • 전송 계층 → 세션 계층 → 표현 계층 → 응용 계층

OSI 참조 모델에서의 데이터 단위

  • 프로토콜 데이터 단위(PDU; Protocol Data Unit)
    • 물리 계층 : 비트 !기출
    • 데이터 링크 계층 : 프레임
    • 네트워크 계층 : 패킷
    • 전송 계층 : 세그먼트
    • 세션, 표현, 응용 계층 : 메시지

물리 계층 (Physical Layer)

  • 물리 계층은 전송에 필요한 두 장치 간의 실제 접속과 절단 등 기계적, 전기적, 기능적, 절차적 특성에 대한 규칙을 정의한다
    • 물리적 전송 매체와 전송 신호 방식을 정의하며, RS-232C, X.21등의 표준이 있다
    • 관련 장비 : 리피터, 허브

데이터 링크 계층(Data Link Layer)

  • 데이터 링크 계층은 두 개의 인접한 개방 시스템들 간에 신뢰성 있고 효율적인 정보 전송을 할 수 있도록한다
    • 송신 측과 수신측의 속도 차이를 해결하기 위한 흐름 제어 기능을 한다
    • 관련 장비 : 랜카드 , 브리지, 스위치

네트워크 계층(Network Layer, 망 계층)

  • 네트워크 계층은 개방 시스템들 간의 네트워크 연결을 관리하는 기능과 데이터의 교환 및 중계 기능을 한다
    • 네트어크 연결을 설정, 유지, 해제하는 기능을 한다
    • X.25, IP 등의 표준이 있다.
    • 관련 장비 : 라우터

전송 계층(Transport Layer)

  • 전송 계층은 논리적 안정과 균일한 데이터 전송 서비스를 제공함으로써 종단시스템(End-to-End) 간에 투명한 데이터 전송을 가능하게 한다.
    • OSI 7계층 중 하위 3계층과 상위 3계층의 인터페이스(Interface)를 담당한다.
    • 종단 시스템(End-to-End) 간의 전송 연결 설정, 데이터 전송, 연결 해제 기능을 한다.
    • 주소 설정, 다중화(분할 및 재조립), 오류 제어 , 흐름 제어를 수행한다
    • TCP, UDP 등의 표준이 있다.
    • 관련 장비 : 게이트웨이

세션 계층(Session Layer)

  • 세션 계층은 송수신 측 간의 관련성을 유지하고 대화 제어를 담당한다
    • 대화(회화) 구성 및 동기 제어, 데이터 교환 관리 기능을 한다.
    • 송수신 측 간의 대화 동기를 위해 전송하는 정보의 일정한 부분에 체크점을 두어 정보의 수신 상태를 체크하며, 이때의 체크점을 동기점이라고 한다

표현 계층(Presesntation Layer)

  • 표현 계층은 응용 계층으로부터 받은 데이터를 세션 계층에 보내기 전에 통신에 적당한 현태로 변환하고, 세션 계층에서 받은 데이터는 응용 계층에 맞게 변환하는 기능을 한다.
    • 서로 다른 데이터 표현 형태를 갖는 시스템 간의 상호 접속을 위해 필요한 계층이다.
    • 코드 변환, 데이터 암호화, 데이터 압축, 구문 검색, 정보 형식(포맷) 변환 , 문맥 관리 기능을 한다.

응용 계층(Application Layer)

  • 응용 계층은 사용자(응용 프로그램)가 OSI 환경에 접근할 수 있도록 서비스를 제공한다
    • 응용 프로세스 간의 정보 교환, 전자 사서함, 파일전송, 가상 터미널 등의 서비스를 제공한다.

네트워크 관련 장비

허브(Hub)

  • 허브는 한 사무실이나 가까운 거리의 컴퓨터들을 연결하는 장치로, 각 회선을 통합적으로 관리하며, 신호 증폭기능을 하는 리피터의 역할도 포함된다

리피터(Repeater)

  • 리피터는 전송되는 신호가 전송 선로의 특성 및 외부 충격 등의 요인으로 인해 원래의 형태와 다르게 왜곡되거나 약해질 경우 원래의 신호 형태로 재생하여 다시 전송하는 역할을 수행한다
    • 물리 계층에서 동작하는 장비이다

브리지(Bridge)

  • 브리지는 LAN과 LAN을 연결하거나 LAN 안에서의 컴퓨터 그룹(세그먼트)을 연결하는 기능을 수행한다
    • 회선 수는 브리지가n개일때 , n(n-1)/2개이다.

스위치(Switch)

  • 스위치는 브리지와 같이 LAN과 LAN을 연결하여 훨씬 더 큰 LAN을 만드는 장치이다
    • 데이터 링크 계층에서 사용된다

라우터(Router)

  • 라우터는 브리지와 같이 LAN과 LAN의 연결 기능에 데이터 전송의 최적 경로를 선택할 수 있는 기능이 추가된 것으로, 서로 다른 LAN이나 LAN과WAS의 연결도 수행한다

게이트웨이(Gateway)

  • 게이트웨이는 전 계층(1~7계층)의 프로토콜 구조가 다른 네트워크의 연결을 수행한다

TCP

TCP/IP의 개요(Transmission Control Protocol/Internet Protocol)

  • TCP/IP는 인터넷에 연결된 서로 다른 기종의 컴퓨터들이 데이터를 주고받을 수 있도록 하는 표준 프로토콜이다
    • TCP/IP는 UNIX의 기본 프로토콜로 사용되었고, 현재 인터넷 범용 프로토콜로 사용된다
    • TCP/IP는 다음과 같은 기능을 수행하는 TCP프로토콜과 IP프로토콜이 결합된 것을 의미한다.
    • TCP(Transmission Control Protocol)
      • 신뢰성 있는 연결형 서비스를 제공한다
      • 패킷의 다중화, 순서제어, 오류제어, 흐름제어 기능을 제공한다
      • 스트림(Stream) 전송 기능을 제공한다
    • IP(Internet Protocol)
      • 데이터그램을 기반으로하는 비연결형 서비스를 제공한다
      • 패킷의 분해/조립, 주소지정, 경로선택 기능을 제공한다
      • 헤더의 길이는 최소 20Byte에서 최대 60Byte이다.

프로토콜(Protocol)

  • 프로토콜의 특징
    • 단편화, 재조립, 캡슐화, 연결제어, 오류 제어, 동기화, 다중화, 주소 지정 등이 있습니다.
  • 프로토콜의 기본 요소 !기출
    • 구문(Syntax)
      • 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정합니다.
    • 의미(Semantics)
      • 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정합니다.
    • 시간(Timing)
      • 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정합니다.

TCP/IP의 구조

응용계층의 주요 프로토콜

  • FTP(File Transfer Protocol)
    • 컴퓨터와 컴퓨터 또는 컴퓨터와 인터넷 사이에서 파일을 주고받을 수 있도록 하는 원격 파일 전송 프로토콜이다
  • SMTP(Simple Mail Transfer Protocol)
    • 전자 우편을 교환하는 서비스이다
  • TELNET
    • 멀리 떨어져 있는 컴퓨터에 접속하여 자신의 컴퓨터처럼 사용할 수 있도록 해주는 서비스이다
    • 프로그램을 실행하는 등 시스템 관리 작업을 할 수 있는 가상의 터미널(Virtual Terminal) 기능을 수행한다
  • SNMP(Simple Network Management Protocol)
    • TCP/IP의 네트워크 관리 프로토콜로, 라우터나 허브 등 네트워크 기기의 네트워크 정보를 네트워크 관리 시스템에 보내는 데 사용되는 표준 통신 규약이다.
  • DNS(Domain Network System)
    • 도메인 네임을 IP주소로 매핑해주는 시스템이다
  • HTTP(HyperText Tranfer Protocol)
    • 월드 와이드웹(WWW)에서 HTML 문서를 송수신하기 위한 표준 프로토콜이다

전송 계층의 주요 프로토콜

  • TCP(Transmission Control Protocol)
    • 양방향 연결(Full Duplex Connection)형 서비스를 제공한다.
    • 가상 회선 연결(Virtual Circuit Connection)형태의 서비스를 제공한다
    • 스트림 위주의 전달(패킷 단위)을 한다
    • 순서 제어, 오류 제어, 흐름 제어 기능을 한다
  • UDP(User Datagram Protocol)
    • 데이터 전송 전에 연결을 설정하지 않는 비연결형 서비스를 제공한다.
    • TCP에 비해 상대적으로 단순한 헤더 구조를 가지므로 오버헤드가 적다
    • 고속의 안정성 있는 전송 매체를 사용하여 빠른 속도를 필요로 하는 경우 동시에 여러 사용자에게 데이터를 전달할 경우, 정기적으로 반복해서 전송할 경우에 사용한다
    • 실시간 전송에 유리하며, 신뢰성보다는 속도가 중요시 되는 네트워크에서 사용된다.
  • RTCP(Real-Time-Control Protocol)
    • RTP(Real-time Transport Protocol) 패킷의 전송 품질을 제어하기 위한 제어 프로토콜이다.

TCP와 UDP 비교

 

인터넷 계층의 주요 프로토콜

  • IP(Internet Protocol)
    • 전송할 데이터에 주소를 지정하고, 경로를 설정하는 기능을 한다.
    • 비연결형인 데이터 그램 방식을 사용하는 것으로 신뢰성이 보장되지 않는다.
  • ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)
    • IP와 조합하여 통신중에 발생하는 오류의 처리와 전송 경로 변경등을 위한 제어메시지를 관리하는 역할을 하며, 헤더로는 8Byte로 구성된다.

네트워크 액세스 계층의 주요 프로토콜

  • Ethernet(IEEE 802.3)
    • CSMA/CD 방식의 LAN이다
  • IEEE 802
    • LAN을 위한 표준 프로토콜이다
  • HDLC
    • 비트위주의 데이터 링크 제어 프로토콜이다
  • X.25
    • 패킷 교환망을 통한 DTE와 DCE간의 인터페이스를 제공하는 프로토콜이다
  • RS-232C
    • 공중 전화 교환망(PSTN)을 통한 DTE와 DCE간의 인터페이스를 제공하는 프로토콜이다.