TIL/CS (8) 썸네일형 리스트형 TCP / UDP 특징과 차이 TCP란? Transmission Control Protocol의 약자로 전송을 제어하는 규약이라는 뜻 Internet 상에서 데이터를 메세지 형태로 보내기 위해 IP와 함께 사용하는 규약 TCP는 패킷(Packet)을 추적 및 관리하고 IP 는 데이터의 배달을 처리한다. 패킷(Packet) 인터넷 내에서 데이터 전송을 위한 라우팅을 효율적으로 하기 위해 나누어진 조각들을 뜻한다. TCP의 동작 과정 TCP는 3단계의 과정을 거쳐 연결을 설정하고, 데이터를 전송한 후 연결을 종료합니다. 연결 설정 (3-way handshake) SYN: 초기 연결 요청 SYN + ACK: 연결 요청 수락 및 응답 ACK: 최종적으로 연결 완료 데이터 전송 데이터 패킷 전송 및 수신 확인 (ACK) 연결 종료 (4-way.. 프로세스와 프로세서의 차이 프로세서란? 프로세서는 중앙 처리 장치를 의미하며, 보통 프로세서라고 하면 CPU를 의미한다. 하드웨어적 측면 - 컴퓨터 내에서 프로그램을 수행하는 하드웨어 유닛 - 중앙 처리 장치를 뜻하며, 적아도 하나 이상의 ALU와 처리 레지스터를 내장한 것. 소프트웨어적 측면 - 데이터 포맷을 변환하는 역할을 수행 데이터 프로세싱 시스템 프로세스란? 메모리에 적재되어 실행 중이거나 대기 중인 프로그램을 프로세스라 한다. 프로그램 컴퓨터에서 사용자가 원하는 목적을 달성하기 위해 목적에 맞게 특정 작업을 수행하는 일련의 명령어들의 집합이다. 즉, OS에서 얘기하는 프로그램은 컴퓨터에서 실행중인 모든 종류의 소프트웨어 프로그램들을 의미함 요약 프로세서와 프로세스를 정리하면 다음과 같다. 프로세서 : CPU나 Micro.. DBMS 발전 과정 1세대 : 계층형, 네트워크형 DBMS 계층형 DBMS 트리 형태의 계층적 구조를 가진 데이터베이스 최상위 계층의 데이터부터 검색하는 구조 특징 - 1960년대 후반에 최초의 계층 DBMS가 등장 - 트리 구조를 기반으로 하는 계층 데이터 모델을 사용한 DBMS - 계층 데이터 모델은 네트워크 데이터 모델의 특별한 사례 장점 - 어떤 유형의 응용에 대해서는 빠른 속도와 높은 효율성을 제공 단점 - 어떻게 데이터를 접근하는가를 미리 응용프로그램에 정의해야 함 - 데이터베이스가 생성될 때 각각의 관계를 명시적으로 정의해야 함 - 레코드들이 링크로 연결되어 있으므로 레코드 구조를 변경하기 어려움 네트워크형 DBMS 하위 데이터끼리의 관계까지 정의할 수 있는 구조를 가진 데이터베이스 설계/구현이 복잡하고 어려움.. 데이터베이스 시스템(DBMS) 개요 DBMS란? DB를 '데이터의 집합'이라고 정의한다면, 이런 DB를 관리하고 운영하는 소프트웨어를 DBMS(Database Management System)라고 한다. 다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야 한다. DBMS 사용자가 새로운 데이터베이스를 생성하고, 데이터베이스 구조를 명시할 수 있게 하고, 사용자가 데이터를 효율적으로 질의하고 수정할 수 있도록 하며, 시스템의 고장이나 권한이 없는 사용자로부터 데이터를 안전하게 보호하며, 동시에 여러 사용자가 데이터베이스를 접근하는 것을 제어하는 소프트웨어 패키지를 말한다. * SQL은 여러 DBMS에서 제공되는 사실상의 표준 데이터베이스 언어이다. DBMS의 기능 데이터 추출(Re.. 데이터베이스(DB) 개요 데이터베이스란? 데이터베이스는 데이터들을 저장하고 조회하는 프로그램이다. 데이터베이스는 파일을 조직적으로 통합하여 자료 항목의 중복을 최대한 없애고 자료를 구조화하여 기억시켜놓은 자료의 집합체라고 할 수 있다. 데이터베이스의 필요성 데이터베이스는 단순한 데이터 저장소 개념을 넘어선 상위 호환 격이다. 데이터베이스는 프로그래밍과 같은 컴퓨터 언어(SQL)로 세밀히 제어가 가능하고, 어떻게 제어하느냐에 따라 성능이 천차 만별이다. 또한 데이터들끼리 중복된 정보가 있을 경우 이를 통합하여 구조적이며 효율적으로 데이터를 저장한다. 거기다 데이터베이스는 컴퓨터 언어로 제어가 가능하고 앱이나 웹을 통해 전세계로 공유가 가능하다. 파일 시스템 VS 데이터베이스 파일 시스템 - 컴퓨터에서 파일이나 자료를 쉽게 발견 및.. Process Management 프로세스 생명주기 프로세스 생명주기(process lifecycle)는 컴퓨터 시스템에서 프로세스가 생성되고 실행되며 종료되는 과정을 말한다. 프로세스 생명주기에는 일반적으로 다음과 같은 단계가 포함된다. 생성(New) 프로세스가 생성되는 단계. 이 단계에서 운영 체제는 필요한 자원을 할당하고, 프로세스의 상태를 설정하며, 해당 프로세스를 관리하기 위한 다양한 데이터 구조를 초기화한다. 준비(Ready) 프로세스가 CPU를 사용하여 실행될 준비가 된 상태. 이 상태의 프로세스들은 준비 큐에 있으며, 스케줄러에 의해 선택되어 실행 상태로 전환될 수 있다. 실행(Running) 현재 CPU에서 명령어들이 실행되고 있는 프로세스의 상태. 대기(Waiting) 입출력 같은 특정 이벤트의 완료를 기다리는 중인 프.. 프로세스(Process), 스레드(Thread), 스케줄링(Scheduling) 프로세스(Process), 스레드(Thread) Process CPU가 처리하는 작업(Task)라고도 불리며, 실행중인 프로그램을 의미한다. 구체적으로는, 보조기억장치(디스크)에 저장되어 있던 실행 가능한 프로그램이 메모리에 적재되어 OS가 관리하는 상태를 의미한다. 컴퓨터에서 연속적으로 실행하고 있는 컴퓨터 프로그램 메모리에 올라와 실행되고 있는 프로그램의 인스턴스(독립적인 개체) 운영체제로부터 시스템 자원을 할당받는 자원의 단위 정리하면 프로그램의 실행된 부분을 의미합니다. 프로세스는 다음의 특징을 갖습니다. 각각 독립된 메모리 영역(Code, Data, Stack, Heap)을 할당받습니다. 코드 영역(code area): 프로그래머가 작성한 프로그램이 저장되는 영역 데이터 영역(data area).. CPU, Memory CPU(Central Processing Unit)의 구성 ALU( Arithmetic and Logical Unit, 산술논리 연산 장치) - 비교, 판단, 연산을 담당 CU(Control Unit, 제어부), 내부 버스 - 명령어의 해석과 올바른 실행을 위해서 CPU를 내부적으로 제어합니다. Memory Unit - Registers : 연산에 필요한 데이터를 저장하고 빠른속도로 접근할 수 있는 저장공간 - CACHE Memory : 처리속도를 높여주는 역할 Register는 여러가지 목적에 따라 다양한 레지스터가 존재한다. 특수목적 레지스터 MAR(메모리 주소 레지스터) : 읽고 쓰기 위한 주지억장치의 주소를 저장 PC(프로그램 카운터) : 다음에 수행할 명령어의 주소를 저장 IR(명령어 레지스터).. 이전 1 다음