2014-12-28 2 views
0

У меня есть foo[NUMBYTES] __attribute__((section(".bar")));Зачем использовать __attribute__ (раздел) для некоторого выделения памяти?

Зачем использовать этот атрибут .bar раздел? Поскольку foo [] предоставляет уже некоторое пространство памяти. Это для удобства управления памятью?

ответ

1

Для голого металла кода, которые работают без операционной системы, атрибута раздела, __attribute__((section(".bar"))), часто используются для:

  • Места символов (данные или функций) в специальной области памяти, такие как RAM , FLASH или EEPROM, встроенные в микроконтроллеры.
  • Поместите символы по специальному адресу, например. размещение таблицы векторов прерываний в начале FLASH для процессоров ARM Cortex-M.
  • Постоянно связанные с группой символы, например. код инициализации групп ядра Linux, который требуется только при загрузке вместе (см. init section в linux/init.h), поэтому он может освободить их позже, чтобы сохранить RAM.

Поиск сценария компоновщика для ссылок на именованный раздел (.bar), и вы, вероятно, могли бы сделать хорошее предположение для его использования.

 Смежные вопросы

  • Нет связанных вопросов^_^