Перейти к содержанию
    

Целесообразность тестирования памяти и регистров

Интересно...., а контроль переполнения стека тоже относится к одному из видов фобий или есть какая нибудь целесеобразность?

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно выделить сразу буфер, для проверуи памяти. Сначала проверяете его, а потом..

А потом - суп с котом :) одна из массовых ошибок памяти это ошибки/сбои адресации а не данных - подзаписали не туда и все...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Плохо то, что без MMU невозможно контролировать переполнение стека абсолютно надежно, единственный способ - время от времени проверять положение указателя, особенно в процедурах, которые закопаны глубоко.

Можно контроллировать и без MMU. Во всяком случае детектить выход за границу можно. В ручную напр так:

Зарезервировать участок памяти перед стеком, заполнить каким-нить патерном, нагрузить программу работой "по самые нехочу", снять слепок памяти и посмотреть как глубоко залезли в резервную память.

 

Автоматически можно также, во многих случаях отдетектится переполнение до того как система зайдет в тупик.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А потом - суп с котом :) одна из массовых ошибок памяти это ошибки/сбои адресации а не данных - подзаписали не туда и все...

 

Предложите свой способ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

одна из массовых ошибок памяти это ошибки/сбои адресации а не данных - подзаписали не туда и все...

Ваш ответ однозначно понять не получается. снизойдите пожалуйста, и обясните разве данные не портачатся когда выделенная память испорчена? К примеру про стек, регистры содержат правильный индекс указатель на данные в стеке?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...