Проект-оболочка под Linux (Macroshell)

4 000 руб. за проект
06 февраля 2023, 02:20 • 3 отклика • 68 просмотров
Задача состоит в том, чтобы на языке C написать расширение программы Microshell, работающей под Linux — Macroshell . Оболочка должна соответствовать всем обязательным элементам дизайна Microshell и указанным ниже:

ТочкиОбязательныйОписание0,5 балла✓отображать подсказку как [{path}] $, где {path}путь к текущему рабочему каталогу;0,5 балла✓обрабатывать команду cd, которая работает так же, как cdмы знаем из оболочки bash;0,5 балла✓обрабатывать команду exit, завершающую программу оболочки;0,5 балла✓поддерживать команду help, выводя на экран информацию об авторе программы и предлагаемых ею функциональных возможностях;2 балла✓принимать команды, ссылающиеся по имени на программы, расположенные в каталогах, описываемых значением переменной окружения, PATHи разрешать вызов этих скриптов и программ с аргументами (читать fork()+ exec*());1 балл✓вывести сообщение об ошибке, когда команда не может быть правильно интерпретирована;максимум 25 баллов✓реализовать как минимум три из следующих функцийДополнительные функции (по 5 баллов):

  1. обрабатывать перенаправления, например.program < input > output
  2. обрабатывать потоки, например.program1 | program2 | program3
  3. обрабатывать сигналы таким образом, что, например, при <Ctrl+C>отправке дочернему процессу это не приведет к закрытию родительского процесса
  4. поддерживать выполнение команд в фоновом режиме с помощью&
  5. включить управление фоновыми задачами ( jobs, bg, fg)