
УТС 8 семестр заочники / Лабораторные работы / 9091_Боброва_Лаб2
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра АПУ
отчет
по лабораторной работе №2
по дисциплине «Программирование систем реального времени»
Тема: Встроенные команды интерпретатора SH
Студентка гр. 9091 |
|
Боброва Н.Ю. |
Преподаватель |
|
Писарев А.С. |
Санкт-Петербург
2023
Упражнение 1.
Проверили действие команды “print”
Проверили результат выполнения двух конструкций
Проверили выполнение управляющих конструкций
получили
получили
Придумали пример, демонстрирующий работу конструкции “for”
Придумали пример, демонстрирующий работу конструкции “case”
Придумали и проверили функцию, выполняющую те же действия, что и придуманная конструкция “for”
Упражнение 2
Назначали синоним “f1” для функции “for_for1”, а также синонимы “t”, “f”, “e” для функций “true”, “false”, “echo” соответственно
Удалили созданные синонимы
Упражнение 3
Выполнили заданную конструкцию и получили результат
Упражнение 4
Установили переменную окружения “env”
-
Переменные окружения
Значения
env (моя переменная)
5
HOME
/root
LOGNAME
root
SHELL
/bin/sh
Выполнили пример
При выполнении команды порождается процесс потомок, заменяющий Shell, консоль закрывается.
Упражнение 5
Установили переменную окружения с помощью команды typeset и проверили установку командой export и typeset
Установили переменные окружения для PS1 и PS2
После вернули стандартные значения переменных окружения для PS1 и PS2
Упражнение 6.
Сбросили имя функции for_for1
Сбросили значение переменной PS1
Теперь при вводе в новую строку нет решетки
Установили значение переменной окружения PS1= :)
Упражнение 7.
Получили список сигналов, поддерживаемых встроенное командой “kill”
Получили список сигналов, используя команду “use kill”
Имя сигнала |
описание |
SIGQUIT |
Quit (выйти из программы) |
SIGKILL |
Killed (убить процесс) |
SIGTERM |
Terminated (завершить процесс) |
Внешней команды “sin” нет в данной версии QNX
Поэтому мной использовалась команда “ps”
Запустили второй процесс “Shell”, вызвав команду “sh” и определили pid=1224742
С помощью команды “kill” завершили процесс “shell” и проконтролировали это
Упражнение 8
Создали файлы f1 и f2
С помощью команды “trap” создали ловушку, с помощью команды “ps” (команды “sin” нет в данной версии QNX) определили pid-номер для shell. Послали с помощью утилиты “kill” сигнал “SIGUSR1”