
- •1. Основные понятия и определения. Операционные системы как средство распределения и управления ресурсами.
- •2. Архитектура unix. Основные стандарты.
- •3. Модель системы unix.
- •4. Ядро системы. Внутренняя структура ядра.
- •5. Файловая подсистема
- •6. Подсистема ввода/вывода
- •7. Подсистема управления процессами
- •8. Работа в операционной системе unix
- •9 Файлы и файловая подсистема. Типы файлов.
- •11 Владельцы файлов. Права доступа к файлу. Дополнительные атрибуты файла.
- •12 Командный интерпритатор Shell. Синтаксис языка Bourn Shell. Общий синтаксис скрипта.
- •13 Основные утилиты unix
- •14 Подсистема управления процессом. Структура данных процесса, состояния процесса.
- •15Типы процессов: системные процессы, демоны, прикладные процессы.
- •16.Жизненый путь процесса. Инфраструктура процесса ос unix.
- •21. Планирование и управление процессами. Основные принципы и механизмы, обработка прерываний таймера, алармы, создание процесса.
- •22. Сигналы. Управление сигналами: отправление сигнала, доставка и обработка сигнала.
- •23. Взаимодействие между процессами. Средства межпроцессного взаимодействия.
- •24. Настройка командного интерпретатора. Работа с командным интерпретатором. Способы установки командного интерпретатора.
- •26. Файловая подсистема. Базовая файловая система System V . Основные компоненты файловой системы s5fs, массив индексных дескрипторов. Достоинства, недостатки.
- •27. Файловая система ffs. Основные изменения.
- •28. Архитектура виртуальной файловой системы. Монтирование файловой системы. Трансляция имен. Системные вызовы, требующие трансляции имени.
- •33. Блочные устройства
- •35. Трансляторы. Основные понятия и определения
- •36. Общие особенности языков программирования и трансляторов
- •37. Обобщённая структура компилятора, интерпритатора.
- •38. Фазы процесса трансляции и компиляции.
- •Обобщенная схема синтаксического анализатора
- •41. Варианты взаимодействия блоков транслятора. Особенности.
- •42. Многопроходная организация взаимодействия блоков транслятора. Достоинства и недостатки.
- •43. Однопроходная организация взаимодействия блоков транслятора. Достоинства и недостатки.
- •Наиболее широкое применение при разработке трансляторов нашли кс-грамматики и порождаемые ими кс языки. Способы записи синтаксиса языка
- •Метаязык Хомского
- •46 Метаязык Хомского-Щутценберже
- •49. Распознаватели.
- •50. Организация лексического анализа. Назначение и необходимость фазы
- •55. Грамматики с ограничениями на правила.
- •56.Устройства управления с конечной памятью.
- •57. Методы лексического анализа
- •58. Организация прямого л/а
- •59. Общие принципы организации синтаксического разбора. Назначение, классификация методов синтаксического разбора.
- •60. Методы синтаксического разбора.
- •Последовательность разбора.
- •Использование просмотра вперед.
- •Разработка программы по таблице переходов амп
- •64 Организация автоматов с магазинной памятью.
- •65 Распознаватель скобочных выражений.
- •67 Основные команды Linux. Ввод и вывод данных.
13 Основные утилиты unix
ls – список файлов текущего каталога
ls –al-получить список файлов текущего каталога с указанием размера,
времени создания и изменения, имени владельца, таблицы прав.
ls –aC-просмотр скрытых файлов
ls –C nata-вывод списка файлов каталога nata в несколько колонок в алфавитном порядке
ls –RC/home/nata/bin-рекурсивный просмотр каталогов
ls –tC-сортировка по времени модификации, все вновь созданные файлы размещаются в начале списка
cd [dir]-сменить текущий каталог.
cp файл1 файл2-копировать файл. Если вместо имени второго файла указать каталог, то файл1 копируется в каталог файл2 с тем же именем
rm файл1-удалить файлы с указанными именами .
mkdir-[имя каталога1]…-cоздать новый каталог
rmdir-[имя каталога]…-удалить пустой каталог
pwd-вывести имя текущего каталога
cmp[опция] файл1 файл2-сравнить два файла, указанных в качестве аргумента
cat[-опция] файл-выводит содержимое файла на экран терминала.
less-выводит стандартный входной поток на экран порциями по 24 строки,ожидая нажатия клавиши Пробел для вывода очередной порции.
head [-n] файл-посмотреть только начало(первые n строк)файла
tail[- опция] файл-просмотреть конец(последние n строк)файла
find имя _каталога[-ключ]- выполнить поиск файла в файловой системе, начиная с каталога имя_каталога,используя критерии:
-name –поиск по искомому имени файла, например:find / -name sh
по этой команде будет осуществляться поиск в каталоге / файла с именем sh
-print – обеспечивает вывод информации. Например, для вывода полного имени исполняемого файла надо ввести команду: find / name sh –print 2>dev/null
Для фрагментного поиска по имени файла,например *core*,надо ввести команду: find ~ -name ‘*core*’-print
-size[размер]-поиск по заданному размеру.Например,для поиска файлов размером больше 10Мбайт по всей файловой системе,необходимо ввести команду: find . – size +20480 –print
-atime- поиск по последнему времени модификации.Например,поиск файлов с именем файла file1, обращение к которым было более 15 дней назад: find / -name file1 -atime +15 –print
Для автоматического удаления всех найденных файлов с именем core,последнее обращение к которым было (+30)месяца назад, надо ввести команду:find / -name core –atime +30 –exec rm {}\
which[-ключ] –поиск выполняемых файлов.Эта команда встроена в оболочку, позволяет определить точное местонахождение файла,и передает результаты своего выполнения в стандартный выходной поток
gprep[-ключ] <per_выражение> файл…-команда позволяет выбрать из текстового файла строки по критериям.Например, чтобы произвести поиск в файле file слова center( в Америк.) и centre (в британском) написании, надо задать команду: grep “cent[er]” file , где [er] является регулярным выражением, соответствующим либо символу “e”,или”r”.
Для управления дисковым пространством в UNIX используются команды df,du,ulimit:
df[-ключ] –команда определяет ,сколько свободного дискового пространства и индексных дескрипторов доступно в разделе смонтированного диска. При использовании ключей:
-k-вывод данных осуществляется в блоках по 1024 байт, или в килобайтах.
-i- предназначен для подсчета количества индексных дескрипторов.
du [-ключ]- команда определяет какой объем диска занимает конкретный каталог. Вызов команды без параметров позволяет получить данные о текущем каталоге. При использовании ключей:
-k- вывод данных осуществляется в килобайтах
-a-вывод данных всех перечисленных файлов.
-s- ограниченный вывод, только данные об указанном каталоге ,например:13500 /home/nata/bin, где 13500-размер каталога, выраженный в блоках по 512 байт
-x- не выводят данные о файлах ,находящихся в других файловых системах. Проверяются данные, хранящиеся в указанном каталоге локального диска.
ulimit- выводит или устанавливает значение пределов, ограничивающих использование задачей системных ресурсов(времени процессора, памяти, дискового пространства)
top-выдает непрерывно обновляемую таблицу всех задач, включая системные. Для завершения работы команды нажать клавишу Q
ps-выводит информацию о существующих процессах. При использовании ключей:
-al-выдает в форме таблицы список пользовательских процессов, запущенных в системе.
-F-статус процесса(системный, блокировки памяти)
-A-состояние всех процессов
-S-состояние процесса(О-выполняется процессором,S-находится в состоянии сна,I-создается,Z-зомби)
-ef-распечатывает имя программы, породившего процесс, вместе со с своими параметрами.
w[-ключ]-команда информирует о том, что делают в системе зарегистрированные пользователи
who[-ключ] –выдает список пользователей ,зарегистрированных в данный момент в системе. При использовании ключей:
-b-выводит время последней перезагрузки
-H –выводит заголовки столбцов
-T-выводит состояние канала связи с каждым из терминалов(+означает, что данный терминал доступен для записи,a-означает ,что терминал для записи не доступен)
last [-ключ]- позволяет определить, кто и когда зарегистрировался в системе.
finger-команда позволяет определить, находится ли в системе пользователь.
at [-ключ] время запуска- считывает команды стандартного потока ввода и группирует их в задания at,которое будет выполнено в указанное пользователем время. Например: at now +2minutes
uptime-позволяет оценить стабильность и загрузку системы.