¿Tengo una comprensión correcta del uso de memoria de los procesos?

Como ya tienes una buena respuesta, me quedaré con el bit de pérdida de memoria …

En cuanto a las pérdidas de memoria, desde la perspectiva del sistema operativo, la memoria no puede tener pérdidas (a menos que el sistema operativo tenga una pérdida, lo cual es posible pero raro, aunque las “aplicaciones del sistema” pueden tener pérdidas). La memoria solicitada por los procesos simplemente se agregaría a la memoria de proceso, por lo que si hay una fuga en el proceso, su memoria asignada que aparece en el comando “mostrar procesos” (administrador de tareas en Windows, ps -ef en Linux) simplemente se haría más grande y más grande (que es una manera de saber si algo tiene una pérdida de memoria si no puede conectarle un detector de pérdida de memoria).

Pocos sistemas operativos realmente admiten procesos que liberan RAM de nuevo al sistema operativo una vez que lo han reclamado, por lo que “poseerán” cualquier RAM solicitada hasta que salgan. El par “malloc () / free ()” simplemente asigna (con sbrk () en Unix / Linux) y administra la memoria de forma privada, con muy pocas excepciones, free () en realidad no libera RAM, solo lo hace disponible para reutilizar dentro del proceso.

Cerca. Recuerda que el núcleo va a tomar un montón. Y luego, gracias al pequeño milagro de la memoria virtual y la paginación de demanda, puede mantener una cierta cantidad de espacio de direcciones de proceso en la RAM y algo en el disco. Pero el espacio de direcciones real utilizado por los procesos puede superar con creces los (ahora insignificantes) 256 MB que menciona. No sería del todo sorprendente tener muchos GB de datos adicionales que ya se habían paginado.

Sí. Como dice Tony, el sistema operativo en sí toma un poco. También hay algunos procesos auxiliares. Además, puede exceder con el uso de memoria virtual.

Realmente no. Una pérdida de memoria es un error de programación. Los programas no los causan intencionalmente *. El concepto que está describiendo es similar a la búsqueda de memoria.

* Excepto quizás software malicioso.