Notice
Recent Posts
Recent Comments
Link
두근두근이야기
pt_regs, regs값 ebx를 임의로 바꾼다면? 본문
sys_execve함수에서
filename = getname((char *)regs.ebx);
위와 같이 regs에서 ebx를 얻어오면 실행파일명이 오는데
ebx에 임의의 값을 넣어 sys_fork시에 원하는 값을 얻고 싶다! 이게 가능한가?
pt_regs의 값을 임의로 바꾸면 안된다.
이는 user -> kernel context switch 가 일어날 때 레지스터 설정을 저장해둔 것으로 나중에 kernel 에서 user로 갈 때 레지스터를 복구하기 위해 사용된다. system call 이 불릴 때 orig_eax는 system call number를 갖고 있다.
fork()에서는 pt_regs는 child process의 context를 마들 때에도 사용된다.
'IT > IT ::Advanced SystemProgramming' 카테고리의 다른 글
do_mmap (0) | 2013.04.30 |
---|---|
flush_old_exec() (0) | 2013.04.29 |
linux pid관리 (0) | 2013.04.27 |
get_fs(), set_fs() (0) | 2013.04.27 |
효율적인 페이지 단위 점진적 검사점의 설계 및 구현 (0) | 2013.04.27 |