понимание требований для execve и установки переменных среды

У нас много проблем с переводом нашего учителя. Мы попросили разъяснений и получили от него следующее

Для execve отправьте ему среду, которую вы настроили с вашими экспортированными переменными, и создайте встроенную команду для создания подоболочки / bin / bash, чтобы вы могли видеть экспортированные переменные с помощью env.

(Он говорит о создании наших собственных переменных среды здесь.)

Да создай свой. Вы можете начать с копирования среды при запуске вашей оболочки и добавить только экспортированные переменные

Это связано с моей следующей публикацией о переполнении стека (чтение этой другой статьи поможет вам понять, что я пытаюсь сделать):

используя новый путь с execve для запуска команды ls

Мы просто очень смущены этим. Еще раз объясню, что мы пытаемся сделать сейчас. Подобно тому, как это делает ваша оболочка Linux, нам нужно написать собственную программу, которая может устанавливать переменные среды, такие как PATH и USER, и любые другие переменные, которые пользователь хочет определить.

Примером того, как вы бы это назвали, будет (внутри вашей программы по ее приглашению):

mysetenv dog spike

которая создаст переменную окружения, похожую на "dog = spike"

Что еще более важно, мы должны иметь возможность установить нашу собственную переменную PATH и отправить ее вexec команда. Это запутанная часть, потому что, основываясь на всех наших вопросах, мы не понимаем, что мы должны делать.

Ответы на вопрос(3)

Ваш ответ на вопрос