exec

exec 1. exec : execve, execl, execlp, .... exec 함수는 인자로 받은 다른 프로그램을 자신을 호출한 프로세스의 메모리에 덮어쓴다. 따라서 프로세스가 수행 중이던 기존 프로그램은 중지되어 없어지고, 새로 덮어쓴 프로그램이 실행된다. exec 함수군을 호출한 프로세스 자체가 바뀌므로, exec 함수를 호출해 성공하면 리턴값이 없다. 비슷한 기능을 하는 fork는 프로세스를 복제하고, exec은 프로세스를 대체한다. 1. exec의 알고리즘 remove old body load new body adjust process descriptor 2. function prototype of execve y=execve(fname, argv, envp); // change to fn..
Process related system calls 1. process A program loaded in the memory. process = body + process descriptor body = code + data + stack ps -ef 명령어는 현재 메모리에 로드된 모든 프로세스를 보여준다. ps -f 명령어는 현재 터미널에서 실행 중인 프로세스를 나타낸다. 시스템은 round-robin 방식으로 각 프로세스를 하나씩 실행한다. 스케줄러는 실행할 다음 프로세스를 선택하고 CPU는 이를 짧은 시간(예: 프로세스당 10ms, time quantum이라고 부름) 동안 실행하고 스케줄러는 다음 실행할 프로세스를 선택한다. 2. System calls to manage processes fork..
oneonlee
'exec' 태그의 글 목록