Я работаю над программным обеспечением для управления устройством mmap'd во встроенной системе ARM, но столкнулся с несколькими ситуациями, когда доступных средств отладки и разработки было недостаточно. то есть инструментальные средства, такие как valgrind и профилировщики резьбы более высокого уровня, недоступны.
То, что я хотел бы сделать, это скомпилировать мой код на компьютере с архитектурой x86, отобразить «фиктивный» сегмент памяти, используя тот же размер, и затем передать эти операции чтения / записи по сети на встроенный компьютер, который затем мог бы соответственно реагировать .
Я понимаю, что это, вероятно, потребует механизма клиент / сервер и будет мучительно медленным, но преимущества этой опции сделают механизм вне самого интерфейса mmap (обработка асинхронных событий, управление потоками) доступным для инструмента, использующего разработку x86 инструменты были бы очень полезны.
Я слышал об этой технике в некоторых разработках ASIC для моделирования, но никогда не использовал ничего, что обеспечивало бы эту функциональность. Ключевым моментом здесь является то, что я хочу использовать один и тот же код на обеих платформах без необходимости переписывать кучу вещей или писать модуль ядра, в котором есть какая-либо логика обработки оборудования. Я хочу сохранить всю логику управления устройством в userland через mmap