```It can be seen from /proc/buddyinfo that the system memory is fragmented, with only a small number of higher order memory segments free, e.g.:
$ cat /proc/buddyinfo
...
Node 0, zone Normal 453952 173139 34818 12833 3094 1186 81 0 1 1 0
In the above example, it can be seen the system has 0 free blocks of the largest order and only 0-1-1 for the next larger order ones. So almost no memory segments larger than 256KB are available.
The content of /proc/buddyinfo as shown above show you the number of free memory chunks (see the last line labelled Normal). You have to read the numbers from left to right where the first column is order 0 = 4k, order 1 = 8k, order 2 = 16k, order 3 = 32k, order 4 = 64k, order 5 = 128k, order 6 = 256k, order 7 = 512k, order 8 = 1M, order 9 = 2M, order 10 = 4M. This is for a standard Linux system using 4KB standard memory block size.
The file /proc/buddyinfo is used primarily for diagnosing memory fragmentation issues. Using the buddy algorithm, each column represents the number of pages of a certain order (a certain size) that are available at any given time.
```
OSwatcher is running in the system and invoking /proc/pagetypeinfo every 10 minutes from the script:
$ cat /usr/libexec/oswatcher/pagesub
!/bin/sh
#
Copyright (c) 2020 by Oracle Corporation
pagesub.sh
This script is called by OSWatcher.sh. This script is the data
collector shell for pagetype. $1 is the output filename for the data
collector. $2 is the data collector shell script to execute.
$3 fixes timestamp date to be OSWg compliant.
#
if [ $3 != 0 ]; then
echo “zzz “'date ‘+%a %b %e %T %Z %Y’' >> $1
else
echo “zzz “'date' >> $1
fi
cat /proc/pagetypeinfo | sed -e ‘/Node.*DMA/d’ >> $1 # <<<<<<< THIS IS THE LINE IN CONCERN
rm locks/pagelock.file
This behaviour is a side effect of the heavier operational cost of invoking /proc/pagetypeinfo in a system with a high uptime (several hundred days) and with substantial memory fragmentation.
Oracle Linux System Stops Responding for a Brief Period Every 10 Minutes (Doc ID 2904485.1)