Определить конфигурацию машины с помощью кода

Я пишу программу, где мне нужно знать о конфигурации машины. Код будет запущен в Linux. Я хочу найти следующее:

  1. Количество ядер процессора
  2. Количество гнезд CPU
  3. Количество дисков
  4. Если это процессор с 4 гнездами, то два гнезда расположены рядом друг с другом

Предоставляет ли Linux эту информацию в каком-либо файле, который я могу прочитать, чтобы получить эту информацию?

Каковы некоторые хорошие ресурсы для чтения о таких внутренних функциях Linux?

 Does Linux expose this information in some file that I can read in to get this information? 1. Number of CPU Cores 2. Number of CPU Sockets 3. Number of Disks 4. If it's a 4 socket processor then which 2 sockets are adjacent to each other 

Да, информация о CPUs и Disks доступна в Linux.

/proc/cpuinfo содержит подробную информацию о CPU .

 eg cat /proc/cpuinfo 

Команда sudo fdisk -l предоставляет список дисков и их соответствующую информацию.

Эта ссылка содержит некоторые особенности в отношении /proc/cpuinfo .

Эта ссылка объясняет использование и выход sudo fdisk -l .