Я только начал работать над VxWorks. В настоящее время я работаю над следующим: -
Мне нужно создать структуру, которая будет включать обработку исключений и управление памятью (например, обнаружение использования нулевого указателя). В общем, это будет похоже на уровень абстракции над операционной системой. Эта структура будет в форме загружаемого модуля ядра. Модульные тесты (также DKM) будут основаны на этой структуре.
Я хочу манипулировать обработчиками исключений и обрабатывать их самостоятельно, но я не знаю как.
Компонент ED & R должен быть настроен с образом ядра для работы с определенными API (если я правильно понимаю), но если это DKM, который уже находится в пространстве ядра, он не имеет полного доступа к памяти (ОЗУ, постоянная память) и, следовательно, может напрямую получить доступ?
Можете ли вы дать мне некоторые рекомендации относительно того, как мне следует идти к достижению моей цели?
В настоящее время, когда возникает исключение, после отображения некоторых деталей задача останавливается, и я получаю приглашение отладить модуль. После этого, чтобы увидеть дамп ядра, я использую команду edrShow.
Что я хочу сделать, так это избавиться от приглашения отладки, и после того, как задача остановится, отобразить дамп ядра пользователю без необходимости явного ввода команды.
Я заглянул в edrStub.c (метод edrKernelFatalPolicyHandler), но мне не удалось понять, как манипулировать им, чтобы получить желаемый результат.