El comando free también nos da información de cuanta memoria se esta dedicando a caches, buffers y memoria compartida.
La cache es utiliza para guardar temporalmente información que esta en los dispositivos de I/O que pueden volver a necesitarse. Linux intentará utilizar el máximo de memoria física para este concepto ya que cuanto más tenga más posibilidades de que algo que se le pida de nuevo lo tenga ya en las caches. Automáticamente hará las caches más pequeñas si la memoria es necesitada por las aplicaciones.