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/ |