2025/02/04 2

동적 메모리 다루기

메모리는 컴퓨터의 구성 요소에 속한다.C++에서는 동적 메모리를 사용자가 직접 관리해야 하므로크게메모리의 작동 과정,할당과 해제,메모리 할당에 실패한 경우이 3가지를 알아보자.메모리 작동 과정객체가 메모리에 할당 되는 방식을 머리 속에 자연스럽게그려지는 것 부터 시작해보자.네모 박스를 레이블이라 칭하고이 레이블은 메모리를 가리키는 일종의 변수의 이름이라 생각하자.이 레이블(상자)에 담긴 데이터는그 메모리에 현재 저장된 값이다.이제 객체가 메모리에 할당되는 과정을 떠올려 보았다.이러한 객체가 정적할당 되는 경우에는스택이라는 메모리 공간에 저장되어 컴파일 타임에생명주기가 결정이 된다.이러한 변수를 자동 변수라 하며스코프에 따라 자동으로 해제되므로 자동 변수라 한다.동적할당 되는 경우에는힙이라는 메모리 공간에..

IP(Internet Protocol) IPv4

IPv4 프레임의 데이터 필드에는 상위 계층에서 전달받거나상위 계층으로 전달해야 할 내용이 명시된다.따라서 IPv4 패킷은 프레임의 페이로드로 데이터 필드에 명시된다. IPv4 패킷은 다음과 같은 형식을 띈다. 1. 식별자 2. 플래그 3. 단편화 오프셋 4. TTL 5. 프로토콜 6. 송신지 IP 주소 7. 수신지 IP 주소 총 7개이다. 들어가기 앞서, 패킷이란?패킷(Packet)은 네트워크를 통해 전송되는 데이터의 형식화된 블록으로, 데이터 통신에서 사용되는 용어이다. 1. 식별자 식별자는 패킷에 할당된 번호이다.만일 메시지 전송 과정에서IPv4 패킷이 여러 조각으로 쪼개져서 전송되었다면,수신지에는 이들을 재조합해야 한다. 이때 잘게 쪼개져서 수신지에 도착한 IPv4 패킷들이 어떤 메시지에서쪼개졌..