Trace02
-
[Shell Lab] Trace02, Trace03, Trace04시스템 프로그래밍 2022. 11. 15. 21:58
Trace02 는 Foreground job의 형태로 실행파일을 실행시키는 문제입니다. 쉘에서 새로운 프로그램을 실행시키기 위한 방법은 1. fork()를 통해서 자식 프로세스를 생성하고 2. 자식 프로세스에서 execve 을 통해 새로운 프로그램을 실행시키는 것입니다. execve는 제어흐름을 변경하여 새로운 프로그램을 실행시키고 다시 원래 프로그램으로 돌아오지 않았다는 것을 복기하며 trace02를 진행해봅시다! Trace03, Trace04 는 각각 프로그램을 foreground job으로 argument 없이 실행, foreground job으로 argument를 갖고 실행하는 문제입니다. Trace02를 해결하면 execve 호출을 통해 같이 해결됩니다. 최종코드 void eval(char *c..