목록* (243)
CIDY

ptmalloc2는 리눅스 GLIBC에서 사용하는 메모리 할당자임. (메모리 할당자는 os따라 다른데, ptmalloc2는 리눅스 유저 모드에서 주로 이용하는 할당자이다.) ptmalloc2의 경우 glibc2.23에서 2.26으로 바뀌면서 tcache개념이 생겨 동작 방식이 약간 달라졌다. $ wget https://ftp.gnu.org/gnu/glibc/glibc-2.23.tar.xz $ tar -xvf glibc-2.23.tar.xz 위 명령어를 통해 GLIBC코드를 받아주자. *청크 구조 ptmalloc2에서 힙 청크들은 아래 malloc_chunk구조체를 사용한다. ↓ struct malloc_chunk { INTERNAL_SIZE_T prev_size; /* Size of previous ch..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.

int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { char s[3]; // [rsp+5h] [rbp-Bh] BYREF unsigned __int64 v4; // [rsp+8h] [rbp-8h] v4 = __readfsqword(0x28u); setvbuf(stdin, 0LL, 2, 0LL); setvbuf(stdout, 0LL, 2, 0LL); while ( 1 ) { printf("1. Allocate\n2. Write\n3. Clear\n4. Exit\nCmd? "); fgets(s, 3, stdin); if ( s[0] == 52 ) { puts("Bye!"); exit(1); } if ( s[0] > 52 )..

int __cdecl main(int argc, const char **argv, const char **envp) { int v4; // [rsp+14h] [rbp-11Ch] BYREF float v5; // [rsp+18h] [rbp-118h] BYREF int i; // [rsp+1Ch] [rbp-114h] __int16 s; // [rsp+20h] [rbp-110h] BYREF char v8; // [rsp+22h] [rbp-10Eh] unsigned __int64 v9; // [rsp+128h] [rbp-8h] v9 = __readfsqword(0x28u); s = 0; v8 = 0; v4 = 0; v5 = 0.0; cnt = 1; init_main(argc, argv, envp); for ( ..
보호되어 있는 글입니다.
보호되어 있는 글입니다.