공부 68

오버플로우(Overflow) 관련 비슷한 용어 정리

오버플로우(Overflow) : 정해진 영역을 벗어나는 현상 인티져 오버(언더)플로우(integer over/underflow) : 값이 잘려서 의도하지 않은 값이 들어갈 수 있음. 반복문 우회 버퍼 오버플로우(buffer overflow) : 정해진 버퍼 크기를 넘어서 값이 들어감. 값이 잘리지 않음. 스택 오버플로우(stack overflow) : 정해진 스택의 크기를 넘어서 값이 들어감. 힙 오버플로우(heap overflow) : 정해진 힙의 크기를 넘어서 값이 들어감. 스택 버퍼 오버플로우(stack buffer overflow) : 스택 영역에 있는 버퍼가 정해진 크기를 넘어서 값이 들어감. 힙 버퍼 오버플로우(heap buffer overflow) : 힙 영역에 있는 버퍼가 정해진 크기를 넘..

공부/이모저모 2022.02.11

diff란? - 컴퓨터 파일 비교 유틸리티

https://ko.wikipedia.org/wiki/Diff diff - 위키백과, 우리 모두의 백과사전 컴퓨터에서 diff는 두 개의 파일 간 차이에 대한 정보를 출력하는 파일 비교 유틸리티이다. 일반적으로 하나의 파일 버전과 동일한 파일의 다른 버전 간의 변경 사항을 보여주는 데 쓰인다. diff는 ko.wikipedia.org 컴퓨터에서 diff는 두 개의 파일 간 차이에 대한 정보를 출력하는 파일 비교 유틸리티이다. 일반적으로 하나의 파일 버전과 동일한 파일의 다른 버전 간의 변경 사항을 보여주는 데 쓰인다. diff는 문서 파일의 줄 사이 변경 사항을 보여준다. https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=malloc/malloc.c;h=80c..

공부/이모저모 2022.02.10

탐색을 위한 해시 (해시가 값 검색을 위해 사용되는 원리)

탐색을 위한 해시 해시 목적 : 탐색을 엄청나게 빨리 하기 위함 ⇒ 해시 값을 키로 이용하면 배열로 원하는 데이터에바로 접근할 수 있음 탐색 할때는 해시 함수 결과를 해시 주소(인덱스)로 해석 키 : 값의 개념으로 direct 접근 근데 충돌 무조건 발생함 -> 잘 관리하자 충돌관리 슬롯 여러개 관리 : 슬롯 만들어서 같은 해시주소에 여러개 저장가능하게! 선형 조사법 : 슬롯 오버플로나면 다른 해시 주소(바로 다음)에 저장 ⇒ 선형조사법 근데 이러면 군집화 현상 발생. 군집화 : 특정 지역에 키 값이 몰리는 현상(앞 찼네? 바로 뒤로.. 찼네?? 바로 뒤로..) 이차 조사법 : 키가 몰리는거 방지하기위해 다른 위치(4칸 뒤, 8칸 뒤..)로 점프해서 저장토록하면??? ⇒ 이차조사법 근데 이거 규칙 일정하..

공부/JUN STUDY 2021.11.11

C언어 배열 시작주소에 연산 (arr+1) 해석

#include #define R 10 #define C 5 int main() { int(*p)[R][C]; //5*10=50개의 배열을 갖는 하나의 포인터 p선언. int arr[10][5]; printf("%p\n", arr); //arr는 int[10][5] printf("%p\n", arr+1); //arr+1은 int[5]를 가리키는 포인터 int[5]* 포인터의 요소가 int[5]일뿐. //int arr[3] 하고 arr+1이 int를 가리키는 포인터라는 것과 같은 이유 printf("%d\n", sizeof(arr)); //arr의 크기는 int[10][5] 배열의 크기 4*5*10 printf("%d\n", sizeof(arr+1)); //arr+1의 크기는 int[5]를 가리키는 포인터..

공부/이모저모 2021.10.19

C언어 배열이름에 &붙이는 경우(&배열이름??)

#include int main() { int a = 3; //&(변수) -> 변수가 있는 주소 int arr[2] = { 1,2 }; printf("%p ", &arr+3); //BASEADD+24 printf("%p ", arr+1); //BASEADD+4 //두 값의 차이는 십진수 20 return 0; } &arr+3과 arr+1의 주소 값 차이는 십진수 20이 날 것이다. 실제로 전자 : 0x9f5c3afbe0 후자 : 0x9f5c3afbcc 가 나와서 주소 값의 차이는 0x14 (십진수 20)이 나온다!! arr = &arr[0]의 값을 가리키고 있는 포인터 arr[0] -> int &arr[0] -> int * arr+1 일때 1의 의미는 int의 바이트 수 (4) &arr = arr배열의 ..

공부/이모저모 2021.10.19

패킷 손실과 딜레이 / 패킷 손실 4가지 원인 (packet loss, delay, 4 sources of packet delay)

How do loss and delay occur? 패킷 로스와 딜레이는 왜 발생하는 것일까? delay → 패킷이 라우터에 도착하면, 라우터 버퍼에 놓고 처리를 하는데, 이때 버퍼에서 다음 라우터로 가는 링크로 보내는 속도보다 패킷이 도달하는 속도가 빠르면 패킷이 쌓임 loss → 만약에 패킷이 계속 쌓여서 버퍼의 메모리 사이즈를 넘으면 버려짐! 4 sources of packet delay 패킷 딜레이의 4가지 원인 어디서 패킷 딜레이가 발생할까? 뭐 때문에 발생??? 1. 노드 처리 지연 (Nodal processing) 라우터안에서 패킷을 처리하는 작업때문에 발생하는 딜레이 데이터 패킷 헤더 처리, 라우팅 알고리즘 적용, 라우팅 테이블 업데이트, 비트 데이터 오류 검사 등등등.. 2. 큐 지연 (..

공부/JUN STUDY 2021.10.10

주요 포트번호 및 서비스 정리 (FTP,HTTP,SSH,텔넷,SMTP...)

포트 번호 서비스 이름 설명 20 FTP(data) FTP는 File Transfer Protocol의 약자로 TCP/IP 프로토콜을 이용해 서버와 클라이언트 사이의 파일 전송을 위한 프로토콜이다. 21 FTP(제어) FTP에서 사용자 인증, 명령을 위한 연결이 만들어진다. 22 SSH SSH는 Secure SHell의 약자로 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 서비스를 나타낸다. 강력한 인증과 암호화 통신을 위해 기존의 텔넷같은 서비스를 대체하여 만들어졌다. 23 텔넷 원격 접속 서비스이다. 특정 사용자가 네트워크를 통해 다른 컴퓨터에 연결하여 그 컴퓨터에서 제공하는 서비스를 받을 수 있도록 하는 인터넷 표준 프로토콜..

공부/이모저모 2021.10.01
728x90