06. Кадр стека и системные вызовы

00:00:09 Введение в конвенции 00:01:22 Регистры и локальные переменные 00:03:13 Проблемы с модификацией стека 00:07:16 Кадр и его использование 00:10:07 Восстановление стека 00:12:31 Восстановление стека 00:13:52 Восстановление фрейм-пойнтера 00:17:10 Фрейм-пойнтеры как связанный список 00:18:51 Универсальность конвенции 00:21:53 Пример использования фрейм-пойнтеров 00:26:49 Инициализация фрейма 00:27:36 Восстановление фрейма 00:30:35 Важность фрейма 00:34:59 Конвенции и программирование 00:38:26 Динамическая компоновка 00:40:28 Изменения в документах 00:41:10 Плотность кода в микроконтроллерах 00:42:05 Конвенции в программировании 00:42:47 Правила видимости имен 00:44:03 Высокоуровневые языки программирования 00:45:58 Системные вызовы и системные вызовы 00:49:28 Операционная система и её задачи 00:50:44 Виртуализация и уровни выполнения 00:51:53 Системные вызовы и память 00:53:16 Поддержка многопоточности 00:54:42 Режимы ядра и пользователя 00:57:04 Обработка исключений 00:59:03 Домашнее задание 01:00:41 Введение в курс по разработке на низком уровне 01:02:07 Работа со строками в RARSE 01:03:12 Проблемы с длиной строк и память 01:04:08 Куча и виртуальная память 01:07:21 Выделение и освобождение памяти 01:09:16 Пример программы для выделения памяти 01:09:31 Подпрограмма для выделения памяти 01:10:14 Исправление ошибок в подпрограмме 01:11:19 Запуск программы и анализ адресов 01:13:09 Обсуждение кучи и фрагментации 01:15:13 Домашнее задание и тестирование 01:16:29 Эмуляция риск-файловой системы 01:19:24 Дизассемблирование функций 01:24:05 Заключение и анонс следующего занятия Источник:
В начало