getInfo 2.22.0

This commit is contained in:
kyodev 2017-11-02 05:22:23 +01:00
parent fd992b21fc
commit c7dfefee9f
2 changed files with 53 additions and 34 deletions

View File

@ -1,7 +1,7 @@
#!/bin/bash
version=2.21.10
date="31/10/2017"
version=2.22.0
date="02/11/2017"
projet="simpledeb"
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues/"
script="getInfo"
@ -1243,7 +1243,7 @@ figet_batt(){ #v2 01/11/2017
# assigne $fg_cpu (3 lignes description cpu), fg_nb_threads, $fg_cpu_arch, $fg_codename
figet_cpu(){ #v2 01/11/2017
local cpuinfo speedNom speedMax speedMin speedCpu cpu1 cpu2 cpu3 var_temp model
local cpuinfo speedNom speedMax speedMin speedCpu cpu1 cpu2 cpu3 var_temp vendor family model
cpuinfo="$(cat /proc/cpuinfo)"
# speed
speedNom=$(gawk -F ':' '/cpu MHz/ {printf "%.2f", $2/1000;exit}' <<< "$cpuinfo")
@ -1255,7 +1255,8 @@ figet_cpu(){ #v2 01/11/2017
[[ "$speedMax" && "$speedMax" != "$speedNom" ]] && speedCpu+="/$speedMax"
[ "$speedCpu" ] && speedCpu=$(printf "%sGHz" $speedCpu)
[ "$speedCpu" ] || speedCpu=$(gawk -F '@' '/model name/ {sub(/^ | $/,"",$2); print $2;exit}' <<< "$cpuinfo")
# motifs?: Processor Dual-Core Quad-Core Six-Core Eight-Core Core 'with Radeon * Graphics'
# motifs?: Processor Dual-Core Quad-Core Six-Core Eight-Core Core 'with Radeon * Graphics'
# traitement fg_cpu
cpu1=$(
gawk -v "speedCpu=$speedCpu" -F ':|@' '
/^model name/ { gsub(/^ | *$|\(R\)|\(TM\)|\(r\)|\(tm\)|CPU/,"",$2); gsub(/ /," ",$2); cpu=$2 }
@ -1285,36 +1286,50 @@ figet_cpu(){ #v2 01/11/2017
)
fg_cpu=$(echo -e "$cpu1\n$cpu2\n$cpu3")
fg_nb_threads=$(grep -c '^processor' <<< $cpuinfo)
# arch processeur
[ $(grep -cm1 'flags.* lm ' /proc/cpuinfo) -ge 1 ] && fg_cpu_arch="64bits" || fg_cpu_arch="32bits"
# intel
if [[ "$(grep -m1 '^vendor_id' /proc/cpuinfo)" =~ Intel ]]; then
var_temp=$(grep -m1 '^model' /proc/cpuinfo)
var_temp=${var_temp#*: } # extraction valeur
model=$(printf 0x"%.2X" $var_temp)
#model, arch codename, techno
[ "$model" == "0x3A" ] && fg_codename="Intel IvyBridge 22nm"
[ "$model" == "0x2A" ] && fg_codename="Intel SandyBridge 32nm"
[ "$model" == "0x2D" ] && fg_codename="Intel SandyBridge 32nm"
[ "$model" == "0x25" ] && fg_codename="Intel Westmere 32nm"
[ "$model" == "0x2C" ] && fg_codename="Intel Westmere 32nm"
[ "$model" == "0x2F" ] && fg_codename="Intel Westmere 32nm"
[ "$model" == "0x1E" ] && fg_codename="Intel Nehalem 45nm"
[ "$model" == "0x1A" ] && fg_codename="Intel Nehalem 45nm"
[ "$model" == "0x2E" ] && fg_codename="Intel Nehalem 45nm"
[ "$model" == "0x17" ] && fg_codename="Intel Penryn 45nm"
[ "$model" == "0x1D" ] && fg_codename="Intel Penryn 45nm"
[ "$model" == "0x0F" ] && fg_codename="Intel Merom 65nm"
[ "$model" == "0x16" ] && fg_codename="Intel Merom 65nm"
[ "$model" == "0x06" ] && fg_codename="Intel Presler 65nm"
[ "$model" == "0x03" ] && fg_codename="Intel Prescott 90nm"
[ "$model" == "0x04" ] && fg_codename="Intel Prescott 90nm"
[ "$model" == "0x0D" ] && fg_codename="Intel Dothan 90nm"
[ "$model" == "0x36" ] && fg_codename="Intel Atom 32nm"
[ "$model" == "0x26" ] && fg_codename="Intel Atom 45nm"
[ "$model" == "0x1C" ] && fg_codename="Intel Atom 45nm"
# [ "$fg_codename" ] || fg_codename="codename inconnu"
fg_codename+=" ($model-$var_temp)"
fi
# traitement µarchitecture
vendor=$(grep -m1 '^vendor_id' /proc/cpuinfo) # family cpuinfo
vendor=${vendor#*: } # extraction valeur family
var_temp=$(grep -m1 '^cpu family' /proc/cpuinfo) # family cpuinfo
var_temp=${var_temp#*: } # extraction valeur family
family=$(printf "%.2X" $var_temp) # conversion hexa
var_temp=$(grep -m1 '^model' /proc/cpuinfo) # model cpuinfo
var_temp=${var_temp#*: } # extraction valeur model
model=$(printf "%.2X" $var_temp) # conversion hexa
case ${vendor,,} in
*intel*)
case $family in
05 | 0F) fg_codename="Intel ancienne famille non répertoriée";;
06)
case $model in
01 | 07 | 08 | 0A | 0B | 0E) fg_codename="Intel ancien produit non répertorié";;
03 | 04 | 05) fg_codename="Intel Prescott 90nm";; # arch_x86
09 | 15 | 0D) fg_codename="Intel Dothan 90nm";; # arch_x86
06) fg_codename="Intel Presler 65nm";; # arch_x86
0F | 16) fg_codename="Intel Merom 65nm";;
17 | 1D) fg_codename="Intel Penryn 45nm";;
1A | 1E | 1F | 2E) fg_codename="Intel Nehalem 45nm";;
25 | 2C | 2F) fg_codename="Intel Westmere 32nm";;
2A | 2D) fg_codename="Intel Sandy Bridge 32nm";;
3A | 3E) fg_codename="Intel Ivy Bridge 22nm";;
3C | 3F | 45 | 46) fg_codename="Intel Haswell 22nm";;
3D | 47 | 4F | 56) fg_codename="Intel Broadwell 14nm";;
4E | 55 | 5E) fg_codename="Intel Skylake 14nm";;
8E | 9E) fg_codename="Intel Kaby Lake 14nm";;
# atom
26 | 1C) fg_codename="Intel Atom Bonnell 45nm";;
27 |35 |36) fg_codename="Intel Atom Saltwell 32nm";;
37 | 4A | 4D | 5A) fg_codename="Intel Atom Silvermont 22nm";;
4C | 5D | 5F) fg_codename="Intel Atom Airmont 14nm";;
* ) fg_codename="Intel non répertorié, issue à ouvrir";;
# Knights-series cores
0x57) fg_codename="Intel knights_landing";;
0x85) fg_codename="Intel knights_mill";;
esac ;;
esac ;;
esac
fg_codename+=" {0x$family|0x$model}"
}
figet_de(){ # thanks neofetch, assigne $fg_de #30/10/2017

View File

@ -3,9 +3,13 @@
* f__wcv
## 2.22.0 02/11/2017
nouveau: µarchitecture proc intel
## 2.21.10 01/11/2017
nouveau: codename proc intel, gadget
µarchitecture proc intel, beta
fix: figet_distrib, affichage distrib
## 2.21.7 31/10/2017