Procesor a paměť
Rychlost procesoru a velikost operační paměti se nemalou měrou podílí na rychlosti celého počítače. První, na co se tedy můžeme ptát, je, jaký máme procesor a kolik máme operační paměti. První otázku nám zodpoví výpis cat /proc/cpuinfo
:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80GHz stepping : 10 cpu MHz : 1596.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 5576.18 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80GHz stepping : 10 cpu MHz : 1596.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 5571.99 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management:
Z výše uvedeného je např. vidět, že mám dva procesory - dvě jádra (0 a 1), které běží na frekvenci necelých 1.6 GHz (i když je výrobcem dané maximum nějakých 2.8 GHz, což je vidět v řádku model name
). Někoho mohou dál zajímat i značky (flags
), které nám říkají, jaké instrukce jsou procesorem podporovány.
Význam některých značek (flags) najdete např. v zápisku na Svoccblogu.
Druhou otázku zodpoví výpis free
nebo např. free -m
(pokud chcete mít hodnoty rovnou v MB).
total used free shared buffers cached Mem: 3958 1994 1964 0 0 1318 -/+ buffers/cache: 675 3283 Swap: 2957 50 2906
První řádek označuje celkovou (total
) velikost operační paměti (3958 MB) a na druhém řádku je zřejmě to nejdůležitější - velikost obsazené paměti, v našem případě 675 MB. To že systém o řádek výš ukazuje, že využil více paměti (celkem 1994 MB), ničemu nevadí, tato paměť se využívá jako paměť cache pro rychlé načítání a práci s programy a soubory. Poslední řádek pak značí velikost a využití swapu, tedy stránkovacího oddílu. V případě, že je swap příliš obsazen, chtělo by to dokoupit operační paměť počítače.
Ilustrační obrázek
První pohled na základní desku
Podobně jako vám lsusb ukáže informace o zařízeních připojených do portu USB, lspci ukazuje základní informace o čipech a kartách připojených na základní desce.
00:00.0 Host bridge: Intel Corporation 82G35 Express DRAM Controller (rev 03) 00:02.0 VGA compatible controller: Intel Corporation 82G35 Express Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation 82G35 Express Integrated Graphics Controller (rev 03) 00:19.0 Ethernet controller: Intel Corporation 82566DC Gigabit Network Connection (rev 02) 00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 02) 00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 02) 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 02) 00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 02) 00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 02) 00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev f2) 00:1f.0 ISA bridge: Intel Corporation 82801HB/HR (ICH8/R) LPC Interface Controller (rev 02) 00:1f.2 IDE interface: Intel Corporation 82801H (ICH8 Family) 4 port SATA IDE Controller (rev 02) 00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02) 00:1f.5 IDE interface: Intel Corporation 82801H (ICH8 Family) 2 port SATA IDE Controller (rev 02) 03:00.0 IDE interface: JMicron Technologies, Inc. JMB368 IDE controller 04:05.0 FireWire (IEEE 1394): Agere Systems FW323 (rev 70)
I když je výpis na první pohled trochu obsažný až složitý, naleznete zde informace o vaší grafické kartě (řádek VGA
případně Display
), v mém případě to je integrovaná grafika Intel 82G36, informace o síťové kartě (řádek Ethernet
), zde je vidět, že se jedná o kartu s maximální rychlostí přenosu 1 Gb/s, dále se na výpisu ojevuje zvuková karta (řádek Audio
), opět integrovaný Intel. Konečně někoho může zajímat řádek IDE
, který označuje řadič pevného disku, a pro mě je zase zajímavý poslední řádek s textem FireWire
, který mě informuje o tom, že je k dispozici také tento port (ať už fyzicky přímo vyvedený vzadu na počítači, nebo pouze připravený na základní desce pro připojení kabelem).
Chcete vědět víc? Zadejte dotaz ve tvaru lspci -n
a jeho výstup vložte na adrese kmuto.jp/debian/hcl. Zobrazí se vám další informace, zároveň se také můžete podílet na jejich doplnění či přidání.
Druhý pohled (nejen) na základní desku
Bez základní desky by to nešlo, to už je dáno tím slovem základní. ;-) Často potřebujeme zjistit její označení, výrobce, verzi BIOSu a další důležité informace, které nám pomohou volit ty správné komponenty např. v případě upgradu počítače. Jeden z mnoha nástrojů, který vám tyto informace poskytne, je program hwinfo
. Rychlý pohled na hardware počítače zjistíte zadáním hwinfo --short
.
Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80GHz, 1596 MHz Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80GHz, 1596 MHz keyboard: /dev/input/event1 AT Translated Set 2 keyboard mouse: /dev/input/mice Macintosh mouse button emulation /dev/input/mice ImPS/2 Generic Wheel Mouse monitor: Generic Monitor graphics card: Intel 965G-1 Intel 82G35 Express Integrated Graphics Controller sound: Intel 82801H (ICH8 Family) HD Audio Controller storage: Intel 82801H (ICH8 Family) 4 port SATA IDE Controller Intel 82801H (ICH8 Family) 2 port SATA IDE Controller JMicron JMB368 IDE controller network: eth1 Intel 82566DC Gigabit Network Connection network interface: lo Loopback network interface eth1 Ethernet network interface teredo Network Interface vboxnet0 Ethernet network interface disk: /dev/block/8:0 WDC WD5001AALS-0 partition: /dev/block/8:1 Partition /dev/block/8:2 Partition /dev/block/8:3 Partition cdrom: /dev/block/3:0 HL-DT-STDVD-RAM GH22LP20 usb controller: Intel 82801H (ICH8 Family) USB UHCI Controller #4 Intel 82801H (ICH8 Family) USB UHCI Controller #5 Intel 82801H (ICH8 Family) USB2 EHCI Controller #2 Intel 82801H (ICH8 Family) USB UHCI Controller #1 Intel 82801H (ICH8 Family) USB UHCI Controller #2 Intel 82801H (ICH8 Family) USB UHCI Controller #3 Intel 82801H (ICH8 Family) USB2 EHCI Controller #1 bios: BIOS bridge: Intel 82G35 Express DRAM Controller Intel 82801H (ICH8 Family) PCI Express Port 1 Intel 82801H (ICH8 Family) PCI Express Port 2 Intel 82801H (ICH8 Family) PCI Express Port 3 Intel 82801 PCI Bridge Intel 82801HB/HR (ICH8/R) LPC Interface Controller hub: Linux 2.6.26-2-amd64 uhci_hcd UHCI Host Controller Linux 2.6.26-2-amd64 uhci_hcd UHCI Host Controller Linux 2.6.26-2-amd64 ehci_hcd EHCI Host Controller Linux 2.6.26-2-amd64 uhci_hcd UHCI Host Controller Linux 2.6.26-2-amd64 uhci_hcd UHCI Host Controller Linux 2.6.26-2-amd64 uhci_hcd UHCI Host Controller Linux 2.6.26-2-amd64 ehci_hcd EHCI Host Controller memory: Main Memory firewire controller: Agere FW323 unknown: FPU DMA controller PIC Timer Keyboard controller PS/2 Controller Intel 82801H (ICH8 Family) SMBus Controller /dev/ttyS0 16550A /dev/ttyS1 16550A
Zobrazí se uhlazený výpis, ve kterém navíc přibývají např. informace o pevném disku a jeho oddílech. Ale pojďme se věnovat základní desce. Označení základní desky a verzi BIOSu je možné vyčíst z výpisu hwinfo --bios
:
... Processor Info: #0 Socket: "LGA 775" ... BIOS Info: #4 Vendor: "Intel Corp." Version: "ECG3510M.86A.0112.2009.0203.1136" Date: "02/03/2009" ... Board Info: #6 Manufacturer: "Intel Corporation" Product: "DG35EC" Version: "AAE29266-210"
Z výpisu jsem vytáhl pouze některé řádky, které jsou asi nejzajímavější. Je z nich vidět označení patice procesoru (LGA 775
), verze BIOSu (to je ta šílenost - ECG3510M.86A.0112.2009.0203.1136
, ale konkrétně označuje verzi 112 BIOSu dané desky) a asi nejdůležitější je řádek Product
(DG35EC
), který je označením základní desky a umožní mi vyhledat její další specifikace na Internetu.
Podívejte se také na další možnosti programu hwinfo
. Jejich seznam zobrazíte zadáním: hwinfo --help
. Je jich opravdu hodně a postupně pokrývají celý hardware vašeho počítače.
Pevný disk
Základní informace o pevném disku získáte zadáním příkazu hdparm -i /dev/sda
.
/dev/sda: Model=WDC WD5001AALS-00L3B2 , FwRev=01.03B01, SerialNo= WD-WCASY5896734 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50 BuffType=unknown, BuffSize=32767kB, MaxMultSect=16, MultSect=?16? CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=976773168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=no WriteCache=enabled Drive conforms to: Unspecified: ATA/ATAPI-1,2,3,4,5,6,7 * signifies the current active mode
Kromě označení pevného disku je vidět DMA mód disku, který udává rychlost čtení a zapisování dat. Aktuální mód je označený hvězdičkou, v mém případě to je *udma6
. Jednoduché otestování přenosové rychlosti disku můžete provést zadáním hdparm -tT /dev/sda
/dev/sda: Timing cached reads: 3790 MB in 2.00 seconds = 1895.71 MB/sec Timing buffered disk reads: 272 MB in 3.01 seconds = 90.39 MB/sec
Příkaz hdparm -i
lze také s oblibou použít pro zjištění označení a verze firmwaru DVD mechaniky.
Zatímco kešované čtení vykáže úchvatné hodnoty, důležitější je druhý řádek s mnohem menší hodnotou. Pokud by byla hodnota příliš nízká, asi nebude něco v pořádku.
Více informací o pevném disku získáte ze S.M.A.R.T. disku zadáním např. smartctl --all /dev/sda
=== START OF INFORMATION SECTION === Device Model: WDC WD5001AALS-00L3B2 Serial Number: WD-WCASY5896734 Firmware Version: 01.03B01 User Capacity: 500 107 862 016 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 8 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Fri Oct 23 12:37:16 2009 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled .... Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0 3 Spin_Up_Time 0x0027 163 163 021 Pre-fail Always - 4808 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 83 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0 7 Seek_Error_Rate 0x002e 100 253 000 Old_age Always - 0 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 422 10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0 11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 81 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 18 193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 83 194 Temperature_Celsius 0x0022 112 107 000 Old_age Always - 35 196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0 197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0 200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0
Pěkným počtením bývá zpravidla tabulka na konci výpisu. Zde najdete informace o počtu hodin, které disk naběhal (Power_On_Hours
), teplotě disku (Temperature_Celsius
), počtu zapnutí disku (Power_Cycle_Count
) a pro někoho zajímavý řádek (Spin_Up_Time
) související s počtem přístupů na disk. Samozřejmě se tato tabulka může lišit dle výrobce a typu disku.
Pomocí technologie S.M.A.R.T. je možno disk také otestovat, pokud to chcete provést, podívejte se na parametr -t
(např. smartctl -t short /dev/sda
nebo smartctl -t long /dev/sda
), výstup testu se pak zobrazuje v logu (smarctl -l selftest /dev/sda
). Více informací najdete třeba na webu barbara.atw.hu.
Teplota
Příčinou problémů může být také ne příliš příznivá teplota některých komponent počítače. Jistě znáte příkaz sensors
z balíčku lmsensors.
coretemp-isa-0000 Adapter: ISA adapter Core 0: +31.0°C (high = +76.0°C, crit = +100.0°C) coretemp-isa-0001 Adapter: ISA adapter Core 1: +34.0°C (high = +76.0°C, crit = +100.0°C) w83627dhg-isa-06e0 Adapter: ISA adapter VCore: +0.85 V (min = +0.00 V, max = +1.74 V) in1: +10.40 V (min = +3.48 V, max = +13.04 V) AVCC: +3.07 V (min = +0.99 V, max = +2.62 V) ALARM 3VCC: +3.06 V (min = +0.94 V, max = +3.14 V) in4: +0.98 V (min = +1.02 V, max = +0.98 V) ALARM in5: +1.33 V (min = +0.62 V, max = +2.03 V) in6: +1.13 V (min = +4.99 V, max = +4.25 V) ALARM VSB: +3.07 V (min = +1.70 V, max = +2.53 V) ALARM VBAT: +0.70 V (min = +2.16 V, max = +0.54 V) ALARM Case Fan: 1240 RPM (min = 927 RPM, div = 16) CPU Fan: 2008 RPM (min = 334 RPM, div = 16) Aux Fan: 0 RPM (min = 390 RPM, div = 128) ALARM fan4: 0 RPM (min = 811 RPM, div = 128) ALARM Sys Temp: +42.0°C (high = +66.0°C, hyst = +47.0°C) sensor = diode CPU Temp: +55.0°C (high = +80.0°C, hyst = +75.0°C) sensor = diode AUX Temp: +71.5°C (high = +80.0°C, hyst = +75.0°C) sensor = diode cpu0_vid: +2.050 V
Výstup příkazu ovšem berte s rezervou, protože některé výkyvy jsou prostě v normě a také senzory na základní desce většinou nepatří k těm nejpřesnějším. Co třeba na výše uvedeném výstupu nepochopím, jak může být teplota na procesoru (CPU Temp
) vyšší než teplota jader CPU (Core 0
a 1
).
Ilustrační obrázek
Podobně je možno zjistit i teplotu pevného disku pomocí příkazu hddtemp
, například tedy výpis příkazu hddtemp /dev/sda
vypadá takto:
/dev/sda: WDC WD5001AALS-00L3B2: 36°C
Otestování operační paměti
Konečně poměrně častou příčinou divných pádů systému bývá operační paměť počítače. To, zda je vaše operační paměť v pořádku, zjistíte instalací balíčku memtest86 nebo lépe novější verzí memtest86+. Po instalaci dojde k přidání příslušné nabídky do menu zavaděče GRUB a otestování paměti počítače tak spustíte právě z této nabídky při startu počítače. Pro otestování paměti se doporučuje nechat proběhnout více průchodů (ne jen jeden). Přitom jeden průchod se skládá z několika různých testů.
Není nutné lézt po kolenou někde pod stolem
Ve článku jsem se snažil ukázat, že je možné zjistit řadu informací o počítači aniž bychom se nutně museli dívat do jeho útrob nebo studovat různé volby v BIOSu počítače. Pokud vám článek pomůže při otestování nového počítače či zjištění výbavy toho stávajícího, pak jistě splnil svůj smysl. Mně v tom tyto nástroje pomáhají.