В статье "Управление памятью в сетевой подсистеме и ядре FreeBSD в целом [3]", ориентированной на системных администраторов и программистов, работающих с ядром FreeBSD, последовательно излагается от общего к частному, что есть память ядра, какими способами в ней выделяется память, каковы отличия выделения памяти в ядре от привычных malloc()/free() в пользовательских приложениях, что такое mbuf, какие инструменты доступны администратору для мониторинга и тюнинга.
Попутно затрагивается ряд смежных тем, например, отличия в организации памяти сетевой подсистемы от Linux, или ряд понятий, часто встречающихся в руководствах и howto в сети, но смысл которых в них не объясняется (keglim/zoneli, nmbclusters, отличия maxsockbuf от sendspace, как читать вывод диагностических утилит, и др.). Поскольку статья — введение в комплекс связанных обширных тем, она предполагает наличие некоторых базовых понятий (например, чем виртуальная память отличается от физической), и ввиду ограничений на объем не углубляется в некоторые специфичные вещи (типа packet secondary zone), особенно появившиеся не так давно.
Ссылки:
[1] http://htfl.ru/cat-news-freebsd
[2] http://htfl.ru/cat-news-novosti
[3] /out.php?link=http://nuclight.livejournal.com/129544.html