운영체제의 개념
운영체제(OS; Operation System)의 정의
- 운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임
- 사용자
- 응용 프로그램
- 유틸리티
- 운영체제
- 하드웨어
운영체제의 목적
- 운영체제의 목적에는 처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축 등이 있다
- 처리 능력(Throughput)
- 일정 시간 내에 시스템이 처리하는 일의 양
- 반환 시간(Turn Around Time)
- 시스템 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
- 사용 가능도(Availability)
- 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
- 신뢰도 (Reliability)
- 시스템이 주어진 문제를 정확하게 해결하는 정도
- 처리 능력(Throughput)
운영체제의 기능
- 프로세서(처리기, 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) 통신에 사용)
- 유니캐스트(Unicast)
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)
- 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정합니다.
- 구문(Syntax)
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간의 인터페이스를 제공하는 프로토콜이다.
'기타 > 정처기' 카테고리의 다른 글
정보처리기사 실기 용어 정리 자료 (0) | 2020.12.31 |
---|---|
정보처리기사 실기 시나공 11장 제품 소프트웨어 패키징 (0) | 2020.12.31 |
정보처리기사 실기 시나공 9장 소프트웨어 개발 보안 구축 (0) | 2020.12.31 |
정보처리기사 실기 시나공 8장 SQL 응용 (0) | 2020.12.31 |
정보처리기사 실기 시나공 7장 애플리케이션 테스트관리 (0) | 2020.12.31 |