Содержание
- 2. Первый способ состоит в непосредственном указании в поле команды JMP или CALL селектора сегмента, содержащего код
- 3. Разрешение вызова происходит в зависимости от значения поля C в дескрипторе сегмента вызываемого кода. При C=0
- 4. Вызов подпрограммы через шлюз вызова
- 5. Если вызывается подпрограмма, имеющая другой уровень привилегий, то из текущего стека в стек уровня доступа вызываемого
- 6. Как и в случае вызова подпрограмм, имеется две возможности вызова задачи - непосредственный вызов через указание
- 8. Скачать презентацию
Слайд 2Первый способ состоит в непосредственном указании в поле команды JMP или CALL
Первый способ состоит в непосредственном указании в поле команды JMP или CALL

селектора сегмента, содержащего код вызываемой подпрограммы, а также смещение в этом сегменте адреса начала подпрограммы
Непосредственный вызов подпрограммы
Слайд 3Разрешение вызова происходит в зависимости от значения поля C в дескрипторе сегмента
Разрешение вызова происходит в зависимости от значения поля C в дескрипторе сегмента

вызываемого кода. При C=0 вызываемый сегмент не считается подчиненным, и вызов разрешается, только если уровень прав вызывающего кода не меньше уровня прав вызываемого сегмента. При C=1 вызываемый сегмент считается подчиненным и допускает вызов из кода с любым уровнем прав доступа, но при выполнении подпрограмма наделяется уровнем прав вызвавшего кода.
Формат дескриптора шлюза вызова подпрограммы
Слайд 4Вызов подпрограммы через шлюз вызова
Вызов подпрограммы через шлюз вызова

Слайд 5Если вызывается подпрограмма, имеющая другой уровень привилегий, то из текущего стека в
Если вызывается подпрограмма, имеющая другой уровень привилегий, то из текущего стека в

стек уровня доступа вызываемого сегмента копируется столько 32-разрядных слов, сколько указано в поле счетчика слов дескриптора шлюза.
Очевидно, что первый способ непригоден для вызова функций операционной системы, имеющей обычно нулевой уровень прав, из пользовательской программы, работающей, как правило, на третьем уровне. Поэтому процессор i386 предоставляет способ вызова подпрограмм, основанный на том, что заранее определяется набор точек входа в привилегированные кодовые сегменты, и эти точки входа описываются с помощью специальных дескрипторов - дескрипторов шлюзов вызова подпрограмм. Этот дескриптор принадлежит к системным дескрипторам, и его структура отличается от структуры дескрипторов сегментов кода и данных . При вызове кодов, обладающих различны-ми уровнями привилегий, возникает проблема передачи параметров между различными стеками, так как для надежной защиты задачи различного уровня привилегий имеют различные сегменты стеков. Селекторы этих сегментов хранятся в контексте задачи - сегменте TSS (Task State Segment).
Очевидно, что первый способ непригоден для вызова функций операционной системы, имеющей обычно нулевой уровень прав, из пользовательской программы, работающей, как правило, на третьем уровне. Поэтому процессор i386 предоставляет способ вызова подпрограмм, основанный на том, что заранее определяется набор точек входа в привилегированные кодовые сегменты, и эти точки входа описываются с помощью специальных дескрипторов - дескрипторов шлюзов вызова подпрограмм. Этот дескриптор принадлежит к системным дескрипторам, и его структура отличается от структуры дескрипторов сегментов кода и данных . При вызове кодов, обладающих различны-ми уровнями привилегий, возникает проблема передачи параметров между различными стеками, так как для надежной защиты задачи различного уровня привилегий имеют различные сегменты стеков. Селекторы этих сегментов хранятся в контексте задачи - сегменте TSS (Task State Segment).
Слайд 6Как и в случае вызова подпрограмм, имеется две возможности вызова задачи -
Как и в случае вызова подпрограмм, имеется две возможности вызова задачи -

непосредственный вызов через указание селектора сегмента TSS нужной задачи в поле команды CALL и косвенный вызов через шлюз вызова задачи. Как и при вызове подпрограмм, непосредственный вызов возможен только в случае, если вызывающий код обладает уровнем привилегий, не меньшим, чем вызываемая задача. При вызове через шлюз (который может располагаться и в таблице LDT) достаточно иметь права доступа к шлюзу.
- Предыдущая
Двигатели постоянного тока Следующая -
Оптические спектры твердых тел
Образ Снегурочки в музыке, живописи, литературе
особенности развития детей дошкольного возраста
Can we color code these dots to show which one is buyer, target, etc
Футбол в школе 2020-2021 гг. ГБОУ СОШ с. Богдановка Нефтегорский район Самарская область
Приспособление повышает эффективность
Презентация на тему "Компьютер в школе: за и против" - скачать презентации по Педагогике
Тестирование школьников 9-11 классов
Они изменили мир
Проект создания информационно-аналитического Интернет-портала регионального масс-медийного комплекса
Презентация на тему Беркут
THIS IS HOW WE LEARN IRREGULAR VERBS Useful tips
Презентация на тему Русская литература 20-х гг.
Электроснабжение. Мероприятия по развитию сети и системы в рамках реализации перспективных проектов
Градостроительство и архитектура городов Китая
Моделирование лица. Визажист
Колибірлеудің Қазақстандық жүйесі
12 апреля –День космонавтики
Концептуальні основи логістики послуг
Создание системы воспитательных мероприятий, позволяющих обучающемуся осваивать и на практике использовать полученные знания
Ambient MediaПредложение по размещению на нестандартных носителях
Культура и культурология. Создание образа
Экологическая газета Ecological Newspaper
Де Бари
Упражнения по логике
Международный проект Территория победы
Маркетингова політика розподілу
Qatar airways
Афоризм