[glibc 2.35] _int_malloc & _int_free
glibc 2.35 _int_malloc 분석static void *_int_malloc (mstate av, size_t bytes){ INTERNAL_SIZE_T nb; /* normalized request size */ unsigned int idx; /* associated bin index */ mbinptr bin; /* associated bin */ mchunkptr victim; /* inspected/selected chunk */ INTERNAL_SIZE_T size; /* its size */ int victim_index; ..
- Computer Security/System Hacking
- · 2025. 1. 12.

Handling Deadlocks
Deadlock Characterization4가지 조건을 모두 동시에 만족할 경우 Deadlock 발생Mutual Exclusion (상호 배제): 자원이 공유 불가능(Non-sharable)하고 한 번에 하나의 프로세스만 사용 할 수 있음.Hold and Wait (점유와 대기): Processes hold and request resources. 프로세스가 이미 자원을 점유한 상태에서 추가 자원을 요청하며 대기No Preemption (비선점): Resources can't be forcibly reclaimed. 자원을 강제로 회수할 수 없으며, 프로세스가 자발적으로 해제해야 함.Circular Wait (순환 대기): Circular chain of processes waiting. 프로세스 간..
- Computer Science/Operating System
- · 2025. 1. 11.

inode pointer structure
inode 구조전반적인 inode 구조는 다음과 같다. inode pointerinode에서 data block으로 참조해준다.직접 포인터(direct pointer) 12개단일 간접 포인터(singly indirect ') 1개이중 간접 포인터(doubly indirect ') 1개삼중 간접 포인터(triply indirect ') 1개그중 그림상 direct blocks~triple indirect 부분을 설명할건데, ext2/ext3/ext4을 떠올리자.이 셋의 파일 시스템 기본 data block의 크기는 4KB이며, 1KB, 2KB, 4KB, 8KB 등으로 설정이 가능하다. 32비트 시스템의 경우 포인터의 크기는 4Bytes(32bit)64비트 시스템의 경우 포인터의 크기는 8Bytes(64b..
- Computer Science/Operating System
- · 2024. 9. 25.