- •Оглавление
- •Общие сведения
- •Современные версии ос unix
- •Основные характеристики
- •Архитектура ос unix
- •Системное программное обеспечение
- •Терминал и командная строка
- •Терминал
- •2.1.1. Управляющие символы
- •2.1.2. Одновременный доступ к системе
- •Командная строка
- •2.2.1. Командная оболочка
- •2.2.2. Приглашение
- •2.2.3. Команды
- •2.2.4. Шаблоны
- •2.2.5. Перенаправление ввода и вывода
- •2.2.6. Служебные символы
- •2.2.7. Основные группы служебных символов командной оболочки:
- •2.2.8. Процесс выполнения команды
- •Список использованной литературы
2.2.8. Процесс выполнения команды
Командная оболочка — это обычный процесс в операционной системе UNIX. Когда пользователь вводит команду (например, по нажатию Enter), командная оболочка выполняет следующие действия:
анализ команды: выделение имени, параметров и аргументов;
если это сокращение (alias), то оно раскрывается и анализ команды продолжается;
если это встроенная команда, для неё вызывается функция-обработчик;
если это внешняя команда:
производится поиск программы с соответствующим именем;
создаётся дочерний процесс оболочки (системный вызов fork);
в дочернем процессе запускается необходимая команда с расшифрованными параметрами и аргументами (системный вызов exec);
оболочка контролирует выполнение дочернего процесса, передаёт ему сигналы и ввод пользователя, ожидает его завершения (системный вызов wait);
результаты работы возвращаются пользователю, отображается приглашение — он может вводить следующую команду (рис.2).
Рисунок 2. Запуск команды оболочкой
Список использованной литературы
http://www.linuxsoft.ru
http://rsusu1.rnd.runnet.ru/
http://ru.wikipedia.org
http://www.freebsd.org
Эрик C. Реймонд Искусство программирования для Unix = Art of Unix Programming. — М.: «Вильямс», 2005. — С. 544.
Роббинс А. Unix. Справочник. Пер. с англ. 4-е издание. — "КУДИЦ-ПРЕСС", 2007. — С. 864