- •История возникновения и развития ос
- •Основные версии unix.
- •Основные версии ос Windows
- •Установка unix-подобной ос Краткие сведения по установке Unix-подобных систем (на примере FreeBsd)
- •Установка ос Windows.
- •Ядро и вспомогательные модули ос
- •Ядро в привилегированном режиме
- •Микроядерная архитектура
- •Многослойная структура ос
- •Физическая память и виртуальное адресное пространство.
- •Виртуальное адресное пространство процесса
- •9.Способы доступа к памяти в защищенном режиме.
- •10. Многозадачность ос
- •11. Динамически подключаемая библиоте
- •Формат файлов dll придерживается тех же соглашений, что и формат исполняемых файлов, сочетая код, таблицы и ресурсы, отличаясь лишь интерпретацией некоторых полей. Цели введения
- •12) Файловая подсистема ос.
- •13) Типы файлов.
- •14) Блочные и символьные устройства
- •15) Файлы, проецируемые в память
- •16) Сокеты
- •17) Корневой каталог.
- •18) Права доступа к файлам в ос.
- •Возможные действия над файлом
- •Указание прав доступа с помощью буквенной нотации
- •Указание прав доступа с помощью числовой нотации
- •19. Системные процессы ос.
- •20. Прикладные процессы ос
- •21. Взаимодействие между процессами.
- •22. Сигналы межпроцессного взаимодействия
- •23. Алармымежпроцессного взаимодействия.
- •24. Каналы fifOмежпроцессного взаимодействия.
- •25. Сообщения межпроцессного взаимодействия.
- •Семафоры межпроцессорного взаимодействия. Семафоры
- •Командный интерпретатор ос.
- •Программирования на языке командного интерпретатора ос.
- •Команда в общем виде:
- •Цикл for
- •Операторы цикла while и until
- •Переменные в скриптах командного интерпретатора ос.
- •Перенаправление ввода/вывода командного интерпретатора ос.
- •Команды more и sort
- •Ветвления в скриптах командного интерпретатора ос. Оператор выбора
- •Условный оператор
- •Циклы в скриптах командного интерпретатора ос.
- •Цикл for
- •Операторы цикла while и until
- •33. Настройка локальной сети.
- •34. Протоколы tcp/ip сети.
- •35. Служба доменных имен.
- •36.Сетевая файловая система.
- •37. Методы управления локальной сетью.
- •38. Методы настройки служб ос.
- •39. Методы управления учетными записями пользователей ос.
- •Сервис печати ос.
- •Методы повышения отказоустойчивости ос.
- •Методы диагностики процесса загрузки ос.
- •Методы диагностики текущего состояния ос.
- •Актуальность защиты операционной системы.
- •Виды атак на ос.
- •Способы защиты ос от типовых атак.
9.Способы доступа к памяти в защищенном режиме.
Процессор 80286 и более поздние процессоры поддерживают два
режима операций: защищенный режим и реальный режим. Реальный ре-
жим совместим с работой процессора 8086 и позволяет прикладной
программе адресоваться к памяти объемом до одного мегабайта. За-
щищенный режим расширяет диапазон адресации до 16 мегабайт. Ос-
новное отличие между реальным и защищенным режимом заключается в
способе преобразования процессором логических адресов в физичес-
кие. Логические адреса - это адреса, используемые в прикладной
программе. Как в реальном, также и в защищенном режиме логический
адрес - это 32-разрядное значение, состоящее из 16-битового се-
лектора (адреса сегмента) и 16-битового смещения. Физические ад-
реса - это адреса, которые процессор использует для обмена данны-
ми с компонентами системной памяти. В реальном режиме физический
адрес представляет собой 20-битовое значение, а в защищенном ре-
жиме - 24-битовое.
Когда процессор обращается к памяти (для выборки инструкции
или записи переменной), он генерирует из логического адреса физи-
ческий адрес. В реальном режиме генерация физического адреса сос-
тоит из сдвига селектора (адреса сегмента) на 4 бита влево (это
означает умножение на 16) и прибавления смещения. Полученный в
результате 20-разрядный адрес используется затем для доступа к
памяти.
Чтобы получить физический адрес в защищенном режиме, селек-
торная часть логического адреса используется в качестве индекса
таблицы дескрипторов. Запись в таблице дескрипторов содержит
24-битовый базовый адрес, к которому затем для образования физи-
ческого адреса прибавляется смещение логического адреса.
Каждая запись в таблице дескрипторов называется дескриптором
и определяет сегмент в памяти. Запись таблицы дескрипторов зани-
мает 8 байт, а записанная в дескрипторе информация включает в се-
бя базовый адрес, предельное значение и флаги полномочий доступа
к сегменту.
Записи предельного значения сегмента и полномочий доступа в
дескрипторе определяют размер и тип сегмента. Сегменты могут
иметь размер от 1 до 65536 байт и могут быть сегментами кода или
сегментами данных. Сегменты кода могут содержать выполняемые ма-
шинные инструкции и доступные только по чтению данные. Сегменты
данных могут содержать данные, доступные по чтению и записи. За-
писывать данные в сегменты кода или выполнять инструкции в сег-
ментах данных невозможно. Любая попытка сделать это или попытка
доступа к данным вне границ сегмента вызывает общий сбой по на-
рушению защиты (сокращенно сбой GP). Поэтому режим и называется
защищенным.
По данному адресу в реальном режиме прикладная программа мо-
жет определить физический адрес. В защищенном режиме это обычно
не так, поскольку селекторная часть логического адреса является
индексом в таблице дескрипторов, и сам селектор не имеет прямого
отношения к вычислению физического адреса. Это дает то преимущество, что управление виртуальной памятью можно реализовать, не
влияя на прикладную программу. Например, путем простогообновле-
ния поля базового адреса дескриптора сегмента, операционная сис-
тема может перемещать сегмент в физической памяти без влияния на
использующую сегмент прикладную программу. Прикладная программа
ссылается только на селектор сегмента, и на селектор не влияют
изменения в дескрипторе.
Прикладная программа редко имеет дело с дескрипторами. При
необходимости дескрипторы создаются и уничтожаются операционной
системой и администратором памяти, а прикладная программа знает о
соответствующих селекторах. Селекторы аналогичны описателям фай-
лов - с точки зрения прикладной программы это то, что обслужива-
ется операционной системой, но в операционной системе они работа-
ют как индексы содержащих дополнительную информацию таблиц.
Доступ к памяти вне границ сегмента
В реальном режиме каждый сегмент имеет размер 64К. В защи щенном режиме дескриптор сегмента содержит поле, специфицирующеепредельный размер сегмента, и если вы пытаетесь обратиться к данным вне границ сегмента, по получите сбой GP. При загрузке при ладной программы администратор этапа выполнения устанавливает со ответствующие предельные значения для сегментов кода, данных и
стека. Кроме того, блок памяти, распределяемый с помощью функции
GlobalAlloc модуля WinAPI, имеет предельное значение сегмента,
соответствующее размеру блока памяти.
