Вопрос 34: Режимы процессора x86-32
Основным режимом работы микропроцессора является защищенный режим. Ключевыми особенностями защищенного режима являются: виртуальное адресное пространство, защита и многозадачность.
В защищенном режиме программа оперирует адресами, которые могут относиться к физически отсутствующим ячейкам памяти, поэтому такое адресное пространство называется виртуальным. Размер виртуального адресного пространства программы может превышать емкость физической памяти и достигать 64Тбайт. Для адресации виртуального адресного пространства используется сегментированная модель, в которой адрес состоит из двух элементов: селектора сегмента и смещения внутри сегмента. С каждым сегментом связана особая структура, хранящая информацию о нем, — дескриптор. Кроме «виртуализации» памяти на уровне сегментов существует возможность «виртуализации» памяти при помощи страниц — страничная трансляция. Страничная трансляция предоставляет удобные средства для реализации в операционной системе функций подкачки, а кроме того в процессорах P6+ обеспечивает 36-битную физическую адресацию памяти (64Гбайт).
Встроенные средства переключения задач обеспечивают многозадачность в защищенном режиме. Среда задачи состоит из содержимого регистров МП и всего кода с данными в пространстве памяти. Микропроцессор способен быстро переключаться из одной среды выполнения в другую, имитируя параллельную работу нескольких задач. Для некоторых задач может эмулироваться управление памятью как у процессора 8086. Такое состояние задачи называется режимом виртуального 8086 (Virtual 8086 Mode). О пребывании задачи в таком состоянии сигнализирует бит VM в регистре флагов. При этом задачи виртуального МП 8086 изолированы и защищены, как от друг друга, так и от обычных задач защищенного режима.
Защита задач обеспечивается следующими средствами: контроль пределов сегментов, контроль типов сегментов, контроль привилегий, привилегированные инструкции и защита на уровне страниц. Контроль пределов и типов сегментов обеспечивает целостность сегментов кода и данных. Программа не имеет права обращаться к виртуальной памяти, выходящей за предел того или иного сегмента. Программа не имеет права обращаться к сегменту данных как к коду и наоборот. Архитектура защиты микропроцессора обеспечивает 4 иерархических уровня привилегий, что позволяет ограничить задаче доступ к отдельным сегментам в зависимости от ее текущих привилегий. Кроме того, текущий уровень привилегий задачи влияет на возможность выполнения тех или иных специфических команд (привилегированных инструкций). Функции страничной трансляции, впервые появившиеся в МП Intel386, обеспечивают дополнительные механизмы защиты на уровне страниц.
Реальный режим (Real Mode)
В реальном режиме микропроцессор работает как очень быстрый 8086 с возможностью использования 32-битных расширений. Механизм адресации, размеры памяти и обработка прерываний (с их последовательными ограничениями) МП Intel386 в реальном режиме полностью совпадают с аналогичными функциями МП 8086. В отличие от 8086 микропроцессоры 286+ в определенных ситуациях генерируют исключения, например, при превышении предела сегмента, который для всех сегментов в реальном режиме — 0FFFFh.
Имеется две фиксированные области в памяти, которые резервируются в режиме реальной адресации:
- бласть инициализации системы
- область таблицы прерываний
Ячейки от 00000h до 003FFH резервируются для векторов прерываний. Каждое из 256 возможных прерываний имеет зарезервированный 4-байтовый адрес перехода. Ячейки от FFFFFFF0H до FFFFFFFFH резервируются для инициализации системы.
Режим системного управления (System Management Mode)
Режим системного управления предназначен для выполнения некоторых действий с возможностью их полной изоляции от прикладного программного обеспечения и даже операционной системы. Переход в этот режим возможен только аппаратно. Когда процессор находится в режиме SMM, он выставляет сигнал SMIACT#. Этот сигнал может служить для включения выделенной области физической памяти (System Management RAM), так что память SMRAM можно сделать доступной только для этого режима. При входе в режим SMM процессор сохраняет свой контекст в SMRAM (контекст сопроцессора не сохраняется) по адресу SMM Base и передает управление процедуре, называемой обработчиком System Management Interrupt, по адресу SMM Base+8000h (по умолчанию SMM Base содержит значение 30000h). Состояние процессора в этот момент точно определено: EFLAGS обнулен (кроме зарезервированных битов), сегментные регистры содержат селектор 0000, базы сегментов установлены в 00000000, пределы — 0FFFFFFFFh.
Следует отметить, что в режиме SMM не предусмотрена работа с прерываниями и особыми случаями: прерывания по IRQ и SMI# замаскированы, пошаговые ловушки и точки останова отключены, обработка прерывания по NMI откладывается до выхода из режима SMM. Если необходимо обеспечить работу с прерываниями или особыми случаями, то надо инициализировать IDT и разрешить прерывания, выставив флаг IF в регистре EFLAGS. Прерывания по NMI будут разблокированы автоматически после первой же команды IRET.
При возврате из SMM (по инструкции RSM) процессор восстанавливает свой контекст из SMRAM. Обработчик может программно внести изменения в образ контекста процессора, тогда процессор перейдет не в то состояние, в котором произошло SMI. Если SMI было получено во время выполнения инструкции HLT, то дальнейшие действия при выходе из SMM определяются значением поля «Auto HALT Restart»: процессор может снова вернуться к инструкции останова или перейти к выполнению следующей команды. Если SMI произошло при выполнении инструкции ввода-вывода, то в зависимости от значения поля «I/O Instruction Restart» возможен рестарт инструкции ввода вывода.
Эти особенности режима системного управления позволяют использовать его для реализации системы управления энергосбережением компьютера или функций безопасности и контроля доступа.
Режим системного управления изолирован от других режимов. Процессор переходит в этот режим только аппаратно: по низкому уровню на контакте SMI# или по команде с шины APIC (Pentium+). Никакой программный способ не предусмотрен для перехода в этот режим. Процессор возвращается из режима системного управления в тот режим, при работе в котором был получен сигнал SMI#. Возврат происходит по команде RSM. Эта команда работает только в режиме системного управления и в других режимах не распознается, генерируя исключение #6 (недействительный код операции).
Сравнение режимов
Что такое технологии защиты конечных точек?
Защита адреса – это набор методов и технологий, которые защищают устройства конечных пользователей, такие как настольные компьютеры, ноутбуки и мобильные телефоны, от вредоносного и нежелательного программного обеспечения. На этих устройствах сотрудники и члены команд подключаются к корпоративным сетям, чтобы получить доступ к ресурсам. Организации должны защищать эти устройства, чтобы обезопасить сети, приложения и хранилища данных от несанкционированного доступа со стороны третьих лиц.
Что такое адреса?
Адреса – это любые устройства, которые подключаются к сети и взаимодействуют по ней друг с другом. Адресами также считаются коммутаторы и маршрутизаторы, которые подключают другие вычислительные устройства к сети.
Специалисты в сфере безопасности часто используют термин «конечные устройства» для обозначения удаленных устройств, которые подключаются к внутренней сети за пределами корпоративного брандмауэра. Однако любое устройство, подключенное к сети, как правило, является адресом, будь то удаленное, локальное, мобильное, управляемое человеком или автоматизированное.
Ниже представлены некоторые примеры конечных устройств:
- настольные компьютеры;
- ноутбуки;
- мобильные устройства, такие как смартфоны и планшеты;
- носимые устройства, например смарт-часы и умные медицинские устройства;
- сетевое периферийное оборудование, например принтеры, сканеры и ксероксы;
- рабочие станции и серверы;
- коммутаторы и маршрутизаторы;
- устройства Интернета вещей (IoT), например интеллектуальные датчики и другая умная техника.
Экспоненциальное увеличение числа устройств IoT, рост популярности собственных устройств (BYOD) и переход на удаленную и гибридную работу свидетельствуют о том, что количество устройств, подключаемых к офисным сетям, будет только расти. А чем больше количество конечных устройств, тем больше шансов, что киберпреступники обнаружат дыру в безопасности и запустят кибератаку.
Почему защита адресов – это важно?
Представим безопасное офисное здание, на территорию которого могут попасть только машины сотрудников. Если заборы, стены и прочные ворота являются единственными мерами безопасности, злоумышленник, спрятавшийся в машине сотрудника, сможет с легкостью и незаметно проникнуть в офисное здание. Именно поэтому охранники офиса должны следить за безопасностью автомобилей.
Аналогичным образом корпоративные сети, как правило, защищены средствами управления безопасностью периметра, которые размещают механизмы защиты на входе. Однако к ним могут получить широкий доступ третьи лица, используя санкционированные адреса, чтобы обойти корпоративные брандмауэры и другие средства защиты периметра сети. Когда удаленные сотрудники подключаются к корпоративной сети через незащищенные домашние или общедоступные сети, несанкционированные третьи лица могут сделать следующее:
- получить широкий доступ к любым данным, передаваемым между адресами и корпоративными сетями;
- удаленно устанавливать вредоносное программное обеспечение на корпоративные системы;
- получить широкий доступ к другим критически важным ресурсам и данным.
Решения для защиты адресов позволяют снизить риски возникновения подобных проблем.
Каковы преимущества технологий защиты адресов?
Организации могут улучшить общее состояние безопасности, внедрив технологии защиты адресов. Ниже представлены некоторые их преимущества.
Повышение уровня информированности конечных пользователей.
Механизмы защиты адресов собирают информацию об известных и новых инцидентах безопасности и повышают уровень информированности о них в масштабах всей организации. Пользователи получают новейшие аналитические данные для защиты своих устройств.
Сокращение времени ответа
Решения для защиты адресов отслеживают поведение пользователей и автоматически обнаруживают любую нестандартную активность. Благодаря им можно намного быстрее выявлять инциденты безопасности и реагировать на них.
Соответствие нормативным требованиям
Технологии защиты адресов могут способствовать соответствию требованиям. Например, вы можете использовать такие меры, как шифрование данных, непрерывный мониторинг и своевременную рассылку оповещений, чтобы снизить риски непреднамеренного доступа к конфиденциальным данным.
Какие риски могут минимизировать технологии защиты адресов?
Решение для защиты адресов следующего поколения помогает управлять некоторыми рисками безопасности. Ниже представлены несколько примеров.
Фишинг
В фишинге третьи лица используют мошеннические электронные письма или другие цифровые средства связи, чтобы обманным путем заставить сотрудников раскрыть конфиденциальную информацию. Расширенные решения для защиты адресов используют шлюзы электронной почты для выявления вредоносных электронных писем и добавления их в карантин, сокращая тем самым риски того, что сотрудники станут жертвами фишинговых атак.
Программы-вымогатели
Программы-вымогатели – это тип вредоносного программного обеспечения, которое третьи лица развертывают на корпоративных адресах, чтобы заблокировать доступ пользователей к сети. Затем они могут потребовать выплатить им выкуп в обмен на восстановление доступа. Они также могут угрожать раскрытием конфиденциальных данных.
Технологии защиты адресов включают расширенное обнаружение угроз для выявления и устранения программ-вымогателей, перед тем как они зашифруют данные или заблокируют доступ пользователей к их системам. Они также предоставляют функции шифрования данных, чтобы третьи лица не могли получить непреднамеренный доступ к конфиденциальным корпоративным данным.
Риски внутренней безопасности
Риски внутренней безопасности – это риски, созданные умышленно или случайно сотрудниками или подрядчиками организаций. Администраторы могут использовать платформы для защиты адресов, чтобы применять принцип наименьшей привилегии. Таким образом пользователи и их адреса смогут получать доступ только к тем ресурсам, которые необходимы им для выполнения своих задач. Средства защиты адресов также используют поведенческую аналитику, чтобы обнаруживать подозрительную пользовательскую активность и рассылать оповещения администраторам.
Какие существуют способы реализации технологий защиты адресов?
Программное обеспечение для обнаружения адресов и реагирования на них (EDR) обладает расширенными возможностями выявления, расследования и устранения рисков. Это решение для защиты адресов, которое постоянно отслеживает устройства конечных пользователей, чтобы быстрее обнаруживать инциденты безопасности и реагировать на них. EDR работает следующим образом.
- Записывает действия и события на всех адресах.
- Анализирует миллиарды событий в режиме реального времени, чтобы автоматически обнаруживать подозрительную активность.
- Обеспечивает беспрерывную и полную наглядность действий на адресах в режиме реального времени.
Таким образом, инструменты EDR предоставляют комплексную аналитику, которую используют службы безопасности для упреждающего расследования, сокращения рисков безопасности и реагирования на них.
Платформа защиты адресов
Платформа защиты адресов – это набор технологий безопасности адресов, которые совместно работают для защиты сети вашей организации. Современные облачные платформы защиты адресов интегрируют инструменты EDR, антивирусное программное обеспечение и технологии шифрования данных. Они предоставляют централизованную консоль управления, позволяющую системным администраторам выполнять следующие задачи:
- мониторинг адресов и управление ими;
- определение и реализация политик;
- расследование инцидентов безопасности и реагирование на них.
Единая консоль управления устраняет лазейки видимости и противоречивые политики доступа. Таким образом, платформы защиты адресов представляют собой комплексное решение, обеспечивающее безопасность адресов.
Чем отличаются решения для защиты адресов от других технологий обеспечения безопасности?
Организации должны интегрировать решения для защиты адресов с другими существующими решениями для управления продвинутыми угрозами.
Сетевая безопасность
Сетевая безопасность включает в себя средства контроля доступа, безопасность приложений, антивирусное программное обеспечение, сетевую аналитику, брандмауэры, шифрование и многое другое. Решение сетевой безопасности объединяет политики и инструменты, защищающие все ресурсы в пределах границ корпоративной сети.
Сравнение защиты адресов и сетевой безопасности
Сетевая безопасность – это общий термин для различных технологий, устройств и процессов, которые можно использовать для защиты целостности любой компьютерной сети. Решения для защиты адресов являются важной составляющей сетевой безопасности любой организации.
Антивирусные программы
Традиционное антивирусное программное обеспечение можно установить на ваше конечное устройство. Программное обеспечение хранит записи о всех известных вредоносных программах, отслеживает их и устраняет.
Сравнение технологий защиты адресов с антивирусными программами
Традиционные антивирусные решения защищают лишь одно конечное устройство только от известных вредоносных программ. Для этого отдельные пользователи должны регулярно обновлять свое традиционное антивирусное программное обеспечение. С другой стороны, защита адресов объединяет передовые инструменты и анализ угроз для поиска и устранения как известных, так и новых атак вредоносных программ. Сетевые администраторы могут централизованно управлять решениями для адресов, тем самым снижая риск возникновения инцидентов безопасности.
Как AWS может помочь с защитой адресов?
Решения для адресов, доступные на Торговой площадке AWS, помогут вам настраивать данные адресов, управлять ими, предотвращать ошибки, защищать их от вредоносных программ и непреднамеренного раскрытия информации. Ниже представлены некоторые преимущества сторонних решений на нашей торговой площадке.
- Расширяйте преимущества AWS, пользуясь услугами хорошо известных и надежных поставщиков решений.
- Положитесь на инструменты защиты, созданные для работы с сервисами AWS, чтобы отслеживать лучшие рекомендации по безопасности.
- Быстро приобретайте и развертывайте решения, а также сокращайте сбои в работе компании.
Просматривайте рекомендации по определению средств управления безопасностью адресов в облаке и выбору решений, а также узнайте, как разработать стратегию защиты адресов на AWS. Создайте аккаунт AWS и начните работу уже сегодня.
Следующие шаги на AWS
Ознакомьтесь с дополнительными ресурсами по безопасности, идентификации и соответствию нормативным требованиям
Зарегистрировать бесплатный аккаунт
Получите мгновенный доступ к уровню бесплатного пользования AWS.
Начать разработку в консоли
Начните разработку в Консоли управления AWS.
Плюсы защищенного режима адресации
Защищенный режим адресации, или Protected Mode, является одной из ключевых функций современных операционных систем. Он предоставляет дополнительные уровни безопасности для защиты данных и программного обеспечения от несанкционированного доступа и вредоносного программного обеспечения.
Одним из главных преимуществ защищенного режима адресации является его способность разделять память между различными процессами. Каждый процесс имеет свое собственное виртуальное адресное пространство, что позволяет изолировать их друг от друга. Это обеспечивает более надежную и стабильную работу системы в целом, так как ошибки в одном процессе не сказываются на работе других процессов.
Благодаря защищенному режиму адресации операционные системы также могут предоставлять различные уровни доступа к памяти для разных пользователей или для разных программных модулей. Таким образом, существует возможность ограничивать доступ к критическим системным ресурсам и защищать их от возможных угроз со стороны злонамеренных программ или пользователей.
Защищенный режим адресации также обеспечивает защиту от переполнения буфера, одного из наиболее распространенных типов атак в компьютерной безопасности. Он автоматически контролирует выделение памяти и динамические структуры данных, предотвращая возможность записи за пределы выделенной области памяти и, таким образом, снижая риск успешной атаки.
Однако, защищенный режим адресации также требует дополнительных ресурсов и может оказывать некоторое влияние на производительность системы. Поэтому, его реализация в операционных системах должна быть балансом между безопасностью и производительностью, учитывая особенности конкретных применений и требования пользователей.
Что такое защищенный режим адресации?
Защищенный режим адресации — это технология, используемая в различных компьютерных системах и операционных системах для обеспечения безопасности и защиты данных. Она предоставляет дополнительный уровень контроля и защиты от несанкционированного доступа к информации, а также от вредоносных программ и атак.
Основной принцип защищенного режима адресации заключается в том, что каждой программе или приложению назначается определенное адресное пространство, в котором они могут выполняться и обращаться к памяти. При этом существуют ограничения на доступность и доступ к другим программам или адресам памяти.
Защищенный режим адресации обеспечивает следующие основные преимущества:
- Защита от несанкционированного доступа: Каждой программе присваивается свое адресное пространство, что предотвращает несанкционированный доступ к памяти или другим ресурсам других программ.
- Изоляция программ: Защищенный режим адресации позволяет разделять различные программы и приложения друг от друга, что способствует изоляции и безопасности данных.
- Защита от вредоносных программ: Защищенный режим адресации обеспечивает дополнительные механизмы для обнаружения и предотвращения вредоносных программ, таких как защита от переполнения буфера и ограничение доступа к определенным системным ресурсам.
- Управление доступом: В защищенном режиме адресации можно устанавливать права доступа к различным ресурсам и файлам на основе ролей пользователей или групп, что позволяет более гибко управлять доступом к информации.
В целом, защищенный режим адресации является важной составляющей систем безопасности и позволяет обеспечить защиту данных и программ от несанкционированного доступа, вредоносных программ и других угроз. Он используется в различных компьютерных системах, включая операционные системы, виртуальные машины и другие среды исполнения программного обеспечения.
Принципы и механизм работы
Защищенный режим адресации (ПЗУ) — это механизм, который обеспечивает безопасность и защиту данных в системе компьютерного обеспечения. Он работает на основе ограничения доступа к памяти и областям адресации системы.
Основные принципы работы ПЗУ включают:
- Сегментация памяти: ПЗУ разделяет память на сегменты, каждый из которых имеет свою защищенную область адресации. Это позволяет предотвратить несанкционированный доступ к данным и программам, сохраняя их целостность.
- Машинный режим: ПЗУ работает в машинном режиме, что означает, что он имеет прямой доступ к аппаратуре и обходит операционную систему. Это помогает предотвратить воздействия на систему со стороны злонамеренных программ и выполнять задачи без прерывания.
- Права доступа: ПЗУ назначает права доступа к каждому сегменту памяти в системе. Это позволяет ограничить доступ к данным и программам только для тех пользователей или процессов, которым разрешено иметь доступ. Нарушение прав доступа может привести к запуску защитных механизмов и предотвращению несанкционированного доступа.
- Защитные механизмы: ПЗУ включает в себя различные защитные механизмы, такие как проверка шифрования, контроль целостности данных и ограничение доступа к системным ресурсам. Эти механизмы помогают предотвратить несанкционированный доступ и защитить данные от внешних угроз.
Механизм работы ПЗУ основан на использовании таблицы защищенных сегментов, которая хранит информацию о правах доступа и адресных пространствах для каждого сегмента памяти. При обращении к памяти ПЗУ проверяет таблицу защищенных сегментов и допускает или блокирует доступ в зависимости от указанных в ней правил и разрешений.
В целом, принципы и механизм работы ПЗУ обеспечивают безопасность данных и программ в системе, позволяют предотвратить несанкционированный доступ и контролировать использование системных ресурсов. Они играют важную роль в обеспечении защиты и безопасности информации в компьютерных системах.
Преимущества защищенного режима адресации
Защищенный режим адресации – это особая система, которая позволяет защитить данные и программы от несанкционированного доступа, а также предотвращает возможность их повреждения или изменения. Он является неотъемлемой частью современных операционных систем и имеет ряд преимуществ по сравнению с обычным режимом адресации.
Основные преимущества защищенного режима адресации, которые делают его необходимым для использования в современных операционных системах:
- Защита от несанкционированного доступа: защищенный режим адресации обеспечивает контроль доступа к данным и программам, позволяя разграничивать права доступа между различными пользователями и процессами. Это позволяет предотвращать несанкционированный доступ к конфиденциальным или важным данным.
- Защита от ошибок и атак: защищенный режим адресации обеспечивает защиту от ошибок программного обеспечения и злоумышленных атак. Он позволяет обнаруживать и предотвращать множество типов ошибок, таких как переполнение буфера, неправильное обращение к памяти и другие уязвимости.
- Контроль выполнения программ: защищенный режим адресации позволяет операционной системе контролировать выполнение программ и предотвращать выполнение небезопасных или вредоносных действий. Он может осуществлять мониторинг системных вызовов, проверку целостности исполняемых файлов и другие методы контроля.
- Изоляция процессов: защищенный режим адресации позволяет создавать изолированные процессы, которые работают независимо друг от друга. Это позволяет предотвратить воздействие одного процесса на другие процессы, а также обеспечивает стабильность и безопасность работы операционной системы в целом.
- Повышение надежности и стабильности: защищенный режим адресации обеспечивает дополнительные механизмы для обнаружения и устранения ошибок в работе программ и операционной системы. Он позволяет предотвращать аварийное завершение программ, перехватывать и обрабатывать исключительные ситуации, а также обеспечивает восстановление после сбоев.
В целом, защищенный режим адресации является ключевым элементом безопасности и надежности современных операционных систем. Он обеспечивает защиту данных, контроль доступа и предотвращает возможные угрозы, связанные с несанкционированным доступом или ошибками программного обеспечения. Разработчики и администраторы систем должны учитывать преимущества и возможности защищенного режима адресации для обеспечения эффективной и безопасной работы своих систем.
Увеличение безопасности
Защищенный режим адресации обеспечивает увеличение безопасности в сети. Это достигается благодаря нескольким преимуществам:
- Ограничение доступа: Защищенный режим адресации позволяет ограничить доступ к определенным ресурсам и функциям сети только для авторизованных пользователей. Это предотвращает несанкционированный доступ и защищает данные от утечки.
- Шифрование данных: При использовании защищенного режима адресации данные передаются по сети в зашифрованной форме. Это позволяет предотвратить перехват информации злоумышленниками и обеспечивает конфиденциальность данных.
- Контроль целостности: Защищенный режим адресации позволяет проверять целостность передаваемых данных. Это позволяет обнаруживать и предотвращать возможные изменения данных в процессе передачи.
- Аутентификация пользователей: Защищенный режим адресации позволяет проверять подлинность пользователей перед предоставлением доступа к ресурсам сети. Это обеспечивает защиту от несанкционированного доступа и повышает общую безопасность системы.
- Защита от вредоносных программ: Защищенный режим адресации позволяет обнаруживать и блокировать вредоносные программы, такие как вирусы и трояны, предотвращая их распространение и повреждение системы.
Все эти преимущества защищенного режима адресации способствуют повышению безопасности в сети, обеспечивают защиту данных и предотвращают воздействие внешних угроз.
Возможности защищенного режима адресации
Защищенный режим адресации – это важная функция, предоставляемая операционной системой в целях обеспечения безопасности и защиты данных. Он обеспечивает контроль доступа к памяти и предотвращает несанкционированный доступ или изменение информации.
Основные возможности защищенного режима адресации включают:
- Защита памяти: В защищенном режиме адресации операционная система дает каждому процессу свое собственное виртуальное адресное пространство. Это позволяет изолировать процессы друг от друга и предотвращает возможность одного процесса записывать или читать данные из памяти, принадлежащей другим процессам.
- Права доступа: В защищенном режиме адресации операционная система устанавливает различные права доступа для разных сегментов памяти. Это позволяет контролировать доступ к памяти и предотвращать несанкционированное чтение или запись данных.
- Защита от ошибок: Защищенный режим адресации включает механизмы обнаружения и исправления ошибок, таких как переполнение буфера или некорректное использование указателей. Это помогает предотвращать уязвимости программ и защищает систему от атак злоумышленников.
- Многозадачность: Защищенный режим адресации позволяет операционной системе исполнять несколько процессов параллельно, каждый из которых имеет собственное виртуальное адресное пространство. Это обеспечивает более эффективное использование ресурсов и повышает производительность системы.
Возможности защищенного режима адресации играют важную роль в обеспечении безопасности и стабильности операционной системы. Они позволяют создавать надежные и защищенные программы, а также предотвращать атаки и уязвимости системы.
Ограничение доступа к ресурсам
Защищенный режим адресации предоставляет возможность ограничить доступ к ресурсам веб-приложения. Это особенно важно для защиты конфиденциальной информации, такой как данные пользователей, банковские реквизиты и другие данные, требующие особой осторожности.
В защищенном режиме адресации доступ к ресурсам может быть ограничен на различных уровнях:
- Уровень пользователя: Можно ограничить доступ к определенным ресурсам только для определенных пользователей. Например, администратору может быть предоставлен доступ к функциям, которые недоступны обычным пользователям.
- Уровень роли: В зависимости от роли пользователя (например, администратор, модератор, обычный пользователь), может быть ограничен доступ к определенным ресурсам. Таким образом, можно предотвратить несанкционированный доступ к функциям, которые должны быть доступны только определенным ролям.
- Уровень региона: В некоторых случаях может быть необходимо ограничить доступ к ресурсам в зависимости от местоположения пользователя. Например, для некоторых регионов могут быть запрещены определенные функции или отображение определенной информации.
Ограничение доступа к ресурсам в защищенном режиме адресации может быть реализовано с помощью различных методов:
- Аутентификация и авторизация: Пользователь должен пройти процесс аутентификации для получения доступа к ресурсам. После этого система проверяет его разрешения и роль для определения, какие ресурсы доступны.
- ACL (Access Control List): Часто используется для определения разрешений для каждого пользователя или группы пользователей. ACL может быть применен к определенному ресурсу, определяя, кто может получить к нему доступ.
- Шифрование: Используется для защиты конфиденциальной информации, чтобы предотвратить доступ к ней даже в случае несанкционированного доступа к ресурсам.
В целом, ограничение доступа к ресурсам в защищенном режиме адресации является неотъемлемой частью обеспечения безопасности веб-приложений и защиты конфиденциальной информации.
Вопрос-ответ
Какие преимущества предоставляет защищенный режим адресации?
Защищенный режим адресации имеет несколько преимуществ. Во-первых, он позволяет обеспечить безопасность системы, так как предотвращает возможность злоумышленников получить доступ к важным данным. Во-вторых, он обеспечивает устойчивость системы к ошибкам, так как позволяет обнаруживать и исправлять ошибки при передаче данных. В-третьих, защищенный режим адресации позволяет более эффективно использовать ресурсы сети.
Можно ли использовать защищенный режим адресации для обычных домашних сетей?
Да, защищенный режим адресации можно использовать и для обычных домашних сетей. Он поможет обеспечить безопасность вашей домашней сети, защитить личные данные, а также предотвратить возможность несанкционированного доступа к вашей сети.
Какие возможности предоставляет защищенный режим адресации для бизнеса?
Защищенный режим адресации предоставляет бизнесу несколько возможностей. Во-первых, он позволяет организовать безопасную передачу данных между сотрудниками и клиентами. Во-вторых, он помогает предотвратить утечку конфиденциальной информации и защитить бизнес от возможных кибератак. В-третьих, защищенный режим адресации обеспечивает надежную работу сети, что важно для бизнеса, требующего высокой доступности и надежности.
Можно ли использовать защищенный режим адресации только для определенных устройств в сети?
Да, с использованием защищенного режима адресации можно настроить ограниченный доступ только к определенным устройствам в сети. Это позволяет более тщательно контролировать безопасность подключенных устройств и предотвратить возможность несанкционированного доступа.
Какими способами можно реализовать защищенный режим адресации?
Защищенный режим адресации можно реализовать с помощью различных методов и технологий. Например, можно использовать IPv6 с механизмом Secure Neighbor Discovery (SEND), который обеспечивает защищенную передачу сетевых пакетов. Также можно использовать протокол IPsec для шифрования и аутентификации данных. Кроме того, существуют специализированные программы и оборудование, предназначенные для обеспечения защищенного режима адресации.
Защищенный режим
В вычислениях защищенный режим, также называемый режимом защищенного виртуального адреса, является режим работы x86 -совместимых центральных процессоров (CPU). Это позволяет системному программному обеспечению использовать такие функции, как виртуальная память, разбиение на страницы и безопасная многозадачность, предназначенные для увеличения контроля операционной системы над прикладное программное обеспечение.
Когда процессор, поддерживающий защищенный режим x86, включен, он начинает выполнять инструкции в реальном режиме, чтобы поддерживать обратную совместимость с более ранними процессорами x86.. В защищенный режим можно войти только после того, как системное программное обеспечение установит одну таблицу дескрипторов и активирует бит включения защиты (PE) в регистре управления 0 (CR0).
Защищенный режим был впервые добавлен в архитектуру x86 в 1982 году с выпуском процессора Intel 80286 (286), а затем расширен с выпуском из 80386 (386) в 1985 году. Благодаря усовершенствованиям, добавленным в защищенный режим, он получил широкое распространение и стал основой для всех последующих улучшений архитектуры x86, хотя многие из этих улучшений, такие как как добавленные инструкции и новые регистры, также принесла пользу в реальном режиме.
The Intel 8086, предшественник 286, изначально был разработан с 20- -битной адресной шиной для своей памяти. Это позволило процессору получить доступ к 2 байтам памяти, что эквивалентно 1 мегабайту. В то время 1 мегабайт считался относительно большим объемом памяти, поэтому разработчики IBM Personal Computer зарезервировали первые 640 килобайт для использования приложениями и операционной системой и оставшиеся 384 килобайта для BIOS (базовая система ввода / вывода) и память для дополнительных устройств.
По мере уменьшения стоимости памяти и увеличения использования памяти Ограничение 1 МБ стало серьезной проблемой. Intel намеревалась устранить это ограничение вместе с другими с выпуском 286.
286
Первоначальный защищенный режим, выпущенный с 286, широко не использовался ; например, он использовался Microsoft Xenix (около 1984 г.), Coherent и Minix. Несколько недостатков, таких как невозможность доступа к BIOS или вызовам DOS из-за невозможности вернуться в реальный режим без перезагрузки процессора, препятствовали широкому использованию. Принятие было дополнительно затруднено тем фактом, что 286 разрешал доступ к памяти только в 16-битных сегментах через каждый из четырех сегментных регистров, то есть только 4 * 2 байта, эквивалентные 256 килобайтам, могли быть доступны одновременно. Поскольку изменение регистра сегмента в защищенном режиме привело к загрузке 6-байтового дескриптора сегмента в ЦП из памяти, инструкция загрузки регистра сегмента заняла много десятков циклов процессора, что сделало ее намного медленнее, чем на 8086; поэтому стратегия вычисления сегментных адресов на лету для доступа к структурам данных размером более 128 килобайт (объединенный размер двух сегментов данных) стала непрактичной даже для тех немногих программистов, которые освоили это на 8086/8088.
286 поддерживал обратную совместимость со своим предшественником 8086, изначально переходя в реальный режим при включении питания. Реальный режим функционировал практически так же, как и 8086, позволяя подавляющему большинству существующего программного обеспечения 8086 работать без изменений на новом 286. Реальный режим также служил более базовым режимом, в котором можно было установить защищенный режим, решая проблему. своего рода проблема с курицей и яйцом. Чтобы получить доступ к расширенным функциям 286, операционная система создала бы некоторые таблицы в памяти, которые контролировали доступ к памяти в защищенном режиме, установили адреса этих таблиц в некоторые специальные регистры процессора, а затем установили бы процессор в защищенный режим. Это обеспечило 24-битную адресацию, которая позволила процессору получить доступ к 2 байтам памяти, что эквивалентно 16 мегабайтам.
386
Микропроцессор Intel 80386
С выпуском 386 в 1985 году многие из решены проблемы, препятствующие широкому распространению предыдущего защищенного режима. Модель 386 была выпущена с размером адресной шины 32 бита, что позволяет использовать 2 байта памяти, что эквивалентно 4 гигабайтам. Размеры сегментов также были увеличены до 32 бит, что означает, что можно было получить доступ ко всему адресному пространству в 4 гигабайта без необходимости переключения между несколькими сегментами. В дополнение к увеличенному размеру адресной шины и регистров сегментов было добавлено много других новых функций с целью повышения операционной безопасности и стабильности. Защищенный режим сейчас используется практически во всех современных операционных системах, работающих на архитектуре x86, таких как Microsoft Windows, Linux и многих других.
Кроме того, изучая отказы защищенного режима 286 для удовлетворения потребностей многопользовательской DOS, Intel добавила отдельный виртуальный режим 8086, который позволил несколько виртуализированных 8086 процессоров для эмуляции на 386. Однако аппаратная поддержка, необходимая для виртуализации самого защищенного режима, должна была подождать еще 20 лет.
386 дополнений к защищенному режиму
С В версии 386 в защищенный режим были добавлены следующие дополнительные функции:
- Пейджинг
- 32-битное физическое и виртуальное адресное пространство (32-битное физическое адресное пространство отсутствует на 80386SX и других 386 вариантах процессоров, использующих старую шину 286.)
- 32-битный сегмент смещения
- Возможность обратного переключения в реальный режим без сброс
- виртуального режима 8086
Вход и выход из защищенного режима
До выпуска модели 386 защищенный режим не предлагал прямого метода переключения обратно в реальный режим после входа в защищенный режим. IBM разработала обходной путь (реализованный в IBM AT ), который включал сброс ЦП с помощью контроллера клавиатуры и сохранение системных регистров, указателя стека и часто прерывания маска в ОЗУ микросхемы часов реального времени. Это позволило BIOS восстановить процессор до аналогичного состояния и начать выполнение кода до сброса. Позже для сброса ЦП 286 использовалась тройная ошибка, которая была намного быстрее и чище, чем метод контроллера клавиатуры (и не зависит от IBM AT-совместимого оборудования, но будет работать на любом ЦП 80286. в любой системе).
Чтобы войти в защищенный режим, необходимо сначала создать глобальную таблицу дескрипторов (GDT) как минимум с тремя записями: нулевой дескриптор, дескриптор сегмента кода и дескриптор сегмента данных. На IBM-совместимом компьютере строка A20 (21-я адресная строка) также должна быть включена, чтобы разрешить использование всех адресных строк, чтобы ЦП мог получить доступ к памяти, превышающей 1 мегабайт (только первые 20 разрешено использовать после включения питания, чтобы гарантировать совместимость со старым программным обеспечением, написанным для моделей IBM PC и PC / XT на базе Intel 8088). После выполнения этих двух шагов в регистре CR0 должен быть установлен бит PE и должен быть сделан дальний переход, чтобы очистить входную очередь предварительной выборки .
; установить бит PE mov eax, cr0 или eax, 1 mov cr0, eax; дальний прыжок (cs = селектор сегмента кода) jmp cs: @pm @pm:; Сейчас мы в личку.
С выпуском 386 из защищенного режима можно было выйти, загрузив в сегментные регистры значения реального режима, отключив линию A20 и сбросив бит PE в регистре CR0, без необходимости выполнять начальные шаги настройки, необходимые с the 286.
Защищенный режим имеет ряд функций, разработанных для улучшения контроля операционной системы над прикладным программным обеспечением, чтобы повысить безопасность и стабильность системы. Эти дополнения позволяют операционной системе работать так, как это было бы значительно сложнее или даже невозможно без надлежащей аппаратной поддержки.
Уровни привилегий
Пример использования кольца привилегий в операционной системе, использующей все кольца
В защищенном режиме существует четыре уровня привилегий или кольца, пронумерованные от 0 до 3, причем кольцо 0 является наиболее привилегированным, а 3 — наименьшим. Использование колец позволяет системному программному обеспечению ограничивать доступ задач к данным, шлюзы вызова или выполнение привилегированных инструкций. В большинстве сред операционная система и некоторые драйверы устройств работают в кольце 0, а приложения — в кольце 3.
Совместимость приложений в реальном режиме
Согласно данным программиста Intel 80286 Справочное руководство,
. 80286 остается совместимым снизу вверх с большинством прикладных программ 8086 и 80186. Большинство прикладных программ 8086 можно перекомпилировать или перекомпилировать и запустить на 80286 в защищенном режиме.
По большей части двоичная совместимость с кодом реального режима, возможность доступа к физической памяти до 16 МБ, и 1 ГБ виртуальной памяти, были наиболее очевидными изменениями для прикладных программистов. Это было не без ограничений. Если бы приложение использовало или полагалось на какой-либо из приведенных ниже методов, оно не могло бы работать:
- Сегментная арифметика
- Привилегированные инструкции
- Прямой доступ к оборудованию
- Запись в сегмент кода
- Выполнение данных
- Перекрывающиеся сегменты
- Использование функций BIOS из-за того, что прерывания BIOS зарезервированы Intel
На самом деле, почти все DOS прикладные программы нарушили эти правила. Из-за этих ограничений виртуальный режим 8086 был введен в 386. Несмотря на такие потенциальные неудачи, Windows 3.0 и ее преемники могут использовать преимущества двоичной совместимости с реальным режимом для запуска многих Windows. 2.x (Windows 2.0 и Windows 2.1x ), которые работают в реальном режиме в Windows 2.x, в защищенном режиме.
Виртуальный режим 8086
С выпуском 386 защищенный режим предлагает то, что в руководствах Intel называют виртуальным режимом 8086. Виртуальный режим 8086 предназначен для того, чтобы код, ранее написанный для 8086, мог выполняться без изменений и одновременно с другими задачами без ущерба для безопасности или стабильности системы.
Виртуальный режим 8086, однако, не полностью обратно совместим со всеми программами. Программы, которые требуют манипулирования сегментами, привилегированных инструкций, прямого доступа к оборудованию или используют самомодифицирующийся код, будут генерировать исключение, которое должно обслуживаться операционной системой. Кроме того, приложения, работающие в виртуальном режиме 8086, генерируют ловушку с использованием инструкций, которые включают ввод / вывод (I / O), что может отрицательно сказаться на производительности.
Из-за этих ограничений некоторые программы, изначально разработанные для работы на 8086, не могут быть запущены в виртуальном режиме 8086. В результате системное программное обеспечение вынуждено либо ставить под угрозу безопасность системы, либо обеспечивать обратную совместимость при работе с устаревшим программным обеспечением. Пример такого компромисса можно увидеть в выпуске Windows NT, в котором упала обратная совместимость для «плохо себя ведающих» приложений DOS.
Адресация сегментов
виртуальных сегментов 80286
В реальном режиме каждый логический адрес указывает непосредственно на ячейку физической памяти, каждый логический адрес состоит из двух частей по 16 бит: Сегментная часть логического адреса содержит базовый адрес сегмента с гранулярностью 16 байтов, т. Е. Сегмент может начинаться с физического адреса 0, 16, 32. 2-16. Часть смещения логического адреса содержит смещение внутри сегмента, то есть физический адрес может быть вычислен как физический_адрес: = сегмент_часть × 16 + смещение (если адрес строка A20 активирована) соответственно (segment_part × 16 + offset) mod 2 (если A20 выключен) Каждый сегмент имеет размер 2 байта.
Защищенный режим
В защищенном режиме сегмент_часть заменяется 16-битным селектором, в котором 13 старших битов (бит 3 — бит 15) содержат индекс записи внутри таблица дескрипторов. Следующий бит (бит 2) указывает, используется ли операция с GDT или LDT. Два младших бита (бит 1 и бит 0) селектора объединяются для определения привилегии запроса, где значения 0 и 3 представляют наивысшую и самую низкую привилегию, соответственно. Это означает, что байтовое смещение дескрипторов в таблице дескрипторов такое же, как у 16-битного селектора, при условии, что младшие три бита обнулены.
Запись таблицы дескрипторов определяет реальный линейный адрес сегмента, предельное значение для размера сегмента и некоторые биты атрибутов (флаги).
286
Адрес сегмента внутри записи таблицы дескрипторов имеет длину 24 бита, поэтому каждый байт физической памяти может быть определен как граница сегмента. Предельное значение внутри записи таблицы дескрипторов имеет длину 16 бит, поэтому длина сегмента может составлять от 1 до 2 байтов. Вычисленный линейный адрес равен адресу физической памяти.
386
Адрес сегмента внутри записи таблицы дескрипторов расширяется до 32 бит, поэтому каждый байт физической памяти может быть определен как граница сегмента. Предельное значение внутри записи таблицы дескрипторов расширяется до 20 бит и дополняется флагом гранулярности (G-бит, для краткости):
- Если G-бит равен нулю, предел имеет гранулярность 1 байт, т.е. размер сегмента может быть 1, 2. 2 байта.
- Если G-бит равен одному пределу, имеет гранулярность 2 байта, то есть размер сегмента может быть 1 × 2, 2 × 2. 2 × 2 байта. Если подкачка отключена, вычисленный линейный адрес равен адресу физической памяти. Если пейджинг включен, вычисленный линейный адрес используется как вход пейджинга.
Процессор 386 также использует 32-битные значения для смещения адреса.
Для обеспечения совместимости с 286 защищенным режимом был добавлен новый флаг по умолчанию (для краткости D-бит). Если бит D сегмента кода выключен (0), все команды внутри этого сегмента по умолчанию будут интерпретироваться как 16-битные команды; если он включен (1), они будут интерпретироваться как 32-битные команды.
Структура записи дескриптора сегмента
1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Базовый [0..15] | Предел [0..15] | ||||||||||||||||||||||||||||||
3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
Не используется | P | DPL | S | X | C | R | A | Base [16..23] |
1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Base [0..15] | Предел [0..15] | ||||||||||||||||||||||||||||||
3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
Base [24..31] | G | D | 0 | U | Ограничение [16..19] | P | DPL | S | X | C | R | A | Base [16..23] |
- A — бит доступа;
- R — бит чтения;
- C (бит 42) зависит от X:
- если X = 1, то C является битом согласования и определяет, какие уровни привилегий могут перейти на этот сегмент (без изменения уровня привилегий):
- если C = 0, то сюда может перейти только код с тем же уровнем привилегий, что и DPL;
- если C = 1, то сюда может перейти код с таким же или более низким уровнем привилегий относительно DPL.
- если C = 0, то сегмент растет;
- если C = 1, то сегмент растет вниз.
- , если X = 1, тогда сегмент является сегментом кода;
- если X = 0, тогда сегмент является сегментом данных.
Пейджинг
Общий метод использования пейджинга для создать виртуальное адресное пространство Пейджинг (на Intel 80386) с размером страницы 4K
В дополнение к добавлению виртуального режима 8086, 386 также добавил пейджинг в защищенный режим. Посредством разбиения на страницы системное программное обеспечение может ограничивать и контролировать доступ задачи к страницам, которые представляют собой разделы памяти. Во многих операционных системах подкачка используется для создания независимого виртуального адресного пространства для каждой задачи, предотвращая манипулирование одной задачей с памятью другой. Пейджинг также позволяет перемещать страницы из первичной памяти в более медленную и большую вторичную память, такую как жесткий диск. Это позволяет использовать больше памяти, чем физически доступно в первичном хранилище.
Архитектура x86 позволяет управлять страницами через два массива : каталоги страниц и таблицы страниц. Первоначально каталог страниц имел размер одной страницы, четыре килобайта, и содержал 1024 записи каталога страниц (PDE), хотя последующие усовершенствования архитектуры x86 добавили возможность использовать страницы большего размера. Каждый PDE содержал указатель на таблицу страниц. Таблица страниц также изначально имела размер четыре килобайта и содержала 1024 записи таблицы страниц (PTE). Каждый PTE содержит указатель на фактический физический адрес страницы и используется только при использовании четырехкибайтных страниц. В любой момент времени может использоваться только один каталог страниц.
Многозадачность
Благодаря использованию звонков, привилегированных шлюзов вызова и Сегмент состояния задачи (TSS), представленный в 286, вытесняющая многозадачность стала возможной в архитектуре x86. TSS позволяет изменять регистры общего назначения, поля селектора сегментов и стеки, не затрагивая регистры другой задачи. TSS также позволяет уровню привилегий задачи и разрешениям порта ввода-вывода быть независимыми от другой задачи.
Во многих операционных системах не используются все функции TSS. Обычно это происходит из-за проблем с переносимостью или из-за проблем с производительностью, создаваемых аппаратными переключателями задач. В результате многие операционные системы используют как оборудование, так и программное обеспечение для создания многозадачной системы.
Операционные системы
Операционные системы, такие как OS / 2 1.x, пытаются переключиться процессор между защищенным и реальным режимами. Это и медленно, и небезопасно, потому что программа в реальном режиме может легко вывести компьютер из строя. OS / 2 1.x определяет правила ограничительного программирования, позволяющие API семейства или связанной программе работать в реальном или защищенном режиме. Некоторые ранние операционные системы Unix, OS / 2 1.x и Windows использовали этот режим.
Windows 3.0 могла запускать программы в реальном режиме в 16-битном защищенном режиме; при переключении в защищенный режим было решено сохранить модель с одним уровнем привилегий, которая использовалась в реальном режиме, поэтому приложения Windows и библиотеки DLL могут перехватывать прерывания и осуществлять прямой доступ к оборудованию. Так продолжалось в серии Windows 9x. Если программа Windows 1.x или 2.x написана правильно и избегает сегментной арифметики, она будет работать одинаково как в реальном, так и в защищенном режиме. Программы Windows обычно избегают сегментной арифметики, потому что Windows реализует схему виртуальной памяти программного обеспечения, перемещая программный код и данные в памяти, когда программы не запущены, поэтому манипулирование абсолютными адресами опасно; программы должны сохранять дескрипторы только для блоков памяти, когда они не работают. Запуск старой программы, когда Windows 3.0 работает в защищенном режиме, вызывает диалоговое окно с предупреждением, предлагающее либо запустить Windows в реальном режиме, либо получить обновленную версию приложения. При обновлении программ с хорошим поведением с помощью утилиты MARK с параметром MEMORY этот диалог не появляется. Невозможно запустить некоторые программы с графическим интерфейсом в 16-битном защищенном режиме, а другие программы с графическим интерфейсом — в реальном режиме. В Windows 3.1 реальный режим больше не поддерживался, и к нему нельзя было получить доступ.
В современных 32-битных операционных системах виртуальный режим 8086 по-прежнему используется для запуска приложений, например DPMI совместимые программы DOS extender (через виртуальные машины DOS ) или приложения Windows 3.x (через подсистему Windows в Windows ) и определенные классы драйверов устройств (например, для изменения разрешения экрана с помощью функций BIOS) в OS / 2 2.0 (и более поздних версиях OS / 2) и 32-битных Windows NT, все под управлением 32-битного ядра. Однако 64-битные операционные системы (которые работают в длинном режиме ) больше не используют это, поскольку виртуальный режим 8086 был удален из длинного режима.
- Длинный режим
- Язык ассемблера
- Intel
- Кольцо (компьютерная безопасность)
- язык ассемблера x86
Внешние ссылки
- Основы защищенного режима
- Введение в защищенный режим
- Обзор операций в защищенном режиме архитектуры Intel
- Учебник TurboIRC.COM для входа в защищенный режим из DOS
- Обзор защищенного режима и учебное пособие
- Код Учебное пособие по защищенному режиму проекта
- Переключение Akernelloader из реального режима в защищенный
- если X = 1, то C является битом согласования и определяет, какие уровни привилегий могут перейти на этот сегмент (без изменения уровня привилегий):