- 2020/02/29 13:38
- rousalome.egloos.com/10012008
- 덧글수 : 3
핑백
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: _do_fork() 함수 2020-03-01 09:56:01 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 커널 스레드의 종류 2020-03-01 09:56:11 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: exit() 함수로 프로세스가 종료되는 과정 및 ftrace 로그 분석 2020-03-01 09:56:19 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 기본 유저 레벨 프로세스 실행 실습 및 ftrace 로그 분석 2020-03-01 09:56:33 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 커널 프로세스 생성 시 _do_fork() 함수의 흐름 2020-03-01 09:56:35 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 유저 레벨 프로세스를 생성할 때 _do_fork() 함수의 처리 흐름 2020-03-01 09:56:37 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스 커널] 프로세스: 유저 모드와 커널 모드란 2020-03-01 09:56:38 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: do_fork() 함수 소개 2020-03-01 09:56:41 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: ps 명령어로 프로세스 목록 확인 2020-03-01 09:56:48 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 프로세스란 2020-03-01 09:56:56 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 유저 프로그램 실행 흐름 추적하기 2020-03-01 17:14:25 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 프로세스 컨택스트 정보는 어떻게 저장할까? 2020-03-01 17:15:31 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] thread_info 구조체의 preempt_count - 인터럽트 컨텍스트 실행 저장 2020-03-01 17:20:20 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: current 매크로란 2020-03-01 17:21:31 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: current_thread_info() 매크로 함수 분석 2020-03-01 17:21:43 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크 디스크립터(task_struct 구조체) - 프로세스를 식별 필드 2020-03-01 17:23:30 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크 디스크립터(task_struct 구조체) - 프로세스 간의 관계 2020-03-01 17:24:10 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크 디스크립터(task_struct 구조체) - 프로세스 실행 시각 2020-03-01 17:24:42 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: struct thread_info 구조체 소개 2020-03-01 17:25:14 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: struct thread_info 구조체 주소 위치는 어디일까? 2020-03-01 17:28:21 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 커널 스레드는 어떻게 생성할까? 2020-03-01 17:35:37 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: thread_info 구조체 초기화 코드 분석 2020-03-02 00:22:17 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: thread_info 구조체 - cpu 필드에 대한 상세 분석 2020-03-02 00:24:12 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] thread_info 구조체의 preempt_count - 선점 스케줄링 여부 확인 2020-03-02 00:26:04 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] thread_info 구조체의 preempt_count - Soft IRQ 컨텍스트 실행 2020-03-02 00:27:20 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: do_task_dead() 함수 분석 2020-03-02 00:37:07 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: do_exit() 함수 분석 2020-03-02 00:37:16 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 프로세스 종료 흐름 파악 2020-03-02 00:40:41 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 커널 스레드란? 2020-03-02 00:42:36 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크란 2020-04-11 18:19:41 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 스레드란? 2020-04-11 18:22:27 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: ftrace에서 프로세스 확인하기 2020-04-19 09:00:07 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: copy_process() 함수 분석 2020-04-25 18:39:42 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: wake_up_new_task() 함수 분석 2020-04-25 18:40:03 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크 디스크립터(task_struct 구조체) - 프로세스 연결 리스트 2020-04-26 09:54:06 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: 태스크 디스크립터(task_struct 구조체) - 프로세스 상태 2020-04-26 09:54:34 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
Linux Kernel(4.19) Hacks : [리눅스커널] 프로세스: do_task_dead() 함수를 호출하고 난 후의 동작 2020-04-26 09:55:31 #
... ; * 프로세스 실행 시각 정보 스레드 정보: thread_info 구조체 * thread_info 구조체란? * thread_info 구조체 분석 * ... more
덧글
-
ragingsoul 2021/11/13 11:24 # 삭제 답글
안녕하세요 해당 책 독자입니다. 232페이지에 새 프로세스를 이닛 테스트인포 구조체에 추가하는 것을 테레이스32로 분석한 로그가 나오는데요,
...
(struct list_head) [D:0xA1A174C8] tasks = (
(struct list_head*) [D:0xA1A174E8] next = 0xA1618310 -> (
(struct list_head*) [D: 0xA1618330] next = 0xB1618A70
...
init_task.tasks.next를 0xA1618310으로 대입하지만,
실제 다음 프로세스의 tasks.next의 주소는 0xA1618330,
즉 32비트 뒤의 값인것으로 보이는데요,
이는 init_task의 tasks.next가 tasks 변수보다 32비트 뒤에 있는것과 같아보이는데,
즉, tasks.next는 다음 프로세스의 tasks.next를 가리키는 것이 아니라
tasks를 가리키는 것이 아닌가 생각했는데요,
그 다음 페이지의 설명을 보니 tasks.next는 다음 프로세스의 tasks.next를 가리킨다고 나와있어서 조금 혼란스러운 상태입니다.
제가 놓친부분이나 잘못 이해한 부분을 알려주셨으면 합니다. -
AustinKim 2021/11/13 20:31 #
T32 출력 결과를 정말로 세세하고 정밀하게 분석하셨는데요.
자세히 분석하니 T32 출력 결과에 오타가 있네요.
책에 표기된 아래 출력 결과는 아래와 같은데,
04 (struct sched_info) [D:0xA1A174A8] sched_info = ((long unsigned int) pcount = 0,
05 (struct list_head) [D:0xA1A174C8] tasks = (
06 (struct list_head *) [D:0xA1A174E8] next = 0xA1618310 -> (
07 (struct list_head *) [D:0xA1618330] next = 0xB1618A70,
08 (struct list_head *) [D:0xA1618334] prev = 0xA1A174E8),
09 (struct list_head *) [D: 0xA1A174CC] prev = 0xA7778330),
다음과 같이 변경돼야 합니다.
04 (struct sched_info) [D:0xA1A174A8] sched_info = ((long unsigned int) pcount = 0,
05 (struct list_head) [D:0xA1A174C8] tasks = (
06 (struct list_head *) [D:0xA1A174C8] next = 0xA1618310 -> (
07 (struct list_head *) [D:0xA1618310] next = 0xB1618A70,
08 (struct list_head *) [D:0xA1618314] prev = 0xA1A174E8),
09 (struct list_head *) [D: 0xA1A174CC] prev = 0xA7778330),
07번째 줄에 보이는 주소가 D:0xA1618330에서 D:0xA1618310로 출력돼야 합니다.
출력 결과에 대한 오타는 3쇄에 반영토록 진행하겠구요, 질문 주셔서 감사합니다.
아래는 제가 갖고 있는 다른 램덤프에서 확인한 init_task의 출력 결과이니 참고하세요.
(static struct task_struct) [D:0xC1711300] init_task = (
(long int) [D:0xC1711300] state = 0,
(void *) [D:0xC1711304] stack = 0xC1700000,
(atomic_t) [D:0xC1711308] usage = ((int) [D:0xC1711308] counter = 2),
...
(struct sched_info) [D:0xC1711700] sched_info = ((long unsigned int) [D:0xC1711700] pcount = 0,
(struct list_head) [D:0xC1711720] tasks = (
(struct list_head *) [D:0xC1711720] next = 0xE5CB0420 -> (
(struct list_head *) [D:0xE5CB0420] next = 0xE5CB3420,
(struct list_head *) [D:0xE5CB0424] prev = 0xC1711720),
(struct list_head *) [D:0xC1711724] prev = 0xD1FA8420),
(struct plist_node) [D:0xC1711728] pushable_tasks = ((int) [D:0xC1711728] prio = 140, (struct li
감사합니다. -
ragingsoul 2021/11/14 23:15 # 삭제
친절한 답변 감사드립니다! 답글의 설명을 읽으니 바로 이해가 됐습니다
해당 책을 읽으면서 정말 많은것을 배우고 있습니다, 감사합니다^^
최근 덧글