когда /proc/cpuinfo начнет постоянно обновляться, особенно поле "cpu MHz"?

Хм. Я думаю, что я бы сделал цикл for по файлам и сравнил их с comm.

/tmp ❯ comm -3 <(cat file1.txt|awk '{print $2}') <(cat file2.txt|awk '{print $2}')                                    ⏎
30
30
    40
    40

Обратите внимание, что из файлов выводятся числа 30 и 40. Некоторое базовое использованиеcomm:comm -1 -3 <(sort -u FILE1.txt) <(sort -u FILE2.txt)

  • -1 подавлять строки, уникальные для ФАЙЛА1
  • -2 подавленные строки, уникальные для ФАЙЛА2
  • -3 скрытых строки, которые появляются в обоих файлах

Итак, чтобы собрать все это воедино что-то вроде:

cd /path/to/files && find. -type f -name "*.txt" | while read filename
do
   echo "*** Checking $filename ***"; comm -3 <(cat reference.txt|awk '{print $2}') <(cat $filename|awk '{print $2}'); echo "";
done
1
30.09.2020, 14:48
2 ответа

Это зависит от архитектуры процессора. Для x86 (32 -бит, он же i386 или 64 -, он же x86 _64, он же amd64 ), он был обобщен в ядре 2.6.16 , вышедшем в марте 2006 г. Патч , обобщающий его , некоторое время обсуждался и пересматривался.

В коде (для 32 -бит x86):2.6.16 вызывает cpufreq_quick_get, который ищет текущее значение для каждого ЦП.2.6.15 считывает глобальную переменную, которая обновляется только на некоторых процессорах и никогда не обновляется на многопроцессорных машинах.

2
18.03.2021, 23:01

Нет файла для обновления. Частота процессора меняется при его изменении.

«Файл» выглядит как файл, но не является файлом. :он не существует на диске или SSD. У него есть имя файла, содержимое (, так что это файл, а также каталог, ссылка sym -, жесткий диск -, последовательный порт -, … ). Обычно значения в /procгенерируются динамически всякий раз, когда они считываются.

1
18.03.2021, 23:01

Теги

Похожие вопросы