До сих пор я всегда использовал ресурсы под MSVC ++ для получения доступа к необработанным данным из моих программ, и я никогда не работал напрямую с компоновщиком, но сейчас я работаю под Linux и использую перекрестный доступ. компилятор для создания эльфийских файлов. Мы с другом работаем над игрушечной ОС.
Одна вещь, которую нам нужно выполнить в какой-то момент, - это связать довольно большой кусок произвольных необработанных данных в исполняемый файл. Мы хотим, чтобы данные располагались ближе к концу исполняемого файла, и мы должны иметь возможность получить указатель на эти необработанные данные. Вероятно, стоит отметить, что GRUB загружает ядро в память во время загрузки.
Одна из наших предыдущих идей состояла в том, чтобы просто написать программу для преобразования данных в исходный файл C, где данные были представлены в виде массива байтов, но мы считаем, что это немного грязно, и мы предпочли бы, чтобы это было связано непосредственно.
Есть идеи? Мне не нужны ужасные подробности, просто широкий обзор того, что нужно сделать. Я полагаю, что мы, вероятно, должны внести некоторые изменения в наш скрипт компоновщика.