- •Вопрос 1. История развития ос. Существующие операционные системы и их характеристики. Классификация ос.
- •Вопрос 2. Основные компоненты ос. Назначение, структура и функции ос.
- •Вопрос 3. Требования к операционным системам.
- •Вопрос 4. Понятие ресурса, виды ресурсов, управление ресурсами.
- •Вопрос 5. Виртуальная память. Методы распределения памяти.
- •Вопрос 6. Принцип кэширования данных.
- •Вопрос 7. Понятие процесса. Состояние процесса и переходы между ними.
- •Вопрос 8. Управление процессами. Синхронизация процессов. Семафоры. Использование семафоров для решения задач взаимоисключения и синхронизации. Алгоритмы планирования процессов
- •Вопрос 9. Управление процессами. Сообщения. Тупики. Способы борьбы с тупиками.
- •Вопрос 10. Файловые системы. Fat, hpfs, ntfs. Основные отличия. Общая модель файловой системы.
- •Вопрос 11. Файловая система fat. Структура диска. Файлы. Размещение файлов.
- •Вопрос 12. Файловые системы hpfs и ntfs. Структура диска. Файлы. Размещение файлов.
- •Вопрос 13. Операционная система ms-dos. Порядок загрузки.
- •Вопрос 14. Операционная система ms-dos. Загрузочный сектор жесткого диска. Структура элементов раздела в таблице разделов диска.
- •Вопрос 15. Операционная система ms-dos. Структура загрузочного сектора диска.
- •Вопрос 16. Операционная система ms-dos. Форматы исполняемых файлов.
- •Вопрос 17. Операционная система ms-dos. Структура psp.
- •Вопрос 18. Понятие прерывания. Аппаратные и программные прерывания. Обработка прерываний.
- •Вопрос 19. Структура таблицы векторов прерывания.
- •Вопрос 20. Способы несанкционированного доступа к информации в ms-dos. Возможные механизмы защиты.
- •Вопрос 21. Структура сетевой ос.
- •Вопрос 22. Классификация угроз безопасности ос.
- •Вопрос 23. Понятие защищенной ос. Подходы к построению защищенной ос.
- •Вопрос 24. Архитектура Windows nt. Основные модули Windows nt.
- •Вопрос 25. Архитектура Windows nt. Уровень аппаратных абстракций.
- •Вопрос 27. Windows nt. Интерфейс прикладных программ.
- •Вопрос 28. Ос Windows nт. Понятие объекта. Структура объекта.
- •Вопрос 29. Ос Windows nt. Понятие процесса. Взаимодействие между процессами. Потоки. Нити.
- •Вопрос 30. Ос Windows nt. Модель безопасности и ее компоненты.
- •Вопрос 31. Ос Windows nt. Реестр. Управление конфигурацией. Значимые элементы Реестра.
- •Вопрос 32. Архитектуры сетевой подсистемы ос Windows nt. Встраивание средств защиты в сетевую подсистему.
- •Вопрос 33. Аудит в Windows nt.
- •Вопрос 34. Угрозы безопасности Windows nt и методы защиты.
- •Вопрос 35. Ос Windows nt. Основные функции Win32 api.
- •Пример api функции:
- •Вопрос 37. История развития и общая характеристика семейства ос unix. Основные сведения о системе.
- •Вопрос 38. Архитектура ос unix. Ядро ос. Основные функции. Принципы взаимодействия с ядром.
- •Вопрос 39. Файловые системы unix.
- •Вопрос 40. Ос unix. Понятие процесса. Взаимодействие между процессами. Сигналы.
- •Вопрос 41. Ос unix. Основные функции. Системные операции.
- •Вопрос 42. Ос unix. Управление памятью. Виртуальная память. Принцип Деннинга. Структура виртуального адресного пространства.
- •Вопрос 43. Ос unix. Системные вызовы управления вводом-выводом.
- •Вопрос 44 ос unix. Средства взаимодействия с пользователем.
- •Вопрос 45. Методы защиты информации в ос мсвс.
- •Вопрос 46. Ос unix. Существующие типы файлов.
- •Вопрос 47. Стандарты защищенности ос и адекватная политика безопасности.
- •Вопрос 48. Определение и основные особенности операционных систем реального времени.
Вопрос 41. Ос unix. Основные функции. Системные операции.
access (name, mode) – проверяет, имеет ли процесс право на чтение и т.д. Проверяемый тип зависит от mode:
1 – исполнение,
2 – запись,
3 – чтение
alara (sec) – вызывает посылку…………………………….. Sec – число секунд до сигнала тревоги.
ch dir (name) – для процесса делает текущий каталог, указывающийся в параметре.
ch mod (name, mode) – изменение режима доступа к файлу.
dup – создает копию указанного дескриптора файла.
vice (INC) – увеличивает значение компонента, участвующего в вычислении компонента. Пропорциональность обратная.
Ptrace (cmd, prd, addr, data) – дает текущему процессу выполнить отладку другого процесса в соответствии со значением cmd:
Cmd = 0 – разрешает трассировку.
Cmd = 1; 2 – позволяет вернуть слово, расположенное по адресу адрес в пространстве отлаженного процесса.
Cmd = 3 – позволяет вернуть слово, расположенное в пространстве отлаженного процесса по адресу.
Cmd = 4, 5 – позволяет записать значение по адресу в пространство отлаженного процесса.
Cmd =7 – заставляет отлаженный процесс возобновить свое выполнение.
Cmd = 8 – заставляет отлаженный процесс завершить свое выполнение.
Cmd = 9 – установить режим пошагового выполнения.
stime – устанавливает системное время и дату. Время в секундах от 00 часов 00 минут 00 секунд 1 января 1970 года (нам надо установить это время, затем функция отсчитает). Time – возвращает системное время (сколько прошло с 00 часов 00 минут 00 секунд 1 января 1970 года).
times – возвращает время и заполняет следующую структуру (4 поля):
продолжительность использования процессора в режиме задачи
продолжительность использования процессора в режиме ядра
сумма нахождения процессора в режиме задачи у всех потомков
сумма нахождения процессора в режиме ядра у всех потомков
Системный вызов: clone. Флаги: CLONE _ VM – виртуальное пространство
_ FS – файловая система
_ FILES – таблица файлов
_ SIGHAND – таблица обработки сигналов
_ PARENT – родитель
Дочерние процессы с предком имеют общего родителя, файловую систему, таблицу файлов, общее адресное пространство и т.д.
Сигналы
Сигналы сообщают процессу о возникновении асинхронных событий.
Сигналы могут быть посланы функцией kill.
Существуют сигналы, посылаемые в случае завершения выполнения процесса.
Сигналы, посылаемые в случае возникновения:
Обращение к памяти, находящейся за пределами виртуального адресного пространства
Попытка записи в область, доступной только для чтения
Попытка использования привилегированной команды в пользовательском режиме
Различные аппаратные ошибки
Сигналы, посылаемые при выполнении системных функций при возникновении неисправных ошибок.
Сигналы, причиной которых служит возникновение непредвиденных ошибок.
Сигналы, посылаемые процессу, выполняющийся в режиме задачи (например, сигнал тревоги через определенное время (таймер)).
Сигналы, с помощью которых может производиться трассировка выполнения процессов.
При посылке сигнала ядро установлен 1 разряд в поле сигнала табличный процесс, соответствующий типу сигнала. Если процесс находится в состоянии останова, обработка разрешена, то ядро возобновляет данный процесс. Ядро может запоминать сигналы различных типов, но количество сигналов одного типа не запоминает.
Обработка сигналов
3 способа:
Процесс может завершаться при поступлении сигнала.
Процесс может не обращать внимание на сигнал.
Процесс может выполнить пользовательскую функцию при получении.
oldfunction = signal (signum, function)
signum – номер сигнала, при получении которого будет выполнено действие, связанное с пользовательской функцией.
function – адрес функции.
oldfunction – возвращаемое значение.
Вместо адреса функции 2 предопределенных значения: 1 и 0.
Если 1, то процесс игнорирует все последующие сигналы с номера signum. Если 0, то процесс в режиме ядра завершается.
Для посылки сигнала используют системную функцию kill:
kill (PID, signum)
В pid указывается адресат, а в signum номер сигнала.
Если pid – положительное целое число, то ядро пошлет процессу сигнал с идентификатором pid. Если pid = 0, то сигнал пошлется всем процессам, входящих в группу с процессом, вызвавшим функцию kill. Если pid = –1, то сигнал пошлется всем процессам, у которых код идентификатора пользователя совпадает с тем, под которым выполняется процесс, вызывавший kill. Пользователь сигнал со значением –1 послать не может. Если процесс, пославший сигнал, выполняется под кодом идентификации «суперпользователь», сигнал пошлется всем процессам, кроме идентификаторов 0 и 1 (его не может послать пользователь) Если pid – отрицательное число (но не –1), то сигнал пошлется всем процессам, входящих в группу с номером, равным абсолютному значению pid.
У процесса есть и групповой идентификатор. Процесс получает уникальный код идентификации, потомок наследуют код идентификации группы, наследует все права.