>>Переносимым (POSIX) способом никак.
>Спасибо :-(
Проще решается обратная задачка - найти все открытые файлы,
так как в "обычной" системе их существенно больше неоткрытых.
Точно не скажу, но /proc/<pid>/fd вроде бы много где есть.
По крайней мере точно видел его в Linux, Solaris и Tru64.
И если мне память не изменяет, по файликам в этих каталогах
можно определить _что_ именно открыто. Не уверен, правда, что
именно вот в этой части будет портабельно.
Дальше нужно циклически раскрыть символьные ссылки (если таковые
в полученных именах встретятся). Тем самым получен полный список
файлов, открытых неким процессом. Дальше - проще: перебрать все
процессы, постоянно расширяя списочек. Итого - полный список всех
открытых файлов. Осталось только "вычесть" его из полного списка
файлов :). А вообще занятие не очень полезное для душевного
здоровья :)