Задать вопрос
@Catmengi
Зачем я это делаю? Просто потому что

Есть ли смысл в handles вместо сырых указателей для аллокации памяти в embedded устройствах?

Начну с небольшой предыстории, я хочу сделать КПК-подобное устройство на базе esp32s3 с поддержкой загрузки внешних приложений и многозадачностью, Т.к. в моей esp32s3 всего 8мб озу и нет виртуальной памяти + многозадачность + внешние приложения остро встает проблема фрагментации кучи. В теории можно использовать статическую память в приложениях но тогда ОЗУ может забиться очень быстро, поэтому появилась идея использовать handles вместо сырых указателей для работы с кучей как это делали классическая macOS, palmOS и 16 битные версии windows, т.к таким образом система имеет возможность передвинуть память в куче даже без поддержки виртуальной памяти. Но имеет ли смысл такой подход на esp32s3 с 8мб озу? Я знаю про сложность программирования с хэндлами вместо традиционного malloc/calloc (лично для меня это не будет большой проблемой, и вряд-ли это будет устройство под которое найдутся другие разработчики). И я вижу еще 1 плюс в использование handles, в них можно хранить метаданные об объекте, например его размер и тому подобное
  • Вопрос задан
  • 358 просмотров
Подписаться 2 Средний 12 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы