RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > Брр. А ты чего хотел? > > Объяснения: для чего защитная страница, если не для защиты от переполнения стека :) > > Это защита от выхода за границу диапазона адресов. В частности - от выхода за границу стека. > > > > Еще раз - guard page можно использовать для отлавливания выхода за границу массива. > > Нельзя, т.к. эта фишка предполагает, что "мы будем двигаться маленькими шажками" (ц) "А как же Боб". > > Защитных страниц может быть более одной. Маленькие шажки - это относится только к стеку. По одной простой причине - приложение не может само чинить свой стек. Обработчику исключений приложения однако надо хоть чуть-чуть своего стека иметь. Поэтому стек - это такой особенный случай, обрабатываемый OS. > На который никто не мешает забить и стек целиком закоммитить. > > > Этого, вообщем-то, нельзя гарантировать и для стека (требование проб) и уж совсем нельзя - для массива, хождение по которому определяется алгоритмом и/или данными. > > Если прога за границу своего массива вылетает на пару мегабайт, то ей ничего не поможет. Ну и фиг с ней. А вот стандартные ошибки +1/-1 вполне можно выловить. > > Все вышеперечисленное никак не дает обоснования необходимости помещения стека в отдельный сегмент. Ну получил GP вместо PF - чем оно лучше?
__, _,_ __, _,_ _,
|_) | | | \ | / /_\
| \ | | |_/ |/ | |
~ ~ `~' ~ ~ ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.