Linux Kernel(4.19) Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

231224
1178
109353


태그 : _do_fork 요약보기전체보기목록닫기

1

[리눅스커널] 프로세스: do_fork() 함수 소개

_do_fork() 함수 소개리눅스에서 구동 중인 모든 프로세스는 _do_fork() 함수가 실행할 때 생성됩니다. 프로세스는 누가 생성할까요? 리눅스 시스템에서 프로세스 생성을 전담하는 프로세스가 있습니다. 주인공은 init과 kthreadd 프로세스입니다.유저 레벨 프로세스는 init 프로세스, 커널 레벨 프로세스(커널 스레드)는 kthreadd 프...

4.3.2 유저 레벨 프로세스 생성 시 _do_fork() 함수 흐름

먼저 유저 레벨 프로세스는 어떻게 생성할까요? 저수준 리눅스 어플리케이션 프로그램으로 fork() 함수를 호출하면 리눅스에서 제공하는 라이브러리 도움을 받아 커널에게 프로세스 생성 요청을 합니다. 여기까지가 유저 모드에서 프로세스를 요청하는 단계입니다.리눅스에서 제공하는 라이브러리는 시스템 콜을 발생하고 리눅스 커널에서는 fork() 함수에 대응하는 시...

4.6.1 _do_fork() 함수/ 4.6.2 copy_process() 함수

이전 시간까지 유저 프로세스와 커널 프로세스가 어떤 흐름으로 생성되는지 살펴봤습니다.둘 다 _do_fork() 함수를 호출한다는 사실을 알 수 있습니다.프로세스 생성 시 공통으로 실행하는 _do_fork() 함수 코드를 분석하면서 커널이 어떻게 프로세스를 생성하는지 살펴봅니다.4.6.1 _do_fork() 함수 분석_do_fork() 함수을 분석하기 앞...

wake_up_new_task() - 프로세스(Process) 실행(Activate)

프로세스가 새로 생성되면 프로세스를 깨워서 실행시켜야 해요.wake_up_new_task() 함수가 이 역할을 수행하거든요.아래 코드를 보면 많은 동작을 하는 것 같지만, 요약하면 아래와 같아요.1> 생성된 후 처음으로 시작하는 프로세스에 대한 스케쥴러 통계 정보를 설정2> Runqueue에 새로 생성된 프로세스를 추가해서 생성된 프로세스를 ...
1