-
- Не понял. Я такую штуку делал для бутлоадера. В .s файле, линкуемом в самом начале бинарника (посредством .ld) было написано dw program_start, dw program_end. Как раз для последующего вычисления размера по "заголовку" программы. - fk0(30.06.2014 13:58)
- +1. Такой способ выглядит кошернее. - SciFi(30.06.2014 14:26)
- Что именно вы не поняли? Молодой коллега(317 знак., 30.06.2014 14:20)
- Да, зарезервировать адрес. Можно и в C, но это попросту сложней. Конечный будет известен после. А что тут такого. Многие адреса переменных, например, тоже будут известны после. Для того после размещения в памяти линкер пробегается по списку fk0(79 знак., 30.06.2014 14:23)
- Вопрос изначально был не про зарезервировать место, тут проблем нет, а про то как в это зарезервированное место вставить адрес последнего байта прошивки. Разве линкер это позволяет? Молодой коллега(21 знак., 30.06.2014 16:12)
- gcc точно умеет. Помнится, яр был ничем не хуже, а местами лучше, чем gcc. - SciFi(30.06.2014 16:17)
- Вопрос изначально был не про зарезервировать место, тут проблем нет, а про то как в это зарезервированное место вставить адрес последнего байта прошивки. Разве линкер это позволяет? Молодой коллега(21 знак., 30.06.2014 16:12)
- Да, зарезервировать адрес. Можно и в C, но это попросту сложней. Конечный будет известен после. А что тут такого. Многие адреса переменных, например, тоже будут известны после. Для того после размещения в памяти линкер пробегается по списку fk0(79 знак., 30.06.2014 14:23)
- Не понял. Я такую штуку делал для бутлоадера. В .s файле, линкуемом в самом начале бинарника (посредством .ld) было написано dw program_start, dw program_end. Как раз для последующего вычисления размера по "заголовку" программы. - fk0(30.06.2014 13:58)