Как создать свою оболочку

Легко считать себя «не настоящим программистом». Есть программы, которыми пользуются все, и их разработчиков легко поставить на пьедестал. Несмотря на то, что разрабатывать большие программные проекты непросто, часто основная идея этого программного обеспечения довольно проста. Самостоятельная реализация — это интересный способ показать, что у вас есть все необходимое, чтобы стать настоящим программистом. Итак, это пошаговое руководство о том, как я написал свою собственную упрощенную оболочку Unix на C в надежде, что это заставит других людей чувствовать то же самое.

Студенты университетов, будьте осторожны! На многих курсах есть задания, требующие написания оболочки, и некоторые преподаватели знают об этой статье. В основном я изучаю программную инженерию в COMSATS, WAH CANTT. Мой учитель дал мне задание написать оболочку. Я просто расскажу вам основы «Как работает Shell».

Основы Shell?

Давайте посмотрим на оболочку сверху вниз. Оболочка выполняет три основные функции в течение своего жизненного цикла.

  1. инициализировать: на этом этапе обычная оболочка будет читать и выполнять свои файлы конфигурации. Они изменяют аспекты поведения оболочки.
  2. Интерпретация: затем оболочка считывает команды из стандартного ввода (который может быть интерактивным или из файла) и выполняет их.
  3. Завершить: после выполнения своих команд оболочка выполняет все команды завершения работы, освобождает всю память и завершает работу.

Эти шаги настолько общие, что могут применяться ко многим программам. Итак, мы позаботились о том, как должна запускаться программа. Теперь об основной логике программы: что делает оболочка во время своего цикла? Что ж, простой способ обработки команд состоит из трех шагов:

  • Чтение: чтение команды из стандартного ввода.
  • Анализ: разделите командную строку на программу и аргументы.
  • Выполнить: запустить проанализированную команду.

Надеюсь, эта статья поможет вам создать свою собственную оболочку.