В системе Linux, используя программу C++, мне нужно найти способ распечатать следующую информацию:
Может ли кто-нибудь помочь мне в том, как добиться этого?
Спасибо.
Вы можете использовать файловую систему proc (5) (она специфична для Linux). Вы можете читать последовательно /proc/meminfo
и /proc/version
(эти псевдо файлы должны читаться последовательно, и они бывают быстрыми, не включая любой диск IO). Вы также можете использовать uname (2) для версии ядра.
Если вы хотите запросить о виртуальной памяти для своего собственного процесса, используйте /proc/self/maps
Если вам нужна информация, связанная с malloc (3), используйте malloc_info (3), mallinfo (3), malloc_stats (3) ,...
Комментарий mlwn также упоминает правильно sysconf (3)
См. Также linuxatemyram. И прочитайте Advanced Linux Programming
Можно ограничить используемую (или доступную) память, см. Этот ответ. Используйте getrlimit (2), чтобы запросить ограничения ресурсов.
PS.Ваше упоминание о количестве используемой памяти очень неоднозначно !Обратите внимание также, что системные вызовы (2) не совпадают с системой (3)
standard c
вместоc++
?