i have studied that for process to communicate with each other they need to keep their critical region in shared memory,so that other process which needs access to that can use it,using different variables for mutual exclusion,like semaphore and lock.
but where is this shared memory located,is that the same shared memory /dev/shm that we see when we do df -h.Sometimes /dev/shm is using some space sometimes not.why is it so.