목록분류 전체보기 (56)
CS 공부

효율적인 매커니즘!!무조건 쓴다. 물리적 메모리보다 큰 프로그램일지라도, 전부가 로드되어 있지 않더라도 프로세스를 실행시킬 수 있다. 또한 논리적 주소와 물리적 주소를 완전히 분리시킨다. Demand paging = 필요할 때만 메모리에 올리는 방식 페이지는 메모리에 올라와있거나 하드디스크에 존재할것이다. 어디에 있는지 구분하기 위해 페이지 테이블의 valid/invalid 비트로 확인한다. 아직 하드디스크에서 swap in 되지 않은 페이지를 요청할 때, Page Fault가 일어남. 페이지 테이블의 valid-invalid bit로 메모리에 있는지 확인 없어서 page fault가 일어나면 page in free frame을 free frame list에서 찾음 메인메모리에 할당해주고, 페이지 테이블..

JOIN 알고리즘의 종류 - Nested-Loop JOIN (중첩 루프 조인) - Sort Merge JOIN (병합조인) - Hash JOIN (해시 조인) 로우가 많아 질수록 쿼리의 코스트(Cost)는 높아진다. 이렇게 모두 비례적으로 성능의 떨어지지만 떨어지는 정도에는 차이가 있다. Loop가 가장 기본적인 방법이며, 양이 적을 때에는 성능이 좋지만 데이터가 많아질 수록 비용도 급격히 증가한다. Merge 방식은 데이터가 적을 경우에는 Loop 보다는 못하지만, 양이 많아 질 수록 더 뛰어난 성능을 보인다. (여러 조건들이 있음) Hash 방식은 데이터가 얼마 없을 경우에는 그 오버헤드(Overhead)로 인하여 성능이 좋지 않지만, 데이터가 많을수록 Loop 보다는 낮고 Merge 보다는 못하게 ..
put patch delete 추가 GET GET 은 클라이언트에서 서버로 어떠한 리소스로 부터 정보를 요청하기 위해 사용되는 메서드이다. GET을 통한 요청은 URL 주소 끝에 파라미터로 포함되어 전송되며, 이 부분을 쿼리 스트링 (query string) 이라고 부른다. 방식은 URL 끝에 " ? " 를 붙이고 그다음 변수명1=값1&변수명2=값2... 형식으로 이어 붙이면 된다. ex. www.example.com/show?name1=value1&name2=value2 GET의 특징 1. GET 요청은 캐시가 가능하다. GET을 통해 서버에 리소스를 요청할 때 웹 캐시가 요청을 가로채 서버로부터 리소스를 다시 다운로드하는 대신 리소스의 복사본을 반환한다. HTTP 헤더에서 cache-control 헤..
HTTP 스트리밍에서 비디오는 HTTP 서버 내의 특정 URL를 갖는 일반적인 파일로 저장된다. 사용자가 비디오 시청을 원하면 클라이언트는 서버에게 TCP 연결을 설립하고 URL에 대한 HTTP get 요청을 발생시킨다. 그러면 서버가 프로토콜 및 트래픽 조건이 허용 되는대로 HTTP 응답 메시지 내에서 비디오 파일을 전송함 클라이언트 쪽에서는 애플리케이션 버퍼에 전송된 바이트가 저장되고 버퍼의 바이트 수가 정해진 임계값을 초과하면 재생을 시작한다. HTTP 스트리밍은 실제 적용 되고 있으나 모든 클라이언트들이 그들 사이의 가용 대역폭의 차이에도 불구하고 똑같이 인코딩된 비디오를 전송받는다는 문제점을 가진다. 이러한 문제점을 해결하기 위해서 HTTP 기반의 스트리밍 DASH(Dynamic Adaptive..

호스트에 대한 하나의 식별자는 호스트 네임이다. 호스트 네임은 인터넷에서의 그 호스트위치에 대한 정보를 거의 제공하지 않는다. 이러한 이유로 호스트는 흔히 말하는 IP주소로도 구별된다. DNS가 제공하는 서비스 라우터는 고정길이의 계층구조를 가진 IP주소를 좋아한다. 이러한 신호 차이를 절충하기 위해 호스트 네임을 IP주소로 변환해 주는 디렉터리 서비스가 필요하다 DNS 프로토콜은 UDP 상에서 수행되며 포트번호 53을 이용한다. DNS는 다른 애플리케이션 프로토콜들이 HTTP,SMTP,FTP등 사용자가 제공하는 호스트 네임을 IP주소로 변환하기 위해 주로 이용 DNS는 호스트 네임을 IP 주소를 변환하는 것 외에 다음과 같은 중요한 추가 서비스를 제공한다. 호스트 엘리어싱(Host aliasing): ..
Processor란? (Advanced RISC Machine 또는 Acorn RISC Machine) 일반적으로 프로세서(Processor, ARM 프로세서 포함)란, 이론적으로 메모리에 저장된 명령어들을 실행하는 유한 상태 오토마톤(Finite-State Automaton)을 의미한다. 시스템의 상태는 프로세서에 있는 레지스터의 값들과 메모리에 저장된 값들에 의해 결정된다. 각각의 명령어는 이들의 상태 변화를 정의하며 또한 다음번에 실행될 명령어를 결정한다. ARM의 구조의 특징 - ARM은 칩의 기본 설계 구조만 만들고, 실제 기능 추가와 최적화 부분은 개별 반도체 제조사의 영역으로 맡긴다. 따라서 물리적 설계는 같아도, 명령 집합이 모두 다르기 때문에 서로 다른 칩이 되기도 하는 것이 ARM. -..

1) 패리티 비트 정보전달 과정에서 오류 발생여부를 검사하기 위해 추가된 비트를 말한다. 1의 개수가 홀수인지 짝수인지 체크하기 위해 추가되는 비트. 1Bit로 오류 검출 가능. 그러나 여러 비트에서 동시에 오류가 발생하면 검출 불가능 패리티 비트는 홀수(odd) 패리티 비트와 짝수(even) 패리티 비트로 분류한다. - 전달하고자 하는 DATA의 1의 개수로 홀수와 짝수를 구분합니다. - 짝수패리티의 경우 0을 붙여주고, 홀수 패리티인 경우 1을 붙여줍니다. 2) 해밍 코드 해밍 코드란 자기 정정 부호의 하나 2bit의 오류 검출해서 1bit 오류를 수정할 수 있는 오류 검출 및 수정 부호 즉 데이터비트에 여러 개의 패리티비트를 추가하여 오류를 검출하고 정정할 수 있는 코드. 오류의 검출은 물론 스스로..
(모든 예시는 32bit로 가정 하고 정리) 고정 소수점 움직이지 않고 고정된 소수점을 뜻한다. 고정소수점은 첫 번째 칸을 부호비트, 그 다음 15칸은 정수부, 16칸은 소수부라고 부른다. 명칭 그대로 부호비트는 실수의 부호를 나타내는 비트 자리로 실수가 음수라면 1을, 양수라면 0을 넣는다. 그리고 정수부에는 실수의 정수 부분을, 소수부에는 실수의 소수부분을 넣는다. 정수부와 소수부의 경계 부분을 소수점의 위치로 생각하고 수를 그대로 넣으면 된다. 숫자들을 넣고 남은 칸들은 모두 0으로 채워진다. 21.25를 예를 들어 표현하면 다음과 같다. 21.25는 위 설명에서 10101.01로 구한 바 있다. 부호비트: 0 (10101.01이라는 실수는 양수이기 때문이다.) 정수부: 10101 (정수 부분의 수..