OSDev
http://osdev.su/

Сегменты или страницы?
http://osdev.su/viewtopic.php?f=5&t=421
Страница 3 из 3

Автор:  Yoda [ 21 июл 2011, 19:08 ]
Заголовок сообщения:  Re: Сегменты или страницы?

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

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

Автор:  SII [ 21 июл 2011, 20:44 ]
Заголовок сообщения:  Re: Сегменты или страницы?

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

Автор:  phantom-84 [ 21 июл 2011, 21:04 ]
Заголовок сообщения:  Re: Сегменты или страницы?

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

Автор:  Yoda [ 22 июл 2011, 20:57 ]
Заголовок сообщения:  Re: Сегменты или страницы?

SII писал(а):
Почитайте мануал от интела, приглядываясь к форматам строк таблиц переадресации, а также к управляющим регистрам.

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

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

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

Автор:  SII [ 22 июл 2011, 21:52 ]
Заголовок сообщения:  Re: Сегменты или страницы?

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

Страница 3 из 3 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/