Stack

    [gdb] The GNU Debugger : 3. Stack 정보 분석하기

    스택은 현재 프로세스가 실행 중인 코드가 어디인지 확인할 수 있기에 매우 중요한 정보라고 할 수 있습니다. gdb에서는 종료되지 않은 함수를 하나의 frame이라고 합니다. 각 프레임은 스택에 쌓여있는 함수, 아직 종료되지 않은 함수라고 보시면 됩니다. 각 프레임은 Caller와 Callee의 관계를 구성하게 되죠. 이번 예제는 아래 코드를 사용하겠습니다. #include #include void func4(int a, int b) { printf("sum : %d\n", a + b); } void func3(int a, int b) { return func4(a, b); } void func2(int a, int b) { return func3(a, b); } void func1(int a, int b..

    /Proc FileSystem - Process in More detail

    이번 글에서는 Proc filesystem에서 process 관련된 내용을 좀 더 이해하기 위해 별도로 글을 작성하게 되었습니다. 여러분들이 Terminal에서 "cd /proc/self" 명령어로 해당 디렉토리로 이동하게 되면 현재 실행중인 쉘에 대한 정보를 가진 디렉토리입니다. 해당 디렉토리를 살펴보죠. linuxias@desktop:/proc/self$ ls -altotal 0dr-xr-xr-x 9 linuxias linuxias 0 7월 9 22:20 .dr-xr-xr-x 260 root root 0 7월 9 21:59 ..dr-xr-xr-x 2 linuxias linuxias 0 7월 9 22:20 attr-rw-r--r-- 1 linuxias linuxias 0 7월 9 22:20 autogr..