ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
18 мая
123091 Топик полностью
abivan (16.06.2008 10:17, просмотров: 343) ответил Evgeny_CD на Размышлизма о вреде вытесняющей многозадачности.
Так проблема с кучей, или где? >мы вынуждены будем переключить задачи. Что даст нам неприятность в виде >нескольких кадров под стек задач, и бардак в куче, ибо новая задача >может затребовать память, ей выделят ее, потом отработает вытесненная >ранее задача, она освободит память, но куча уже будет фрагментирована. >Дефрагментация кучи - тоска для малоресурсных систем. Для больших, >заметим, это тоже фундаментальная проблема. А не нужно ее фрагментировать, тогда и дефрагментировать не придется. Пишется свой dms, состоящий из n связных списков кратных степени 2-ки. У меня(pic18) от 16 байт до 512. ф-я Alloc находит незанятый блок в списке, он как правило сверху или запрашивает блок у кучи ф-ей malloc. ф-я Free ставит пометку свободен на блоке в списке, куче память не отдается.