no free memory but low total memory
The counter Memory Manager: Free Memory (KB) tells you below. Read the BOL document 


  Free Memory (KB): Specifies the amount of committed memory currently not used by the server.


So what this means is of all committed memory SQL Server is not using 40 MB of the memory. This is not telling you free memory on the SQL Server system. A committed memory is one that is backed by physical RAM. When a process starts it can address any physical memory address in its VAS but memory will only be committed if that VAS region is backed by physical memory.