extern char **environ;
int execl( const char *path, const char *arg, ...);
int execlp( const char *file, const char *arg, ...);
int execle( const char *path, const char *arg
, ..., char * const envp[]);
int execv( const char *path, char *const argv[]);
int execvp( const char *file, char *const argv[]);
�̵� �Լ��� �ʱ� ���ڴ� ����Ǿ�� �ϴ� ������ ��θ��̴�.
const char *arg �� execl, execlp, ���� execle �Լ��鿡 �ִ� �������� �͵��� arg0, arg1, ..., argn ������ ������ �� �ִ�. �װ͵��� ���� ���α��� �̿��� �� �ִ� ���� ����Ʈ�� ��Ÿ���� �ϳ��� ���̻��� null�� ���� ���ڿ��� ����Ų��.
���Ǹ� ����, ó�� ���ڴ� ����Ǿ�� �� ������ �̸��̴�. ���� ����Ʈ�� �ݵ�� NULL �����ͷ� ������ �Ѵ�.
execv �� execvp �Լ��� ���ο� ���α��� �̿��Ҽ� �ִ� ���� ����Ʈ�� ��Ÿ���� null�� ���� ���ڿ��� ������ �迭�� �����Ѵ�. ������ ����, ù ���ڴ� ����Ǿ�� �� ���ϰ� ���õ� ���� �̸� �� �����Ѿ� �Ѵ�. ������ �迭�� �ݵ�� NULL �����ͷ� ������ �Ѵ�.
execle �Լ��� ���� ���� ���μ����� ȯ�溯���� �����ؾ� �ϸ�, �Ķ���� ����Ʈ�� �ִ� ���� ����Ʈ�� �߰����� �Ķ���� ������ �ִ� argv �迭�� ���� ������ ����ġ���� NULL �����Ͱ� �ڵ��� �´�. �̷��� �߰����� �Ķ���ʹ� null�� ���� ���ڿ��� ���� ������ �迭�̸� �ݵ�� NULL �� ������ �Ѵ�. �ٸ� �Լ����� ���� ���μ����� �ִ� �ܺ� ���� environ ���� ���ο� ���μ��� �̹����� ���� ȯ�� ������ �����´�.
�̵� �Լ��� �� ����� Ư���� �ǹ̸� ������ �ִ�.
���� ������ ���� �̸��� slash(/) ���ڸ� �������� �ʴ´ٸ� execlp �� execvp �Լ��� ���������� ã�� ���� shell �� �ൿ�� �����Ѵ�. Ž�� ��δ� PATH ������ ������ ����̴�. �� ������ �������� �ʴ´ٸ�, �⺻ ��� ``:/bin:/usr/bin''�� ���ȴ�. �߰�������, � �������� Ư���ϰ� ó���ȴ�.
���� �㰡���� ���Ͽ� �����Ǿ� �ִٸ� ( execve �� EACCES�� ��ȯ�Ѵ�.), �̵� �Լ����� Ž�� ����� �������� ����ؼ� Ž���Ѵ�. ���� ���� � �ٸ� ������ �߰ߵȴٸ�, ���� ���� errno �� EACCES�� �����ϰ� ��ȯ�ȴ�.
���� ������ ����� �νĵ��� �ʴ´ٸ�( execve �� ENOEXEC�� ��ȯ�Ѵ�), �̵� �Լ����� ù ���ڷν� ������ ��ο� �ִ� shell�� �����Ѵ�. (���� �̵� �õ��� �����Ѵٸ�, �߰����� Ž���� �������� �ʴ´�.)
������ �����ϴ� ���� ������ ��Ÿ���� �� execlp ���� execvp �� �ൿ�� ������ ������ ������. ���� ���������� ����ȭ���� ������ POSIX ǥ�ؿ��� �������� �ʴ´�. BSD(���� �ٸ� �ý���)�� �ڵ������� sleep�� �ϸ� ���� ETXTBSY�� �����ٸ� �ٽ� �õ��Ѵ�. Linux�� ����� ������ ���ϰ� �ٷ� ��ȯ�Ѵ�.
����������, �Լ� execlp �� execvp �� ���� ����� �͵� ���� ENOMEM ���� E2BIG�� ������ ��� ������ �����ϸ� ���ϵȴ�. �̵� �Լ��� ���� ����� �͵� �̿��� ������ �����ٸ� �ٷ� ���ϵȴ�.