Я хочу для расчета временного объема дискового пространства, используемого приложением в ГБ
. В общем, вы не можете этого сделать. Однако вы можете использовать du(1), df(1) (возможно, используя system(3) или popen(3) изнутри вашего приложения).
Кстати, вы не определяете временный объем дискового пространства. Это связано с tmpfile(3) или mkstemp(3)? Или open(2) с
O_TMPFILE
?(на самом деле определить точно временный объем дискового пространства не просто; как только вы это сделаете, вы сможете получить лучший ответ)
Может быть, вы хотите измерить размер временных файлов в каком-то процессе, выполняющем ваше приложение (то есть тех файлов, которые имеют открытый файловый дескриптор, но чье имя было
unlink
-ed из своего каталога). Тогда читайте больше о proc(5). Из внутри вашего приложения рассмотрите возможность использования/proc/self/fd/
(вы можете opendir(3), readdir(3) ,closedir
это и т. д.). Из вне вашего приложения, если его процесс 1234, рассмотрите возможность использования/proc/1234/fd/