OSDev

для всех
Текущее время: 30 апр 2024, 09:20

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 25 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: Сегменты или страницы?
СообщениеДобавлено: 21 июл 2011, 19:08 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
phantom-84 писал(а):
Из-за того, что данные не могут исполняться? Так сейчас эта проблема решена и в пэйджинге. Кроме того, существуют методы защиты от исполнения данных в стеке на основе сегментов без отказа от FLAT-адресации и пэйджинга.

Кстати, как? Как раз хотел это сделать в своём страничном менеджере памяти.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сегменты или страницы?
СообщениеДобавлено: 21 июл 2011, 20:44 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Почитайте мануал от интела, приглядываясь к форматам строк таблиц переадресации, а также к управляющим регистрам. Там много чего нового по сравнению не только с 80386, но и со всякими там Пентиумами...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сегменты или страницы?
СообщениеДобавлено: 21 июл 2011, 21:04 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
См. No-Execute/Execute-Disable Bit. В 32-разрядных системах нужно использовать PAE. Если защита от исполнения на уровне страниц не поддерживается процессором или нет желания использовать PAE, то можно прикладные стеки размещать в конце user space и не покрывать эту область (и kernel space естественно тоже) прикладным кодовым сегментом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сегменты или страницы?
СообщениеДобавлено: 22 июл 2011, 20:57 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
SII писал(а):
Почитайте мануал от интела, приглядываясь к форматам строк таблиц переадресации, а также к управляющим регистрам.

Да я вечерами курю эти мануалы, куда же без них, родных :) Но уж больно они толстые :( прежде, чем поймёшь где копать, можно десять раз вспотеть, особенно с этими "новыми фичами", кодируемыми CPUIDами.

phantom-84 писал(а):
См. No-Execute/Execute-Disable Bit. В 32-разрядных системах нужно использовать PAE.

О! Вот он ключ! Пасиба.
А в системах без PAE можно просто забыть про защиту "no data execution", на самом деле, она хоть и приятная в плане надёжности и безопасности, но не необходимая (в плане функциональности ОС).

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сегменты или страницы?
СообщениеДобавлено: 22 июл 2011, 21:52 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Касательно памяти всё сосредоточено в паре глав третьего тома, так что объём сравнительно небольшой.
ПАЕ поддерживают все современные процессоры, так что включать можно смело. Ну а поддержку в ОС можно делать минимальную: без возможности реально выйти за пределы 4 Гбайт (соответствующим образом заполнять таблицы).


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 25 ]  На страницу Пред.  1, 2, 3

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB