본문 바로가기

CS

(32)
[ Broadcast ] [ Broadband ], OSI 7계층 장비 1. Broadcast자신의 호스트가 속해 있는 네트워크 전체를 대상으로 패킷을 전송하는 일대다 통신 방식로컬 랜 상에 붙어있는 모든 네트워크 장비들에게 보내는 통신이다. 여기서 로컬이란 라우터에 의해서구분되어진 공간, 즉 브로드캐스트 도메인이라고 하는 공간을 뜻한다. 아래의 그림과 같이 패킷을 송신한다. 단점은 데이터를 수신할 필요가 없는 호스트들에게도 데이터가 전송되기 때문에 불필요한 인터럽트가 발생되며브로드 캐스트는 자신이 속한 네트워크에만 한정되고 라우터를 공유하지 못하는 단점이 있다. 2. Broadband(광대역)- 더 넓은 범위의 주파수 정보를 사용하여 데이터를 양방향으로 전송할 수 있다.- Broadband의 신호는 아날로그 또는 디지털일 수 있으며, 광범위한 주파수를 전달할 수 있다.- ..
HTTP 구조 - [ Header ] [ Body ] 개발을 하면서 response, request 등등 HTTP통신을 하는데 HTTP의 값을 통해 많은 것을 얻을 수 있다. 정의 : 하이퍼 텍스트 전송 프로토콜(HTTP, Hyper Text Transport Protocol) 통신을 사용하면 클라이언트와          서버 간에 두 가자이 유형의 메시지(HTTP 요청 및 HTTP 응답)을 전송할 수 있다.          클라이언트가 요청을 서버로 보내고 서버가 브라우저로 응답을 보낸다. 두 메시지는 공통 포맷을 가지고 있고          HTTP 헤더와 HTTP 본문을 포함한다. 1) Header(Request) 클라이언트가 서버에 보낼 때의 헤더이다.  1) Content-Type : application/json; charset=UTF-8요청 본..
BASE64, BASE32, BASE16, BASE62, Base58Check 패스워드 암호화하면서 BASE64 Encoding하면서 정리한다. 문자 인코딩(character encoding)우선 인코딩(encoding)이란건 사람이 쓰눈 문자, 그림 등의 데이터를 컴퓨터가 이용할 수 있는 신호(0, 1)로바꾸는 것이다. 대표적인 것이 아스키코드(ASCII)이다.● 초기 컴퓨터의 텍스트 표현 표준이다.● 알파벳과 몇몇 특수문자들만 표현할 수 있다. Base6464진법이라는 뜻이다. 8bit binary 데이터를 문자 코드에 영향을 받지 않는 공통 ASCII영역의 문자들로만 이루어진문자열로 바꾸는 인코딩 방식이다. ● 세계 곳곳의 문자들을 담아내야하는 필요성이 생기면서 ISO-8859, 유니코드 등 다양한 문자 인코딩 방식들이   생겼지만 각각 커버할 수 있는 문자들이 다르고, 결국..
CPU 스케쥴링 알고리즘 Re 비선점형 방식비선점형 방식(non-preemptive)은 프로세스가 스스로 CPU 소유권을 포기하는 방식이며,강제로 프로세스를 중지하지 않는다. 따라서 컨텍스트 스위칭으로 인한 부하가 적다. FCFS(First Come, First Saved)가장 먼저 온 것을 가장 먼저 처리하는 알고리즘이다. 길게 수행되는 프로세스 때문에 '준비 큐에서오래 기다리는 현상(convoy effect)가 발생하는 단점이 있다. SJF(Shortest Job First) 실행 시간이 가장 짧은 프로세스를 가장 먼저 실행하는 알고리즘이다.긴 시간을 가진 프로세스가 실행되지 않는 형상이 일어나며 평균 대기 시간이 가장 짧다.실제로는 실행 시간을 알 수 없기 때문에 과거의 실행했던 시간을 토대로 추측해서 사용한다. 우선순위기존 S..
교착상태(deadlock) Re 운영체제를 배우면서 교착상태를 알게 됐다. 그런데 DB도 데드락 생각났다. DB데드락 관련도 알아보자. 정의 : 교착 상태는 두 개 이상의 프로세스들이 서로가 가진 자원을 기다리며 중단된 상태를 말한다.  이미지를 보면 예시를 알 수 있다.게임이 서로의 자원을 요청할 때 서로의 자원을 공유함으로써 서로 대기하는 상태인 것이다.그렇다면 원인은 무엇일까 원인● 상호 배제 : 한 프로세스가 자원을 독점하고 있으며 다른 프로세들은 접근이 불가능하다.● 점유 대기 : 특정 프로세스가 점유한 자원을 다른 프로세스가 요청하는 상태● 비선점 : 다른 프로세스의 자원을 강제적으로 가져올 수 없다.● 환형 대기 : 이게 앞서 말한 서로의 자원을 요구하는 상황이다. 해결 방법1) 자원을 할당할 때 애초에 조건이 성립되지 않..
메모리 관리(Memory management) Re 가상 메모리가상 메모리(virtual memory)는 메모리 관리 기법의 하나로 컴퓨터가 실제로 이용 가능한 메모리 자원을 추상화하여이를 사용하는 사용자들에게 매우 큰 메모리로 보이게 만드는 것을 말한다. 가상 주소는 메모리관리장치(MMU)에 의해 실제 주소로 변환된다. 가상 메모리는 가상 주소와 실제 주소가 매핑되어 있고 프로세스의 주소 정보가 들어있는 '페이지 테이블'로 관리된다. 이 때 속도 향상을 위해 TLB를 쓴다. ※ TLB (translation look a side Buffer) : 메모리와 CPU 사이에 있는 주소 변환을 위한 캐시이다. 페이지테이블에 있는 리스트를 보관하며 CPU가 페이지 테이블까지 가지 않도록 해 속도를 향상시킬 수 있는캐시 계층이다. ● 스와핑(swapping)가상 ..
메모리(Memory) Re 메모리에 관한 설명은 우선 그림을 보겠다. ● 레지스터 : CPU안에 있는 작은 메모리, 휘발성, 속도 가장 빠름, 기억 용량이 가장 적다.● 캐시 : L1, L2, L3 캐시를 지칭합니다. 휘발성, 속도 빠름, 기억 용량이 적다.● 주기억장치 : RAM을 가리킨다. 휘발성, 속도 보통, 기억 용량이 보통이다.● 보조기억장치 : HDD, SSD를 일컬으며 비휘발성, 속도 낮음, 기억 용량이 많다.  - 램(주기억장치)은 하드디스크(보조기억장치)로부터 일정량의 데이터를 복사한 후 임시 저장해서 이를필요 시마다 빠르게 전달하는 역할을 한다. 알아두어야 할 것이 메모리의 계층을 나타내기 때문인거 것이지 캐시와 레지스터는 메모리 사이 사이에존재할 수도 있다.  - 캐시는 데이터를 미리 복사해 놓는 임시 저장소이..
CPU(Central Processing Unit) Re 정의 : 산술논리연산장치, 제어장치, 레지스터로 구성되어 있는 컴퓨터 장치를 말한다. 메모리에 존재하는          명령어를 해석해서 실제로 실행하는 역할을 한다. ● 제어장치(CU, Control Unit)제어장치는 프로세스 조작을 시도하는 CPU의 부품이다. 입출력장치 간 통신을 제어하고 명령어들을 읽고해석하며 데이터 처리를 위한 순서를 결정한다. ● 레지스터(Register)레지스터는 CPU안에 있는 매우 빠른 임시기억장치이다. CPU와 직접 연결되어 있으므로 연산 속도가메모리보다 수십 배에서 수백배까지 빠르다. CPU는 자체적으로 데이터를 저장할 수 없기 때문에 레지스터를거쳐 데이터를 전달한다.→ CPU는 단순히 메모리에 있는 것을 실행하는 역할만 한다 ● 산술논리연산장치(ALU, Arithm..