Читаю местами увлекательный документ «NASA Software Safety Guidebook». Документ содержит рекомендации по написанию безопасных программ. Тех самых, которые в космос летают. Чуть менее чем всё из того, что там написано применимо и для обычного софта.
Хотя есть и космический экстрим, конечно. Например, идет речь о мультипрограммировании (N-Version Programming). Одна и та же функциональность реализуется разными способами. Если разные версии возвращают одинаковый результат, то всё в порядке. Если результаты не совпадают, то используется голосование, чтобы определить какой результат наиболее достоверный. Для защиты от одного сбоя нужно написать три разных реализации; от двух – пять.
Read more…
Предыдущий пост про параметры функций вызвал на удивление много споров, так что я еще покручусь немного вокруг этой темы. Заранее прошу прощения у тех, кому эта тема оскомину набила. Итак, как следует проверять параметры функции? Вернее даже так, что нужно и, самое главное, что не нужно проверять?
Read more…
Статья полугодовой давности: CPU Virtualization Extensions: Analysis of Rootkit Issues. Анализируется степень опасности, которую могут представлять вирусы и прочее вредоносное программное обеспечение, использующие аппаратную поддержку виртуализации, как средство контроля над операционной системой. Интересны выводы:
Read more…
В MSDN добавили список “опасных” функций и рекомендуемых безопасных аналогов.
Read more…
64-х битные версии Vista требуют, чтобы весь код, выполняемый в режиме ядра, был подписан в обязательном порядке. Система просто отказывается загружать неподписанные драйвера. Для 32-х битных версий требования не такие жесткие, тем не менее, Microsoft рекомендует производителям подписывать и 32-х битные версии драйверов. Очевидно, что со временем это требование станет обязательным и для 32-х битных систем. Кроме того, наличие неподписанных драйверов в системе может влиять на возможность проигрывания HD контента (HD-DVD, Blue Ray & Co.).
Read more…
Recent Comments