Исследования возможностей безопасной реализации широко распространенных языков программирования C и C++, средствами которых можно нарушить их модульную и объектную защищенность.
Работа посвящена исследованию возможностей безопасной реализации широко распространенных языков программирования C и C++, средствами которых можно нарушить их модульную и объектную защищенность. На основе анализа семантики этих языков показано, что для обеспечения безопасной и при этом эффективной реализации необходима определенная поддержка со стороны аппаратуры, операционной системы и систем языкового программирования – компиляторов, редакторов связи, отладчиков. Предлагаемая реализация обеспечивает полную и эффективную модульную защиту для обоих языков, а также защиту классов языка C++. Перенос реальных программ в среду безопасной реализации демонстрирует ее мощь при обнаружении скрытых ошибок исполнения.
Подробнее... Загрузить файл
Содержание:
Введение
1. Семантические основы безопасного программирования
1.1. Модули, интерфейсы и контекст
1.2. Контекстная защита
1.3. Защита объектов классов
2. Реализация среды безопасного программирования
2.1. Аппаратная поддержка
2.2. Поддержка в операционной системе
2.3. Поддержка в компиляторе и редакторе связей
3. Перенос программ в среду безопасной реализации языков программирования
3.1. Ошибки в программах
3.2. Опасная работа с указателями
3.3. Использование непереносимых свойств языка или его конкретной реализации
3.4. Проблемы переноса программ на C++
3.5. Положительные результаты переноса программ
4. Анализ подходов к обеспечению безопасного программирования
Заключение
Литература