PCI에 대해 배우고 있으며 내 컴퓨터의 장치 유형을 알고 싶습니다. lspci -x
구성 공간이 표시되지만 어떤 것이 헤더 유형인지 알 수 없습니다. 도와주세요
답변1
오른쪽으로 가면 lspci -x
구성 공간의 표준 부분에 대한 표준 16진수 덤프가 표시됩니다. 이 중 첫 번째 줄(256바이트)만 필요합니다.PCI 장치 구조내가 찾은 것https://wiki.osdev.org/PCI
단일 장치에 대해 이 데이터를 추출하려면 다음을 수행할 수 있습니다.
lspci -x | grep "00: \|\." | while read -r line ; do
if [[ "$line" == *"."* ]]; then
echo $line
else
header_type=`echo $line | cut -d ' ' -f16`
bin=`echo "obase=2; ibase=16; $header_type" | bc | rev`
printf "%08d\n" $bin
fi
done
15번째 바이트를 추출해서 바이너리로 변환하고 반전시켰습니다.
도움이 되었기를 바랍니다