Неуправляемый код по определению не управляется CLR.Он не будет преобразован в CIL, и CLR не будет ни выделять, ни управлять памятью для него.Это происходит только для управляемого кода.
Когда вы пишете неуправляемый код в сборке .NET, вы указываете компилятору и среде выполнения, что вы хотите взять дело в свои руки.Вы отвечаете за управление памятью, как если бы вы писали собственный код.