본문 바로가기

전공 테트리스

[컴퓨터구조] 4. RISC-V 명령어 1 Program Counter (PC)program counter는 메모리에서 실행할 다음 명령어의 주소를 저장하는 레지스터이다. 예를 들어, 우리가 작성한 프로그램 코드가 있을 때, PC가 한줄 씩 코드를 읽어나가면서 다음 줄의 코드 주소를 PC에 저장한다.컴퓨터 프로그램은 CPU에게 작업을 수행하도록 명령한다. 즉, 컴퓨터 프로그램은 이 명령(instructions)으로 이루어져 있고, CPU는 이러한 명령을 차례대로 가져와서 실행한다. 이때 program counter는 다음에 실행할 명령어의 주소를 저장하는 역할을 하는 레지스터인 것이다. Instruction pointer, Instruction address register 혹은 instruction counter라고 부르기도 한다.CPU가 명령.. 더보기
[네트워크] 6. Transport Layer (2) TCP 송신자의 어플리케이션으로부터 데이터 수신타이머 안 켜져있으면 켜줌..시퀀스 넘버를 헤더에 붙여서 세그먼트 생성타임아웃타이머 재시작타임아웃인 세그먼트 재전송ACK 수신에크되지 않은 세그먼트 있으면 타이머 재시작ACK가 unACKed한 세그먼트를 알면 에크된 걸 업데이트함TCP의 빠른 재전송송신자가 원본 + 3번의 중복ACK를 받는다면 = 타임아웃 발생 전에 세그먼트 재전송함 TCP flow control수신자가 rwnd 필드에 프리 버퍼를 적어둠→ 오버플로우 방지 TCP connection 관리3-way 핸드쉐이크 더보기
[네트워크] 5. Transport Layer (1) 3.1 트랜스포트 계층 서비스 및 개요 트랜스포트 계층 프로토콜은 → 서로 >>다른논리적 통신 제공애플리케이션의 관점에서 프로세스들이 동작하는 호스트들이 직접 연결된 것처럼 보이는 것을 의미네트워크 레이어 - 호스트들 사이의 논리적 통신 제공트랜스포트 레이어 - 프로세스 사이의 논리적 통신 제공트랜스포트 계층은 네트워크 라우터가 아닌 종단시스템에서 구현됨라우터에서는 오로지 데이터그램의 네트워크 계층 필드에 대해서 동작함.. ((sender))송신 애플리케이션 프로세스로부터 소켓을 통해 수신한 ‘메시지’를 ’세그먼트‘로 쪼개서 각각의 조각에 헤더를 덧붙임그리고 캡슐화하여 IP로 전송 ((receiver))수신 측 네트워크 계층에서는 데이터그램으로부터 → 트랜스포트 계층의 세그먼트 추출하고 트랜스포트로 전송.. 더보기
[네트워크] 4. Application Layer (2) 2.4 DNS : Domain Name System인터넷 호스트에 대한 하나의 식별자 - 호스트 네임 (hostname)(기억하기 쉬워 사용자가 좋아하지만, 별로 제공되는 정보가 없음)→ IP주소 사용DNSname 서버들이 계층구조로 구현된 분산 데이터베이스호스트가 분산 데이터베이스로 질의하도록 허락하는 어플리케이션 계층 프로토콜→ 네트워크 코어가 아닌 네트워크 엣지에서 작동함   2.4.1 DNS가 제공하는 서비스호스트네임을 IP주소로 변환호스트 엘리어싱 (host aliasing) - canonical(정식 호스트네임), alias name제시한 별칭 호스트 네임에 대한 정식 canonical 호스트 네임을 얻기 위해 이용될 수 있음복잡한 호스트 네임을 가진 호스트는 하나 이상의 별명을 가질 수 있음.. 더보기
[네트워크] 3. Application Layer (1) 2.1 네트워크 애플리케이션의 원리네트워크 애플리케이션 개발의 중심은 다른 종단 시스템에서 동작하고 네트워크를 통해 서로 통신하는 프로그램을 작성하는 것라우터나 링크 계층의 스위치와 같이 코어 게층에서 실행되는 소프트웨어를 작성할 필요 없음→ 인터넷 애플리케이션의 광대하고 빠른 발전의 원동력  2.1.1 네트워크 애플리케이션 구조클라이언트-서버 구조P2P 구조클라이언트 - 서버 구조server : 항상 켜져 있는 호스트, 고정 IP주소를 가짐, 하나의 서버로 모든 클라이언트의 요청에 응답할 수 없으므로 주로 데이터센터에 모여있음client : 가끔 혹은 항상 켜져 있음, 이 구조 상에서의 클라이언트는 직접 통신하지 않음P2P (Peer To Peer)서버에 최소한의 의존Peer는 isp가 소유하지 않고,.. 더보기
[네트워크] 2. Introduction to Computer Network 2 5. Performance : loss, delay, throughput [1] Performance : Bandwidth and LatencyBandwidth (throughput; 대역폭, 처리량, 처리율, 수율)일정 시간 동안 전송 가능한 비트의 수 (가능성일 뿐, 실제와는 다름)ex) 100Mbps = 초당 1,000만 비트 전달Latency (delay)네트워크 한쪽 끝에서 다른 끝으로 메시지가 이동하는데 걸리는 시간RTT (round-trip-time)왕복 시간 측정구성 요소Processing delayqueuing delay (큐잉딜레이)도중 또는 종단 장치들이 메시지를 처리하기 전까지 메시지를 가지고 있는 시간transmit delay 한 단위의 데이터 전송하는데 소요되는 시간첫 번째 비트.. 더보기
[자료구조] 10. 그래프, BFS, DFS, 위상 정렬 1. 그래프 - 그래프란?- 그래프 관련 용어- 방향그래프- 무방향 그래프- 그래프의 구현 (인접행렬/  인접 리스트 )  - 방향그래프 (Directed Graph)두 정점을 잇는 간선에 방향이 있는 그래프  - 무방향 그래프 (Undirected Graph)두 정점을 잇는 간선에 방향이 없는 그래프   - 그래프의 구현 (인접행렬; Adjacency Matrix)원소 = 1 : 0 ? 이어져있다 : 이어지지 않았다. 원소가 1이면 두 정점은 이어져있다.원소가 0이면 두 정점은 이어지지 않았다.   # 무방향 그래프대각선을 기준으로 대칭을 이룸따라서... 간선 수 x 2 = 1의 개수 # 방향 그래프대칭을 이루지 않기 때문에(방향이 있으니... 당연히 대칭이 아님)간선 수 = 1의 개수 # 무방향 그래.. 더보기
[자료구조] 9. B-트리, 해쉬 테이블 1. B-트리 - B-트리란?- 원소삽입   - B-트리란?다음을 모두 만족하면 m차 B-트리a. 모든 리프노드의 깊이가 동일b. 노드 당 자식 수는 [m/2] ~ m개 (leaf 노드 제외)     // [m/2] : 올림함수c. 자식 노드의 수는 데이터 수보다 +1 (leaf노드 제외)  // 즉, m차 B-트리에서 노드 내 데이터 최대 수는 m-1개d. 단일 노드 내에서 데이터는 정렬됨e. 트리 관점에서도 데이터는 정렬됨     - 원소 삽입 데이터 수 제한을 넘어서지 않는 경우에서 삽입⁘ 탐색과 유사한 방법으로 새 데이터를 삽입할 적절한 리프 노드 선정⁘ 해당 리프 노드에 데이터가 추가될 여유가 있으면 그대로 삽입 데이터 수 제한을 초과하는 경우에서 삽입⁘ 리프 노드에 데이터 삽입될 여유가 없으면.. 더보기