The cache in free-m represents the number of page cache allocated by the system but not used, so how to calculate the number allocated and used by the system?

such as the title. Many articles on
about the command free-m have mentioned the difference between cache and buffer, but the word cached is very confusing. At first I thought it was page cache, that was already used, but in fact cached/buffers refers to memory allocated by the system but not used. So which part of page cache is allocated and used? (I don"t know if you understand what I mean by this sentence, cached literally means cached, but actually the explanation is unused)

then the figure is as follows: free-m

         total       used       free     shared    buffers     cached

Mem: 32108 31874 233 0 7 12426
-/ + buffers/cache: 19440 12668
Swap: 0 000

this is a situation in my system. The total memory is 32 gigabytes.

12426 is allocated unused, so the used-cached-buffers in the first line should be equal to the cache assigned and used by the application using the mem+ system. Suppose I have a 16G application running on this machine, then the part of my page cache that is used also accounts for
31874 (os used)-7 (buffer)-12426 (cached)-16384 (app) = 3057

.

I don"t know if my understanding is correct

.
Jun.23,2021
MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1e82a30-bef.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1e82a30-bef.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?