Цитата Сообщение от Vitamin
это означает что нижнюю память надо отдать на растерзание резидентам и приложениям. иными словами, не система будет управлять приложениями, а приложения системой. нехорошо....
Без полноценной аппаратной защитной памяти невозможно полноценно реализовать архитектуру юниксов. Значит, следует смотреть в сторону других архитектур операционных систем.
Цитата Сообщение от Vitamin
предположим. разумеется, что цикл будет короче чем освобождение всех блоков. при периодичной проверке выигрыш будет или нет?
Ну, может быть и так и сяк.
В типичных случаях сборщик мусора скорее всего будет проигрывать по суммарной скорости. Однако, есть и другие факторы.
Цитата Сообщение от Vitamin
в контексте "забыл убрать- начались потери" оба метода абсолютно равнозначны. потому что можно постоянно выделять блоки и забывать обнулять указатели и память будет именно систематически утекать. все больше и больше...
Для того, чтобы память систематически утекала со сборщиком мусора, необходимо специально весь мусор связывать в список, чтобы мусор оставался живым. Однако, "против" такого традиционный распределитель тем более "не поможет".

Если же, например, циклически выделять и не освобождать память на имя глобального указателя, то традиционный распределитель ничего не сможет поделать. Сборщик же мусора, не обраружив ссылок на предыдущие выделенные блоки, сможет прибрать их.
Цитата Сообщение от Vitamin
не факт. просто проверяем- принадлежит ли освобождаемая память свободному блоку. с чем может быть проблема- это контроль на правильность длин освобождаемых блоков (выделили столько а освобождаем другой объем).
Ну конечно, при каждом запросе на освобождение проверять весь список занятых блоков - тоже вариант.
Цитата Сообщение от Vitamin
то, что на системном уровне сборщик будет только на уровне процессов- однозначно.
Неоднозначно.
См. выше. Сборщик мусора вообще может располагаться ниже, чем планировщик процессов.
Цитата Сообщение от Vitamin
а вот менеджер кучи может быть ЛЮБЫМ. в том числе и со сборщиком.
Да, именно так.
Сборщику мусора совершенно ни к чему работать на вытесняющей многозадачности параллельно с другими, обслуживаемыми им, задачами. Он может работать только при исчерпании памяти при вызове NEW(), в рамках этой процедуры.
Цитата Сообщение от Vitamin
хотя бы потому что спецификация на большинство ЯВУ требует наличия функции освобождения памяти
Так ведь у нас пока не так уж много реализовано этих самых ЯВУ.
Цитата Сообщение от Vitamin
а в сборщике такого нет. как говорится, убрать мы всегда сумеем!
Можно сначала сделать, а потом убрать, а можно сразу сделать сборщик мусора. Тогда и делать а потом убирать ничего не придётся.