
- •Содержательные аспекты основных терминов, используемых в курсе «ос и ост». Вычислительные системы. Основные типы программного обеспечения (по).
- •2. Содержательные аспекты основных терминов, используемых в курсе «ос и ост». Структура системного по (спо).
- •3. Содержательные аспекты основных терминов, используемых в курсе «ос и ост». Операционная система (ос). Основные задачи ос.
- •4. Ос. Управление ресурсами.
- •Операционная система. Услуги ос.
- •Взаимодействие прикладной программы с ос. Posix – совместимость.
- •10. Ос unix. Варианты ос unix
- •11. Ос unix. Основные события в истории ос unix
- •12. Ос unix Основные концепции ос unix.
- •13. Ос unix. Граф состояний процесса.
- •14. Ос unix и концепция открытых систем.
- •17. Файловые системы (фс) ос unix. Основные принципы.
- •18. Физическая модель магнитного диска.
- •19. Логическая модель магнитного диска.
- •20. Файловые системы ос unix. Классификация фс
- •21. Организация фс s5 и ufs.
- •24. Фс ос unix. Фс ufs. Концепция группы цилиндров.
- •25. Фс ос unix. Фс ufs. Концепция фрагментов.
- •26. Фс ос unix. Фс ufs. Структура индексного дескриптора.
- •27. Фс ос unix. Фс ufs. Структура адресной информации индексного дескриптора.
- •28. Фс ос unix. Фс ufs. Взаимосвязь между элементами каталогов и индексными дескрипторами.
- •29. Фс ос unix. Монтирование фс. Создание фс. Проверка целостности фс.
- •30. Виртуальная фс. Принцип функционирования.
- •31. Псевдо - файловые системы.
- •32. Интерфейс пользователя с ос unix (уровень командной строки). Основные интерпретаторы ос unix.
- •33. Интерфейс пользователя с ос unix (уровень командной строки). Общий механизм выполнения команд.
- •34. Интерфейс пользователя с ос unix (уровень командной строки). Файлы, ассоциированные с процессом.
- •35. Интерфейс пользователя с ос unix (уровень командной строки). Конвейеры.
- •36. Интерфейс пользователя с ос unix (уровень командной строки).Управляющие конструкции языка shell.Экранирование. Перенаправление ввода – вывода.
- •37. Базовые программные средства для создания приложений в ос unix. Краткая характеристика.
- •38. Фонд свободного по (fsf). Общая характеристика.
- •39. Fsf и проект gnu.
- •43. Основные этапы разработки приложений. Построение исполняемого модуля.
- •44. Основные этапы разработки приложений. Тестирование и отладка.
- •45. Основные этапы разработки приложений. Схема функционирования cvs.
- •46. Основные этапы разработки приложений. Анализ примера использования cvs.
- •47. Системные вызовы и библиотечные функции.
- •Раздел 1 – названия всех команд/утилит.
- •Раздел 2 – системные вызовы.
- •Раздел 3 – библиотечные функции.
- •48. Сетевые ос (сос). Структура сос.
- •49. Сетевые ос. Взаимодействие компонентов сетевой ос.
- •50. Сетевые средства ос unix на основе стека протоколов tcp/ip. Краткая характеристика.
- •51. Архитектура стека протоколов tcp/ip.
- •52. Основные этапы истории стека протоколов tcp/ip. Документы rfc.
- •53. Уровни стека протоколов tcp/ip. Уровень сетевого интерфейса.
- •54. Уровни стека протоколов tcp/ip. Межсетевой уровень.
- •55. Уровни стека протоколов tcp/ip. Транспортный и прикладной уровни.
- •56. Основные достоинства стека протоколов tcp/ip.
- •57. Обзор сетевых команд стека протоколов tcp/ip.
- •58. Использование сетевых команд.
- •59. Типы адресов в сети Internet. Физические (мас) адреса.
- •60. Типы адресов в сети Internet. Сетевые адреса.
- •61. Типы адресов в сети Internet. Символьные адреса.
- •62. Классы ip –адресов. Краткая характеристика.
- •63. Классы ip –адресов. Концепция подсетей.
- •64. Бесклассовая адресация в сети Internet.
- •65. Отображение ip – адресов на физические адреса. Протокол arp.
- •66. Отображение символьных адресов на ip – адреса.
- •67. Соглашение о специальных ip – адресах.
- •68. Частные ip- адреса.
- •69. Терминология в сетях tcp/ip.
- •70. Основные сетевые приложения компьютерных сетей. Традиционные типы сервиса.
- •71. Классификация сервисов компьютерных сетей.
- •72. Электронная почта (эп). Классы систем эп.
- •73. Электронная почта. Системы на базе smtp.
- •74. Электронная почта. Системы на базе X.400.
- •75. Электронная почта. Проблемы передачи двоичных файлов.
- •76. Технология «клиент – сервер».
35. Интерфейс пользователя с ос unix (уровень командной строки). Конвейеры.
Главная сила UNIX проистекает не из мощи отдельных команд, а из возможности их сопряжения. Конвейер – один из самых красивых и продуктивных механизмов подобного сопряжения. Конвейер – это последовательность команд, разделённых знаком конвейера |, при этом стандартный вывод всех команд, кроме последней, направляется на стандартный ввод следующей команды. Каждая команда выполняется как самостоятельный процесс. Shell ожидает их завершения. Соединение в конвейер даже относительно простых команд способно дать по существу новое качество.
Конвейер представляет собой простое, но исключительно мощное средство языков семейства shell, поскольку позволяет во время работы динамически создавать "комбинированные" команды. Например, указание в одной командной строке последовательности связанных конвейером команд
ls -l | sort -r
приведет к тому, что подробное содержимое текущего каталога будет отсортировано по именам файлов в обратном порядке и выдано на экран терминала. Если бы не было возможности комбинирования команд, до для достижения такой возможности потребовалось бы внедрение в программу ls возможностей сортировки.
Следующее звено между последовательными компонентами называется каналом. Для интерпретации конвейера shell создает временный файл типа «канал», который с одного конца записывает информацию, а с другого читает.
1 - стандартный вывод (выводятся результаты работы процесса)
2 - стандартная диагностика (диагностические сообщения)
0 - стандартный ввод
C помощью команды tec можно организовать ответвление канала, т.е. помещать информацию не только на стандартный вывод, но и в указанные файлы.
$ls -la /usr/bin |wc -l |tec /home/brigades/pm6203/tmp
36. Интерфейс пользователя с ос unix (уровень командной строки).Управляющие конструкции языка shell.Экранирование. Перенаправление ввода – вывода.
Shell – это язык программирования. shell-процедуры (команды, написанные на соответствующем языке – файл сценария, скрипт) – используются при загрузке ОС.
Следовательно, сущ: послед структуры, разветвляющиеся структуры, циклические структурыЮ структуры перехода...
Экранирование
В качестве средств экранирования исп. " ",' ' и \.
Из примеров очевидно их действие:
Можно в одной строке записывать несколько присваиваний.
x=22 y=33 z=$x
A="$x" B='$x' C=\$x
Тогда
echo A = $A B = $B C = $C
eval echo evaluated A = $A
eval echo evaluated B = $B
eval echo evaluated C = $C
Выдадут на экран
A = 22 B = $x C = $x
evaluated A = 22
evaluated B = 22
evaluated C = 22
Приведем еще примеры, связанные с экранированием перевода строки. Пусть переменной "string" присвоено значение "массива" 2x3:
abc
def
Обратим внимание, что для избежания присваивания лишних пробелов вторая строка массива начата с первой позиции следующей строки:
string="abc
def"
Тогда три варианта записи переменной в команде "echo"
echo $string
echo '$string'
echo "$string"
дадут соответственно три различных результата:
abc def
$string
abc
def
Заметим также, что бэк-слэш (\) не только экранирует следующий за ним символ, что позволяет использовать специальные символы просто как символы, представляющие сами себя (он может экранировать и сам себя - \\), но в командном файле бэк-слэш позволяет об'единять строки в одну (экранировать конец строки).
Механизм перенаправления ввода/вывода
Реализация механизма основывается на следующих свойствах ОС UNIX.
1. любой ввод/вывод трактуется как ввод из некоторого файла и вывод в некоторый файл.
2. доступ к любому файлу производится через его дескриптор. Фиксируются три значения дескрипторов файлов. Файл с дескриптором 1 называется файлом стандартного ввода (stdin), файл с дескриптором 2 - файлом стандартного вывода (stdout), и файл с дескриптором 3 - файлом стандартного вывода диагностических сообщений (stderr).
3. программа, запущенная в некотором процессе, "наследует" от породившего процесса все дескрипторы открытых файлов.
В головном процессе интерпретатора командного языка файлом стандартного ввода является клавиатура терминала пользователя, а файлами стандартного вывода и вывода диагностических сообщений - экран терминала Но можно сообщить интерпретатору, какой файл или вывод какой программы должен служить файлом стандартного и какой файл или ввод какой программы должен служить файлом стандартного вывода. Тогда интерпретатор перед выполнением системного вызова exec открывает указанные файлы, подменяя смысл дескрипторов 1, 2 и 3.
Все, что требуется для нормального функционирования механизма перенаправления ввода/вывода - это придерживаться при программировании соглашения об использовании дескрипторов stdin, stdout и stderr.. Функция printf неявно использует stdout, функция scanf - stdin, а функция error - stderr.