Tag Archives: ioports

/proc/interrupts /proc/dma /proc/ioports /proc/pci – kas tai? Kam tai?

Sveiki.

Kas tai? Kam tai? Kiek reik žinoti norint laikyti LPIC 1?

Taigi pradėkime nuo $ cat /proc/interrupts:

            CPU0       CPU1       
   0:         47          0   IO-APIC-edge      timer
   1:     724400          0   IO-APIC-edge      i8042
   4:          7          0   IO-APIC-edge    
   6:          9          0   IO-APIC-edge      floppy
   7:          1          0   IO-APIC-edge      parport0
   8:          0          0   IO-APIC-edge      rtc0
   9:          0          0   IO-APIC-fasteoi   acpi
  10:          0          0   IO-APIC-edge      MPU401 UART
  12:   49868099          0   IO-APIC-edge      i8042
  14:          0          0   IO-APIC-edge      pata_amd
  15:   39335387          0   IO-APIC-edge      pata_amd
  19:  221426355          0   IO-APIC-fasteoi   eth0
  20:          0          0   IO-APIC-fasteoi   ohci_hcd:usb2
  21:          0          0   IO-APIC-fasteoi   sata_nv
  22:  151357004          0   IO-APIC-fasteoi   sata_nv, NVidia MCP04
  23:    1500482          0   IO-APIC-fasteoi   ehci_hcd:usb1, ohci_hcd:usb3
 NMI:          0          0   Non-maskable interrupts
 LOC: 3569957012 4016805223   Local timer interrupts
 SPU:          0          0   Spurious interrupts
 PMI:          0          0   Performance monitoring interrupts
 PND:          0          0   Performance pending work
 RES:   49038410   61701676   Rescheduling interrupts
 CAL:       8029      10129   Function call interrupts
 TLB:    6884747    7229042   TLB shootdowns
 TRM:          0          0   Thermal event interrupts
 THR:          0          0   Threshold APIC interrupts
 MCE:          0          0   Machine check exceptions
 MCP:      12424      12424   Machine check polls
 ERR:          2
 MIS:          0


Šiame pavyzdyje matome, kad pertraukimo (interrupt) 21 ir 22 yra naudojami SATA diskam… 21 yra laisvas todėl ir matome visur nuliukus… po disko 22 pertraukime, yra dalinamas ir SATA/RAID valdiklio pertraukimas… Galime per BIOS išjungti nenaudojamus įrenginius taip sutaupysime pertraukimo kanalus…
Kas dar?

Prašau pagalbos 1

Štai cat /proc/dma ir /proc/ioports iš tos pačios sistemos:
$ cat /proc/dma
2: floppy
4: cascade

$ cat /proc/ioports
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-0060 : keyboard
0064-0064 : keyboard
0070-0073 : rtc0
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : 0000:00:0f.0
0170-0177 : pata_amd
01f0-01f7 : 0000:00:0f.0
01f0-01f7 : pata_amd
0201-0201 : ns558-pnp
0290-0297 : pnp 00:02
0330-0331 : MPU401 UART
0376-0376 : 0000:00:0f.0
0376-0376 : pata_amd
0378-037a : parport0
03c0-03df : vga+
03f2-03f2 : floppy
03f4-03f5 : floppy
03f6-03f6 : 0000:00:0f.0
03f6-03f6 : pata_amd
03f7-03f7 : floppy
03f8-03ff : serial
04d0-04d1 : pnp 00:02
0800-087f : pnp 00:02
0880-088f : pnp 00:02
0960-0967 : 0000:00:11.0
0960-0967 : sata_nv
0970-0977 : 0000:00:10.0
0970-0977 : sata_nv
09e0-09e7 : 0000:00:11.0
09e0-09e7 : sata_nv
09f0-09f7 : 0000:00:10.0
09f0-09f7 : sata_nv
0b60-0b63 : 0000:00:11.0
0b60-0b63 : sata_nv
0b70-0b73 : 0000:00:10.0
0b70-0b73 : sata_nv
0be0-0be3 : 0000:00:11.0
0be0-0be3 : sata_nv
0bf0-0bf3 : 0000:00:10.0
0bf0-0bf3 : sata_nv
0cf8-0cff : PCI conf1
4000-407f : pnp 00:01
4000-4003 : ACPI PM1a_EVT_BLK
4004-4005 : ACPI PM1a_CNT_BLK
4008-400b : ACPI PM_TMR
401c-401c : ACPI PM2_CNT_BLK
4020-4027 : ACPI GPE0_BLK
4080-40ff : pnp 00:01
4400-447f : pnp 00:01
4480-44ff : pnp 00:01
44a0-44af : ACPI GPE1_BLK
4800-487f : pnp 00:01
4880-48ff : pnp 00:01
5000-503f : 0000:00:0a.1
5000-503f : nForce2_smbus
5100-513f : 0000:00:0a.1
5100-513f : nForce2_smbus
9000-9fff : PCI Bus 0000:01
9000-90ff : 0000:01:00.0
a000-afff : PCI Bus 0000:02
a000-a03f : 0000:02:0c.0
a000-a03f : e1000
c800-c80f : 0000:00:10.0
c800-c80f : sata_nv
dc00-dc0f : 0000:00:11.0
dc00-dc0f : sata_nv
e000-e01f : 0000:00:0a.1
e400-e4ff : 0000:00:13.0
e400-e4ff : NVidia MCP04
e800-e8ff : 0000:00:13.0
e800-e8ff : NVidia MCP04
f000-f00f : 0000:00:0f.0
f000-f00f : pata_amd

Taigi, ką žinome apie DMA (Direct Memory Access)? Tik tai, kad DMA naudojamas leisti įrenginiams tiesiogiai kreiptis į atmintį aplenkiant procesorių, taip paspartinant darbą.
Kas dar?

Prašau pagalbos 2

ioports pirmas skaičius įeities (input) adresas, o paskutinis išeities (output) adresas… t.y. per kurį kreipiamasi į įrenginį (input), o išeities (output) per kurį gauna atsakymus…
Kas dar?

Prašau pagalbos 3

$ lspci
00:00.0 Host bridge: nVidia Corporation Device 0071 (rev a1)
00:00.1 RAM memory: nVidia Corporation Device 007f (rev a1)
00:00.2 RAM memory: nVidia Corporation Device 0075 (rev a1)
00:00.3 RAM memory: nVidia Corporation Device 006f (rev a1)
00:00.4 RAM memory: nVidia Corporation Device 00b4 (rev a1)
00:01.0 RAM memory: nVidia Corporation Device 0076 (rev a1)
00:01.1 RAM memory: nVidia Corporation Device 0078 (rev a1)
00:01.2 RAM memory: nVidia Corporation Device 0079 (rev a1)
00:01.3 RAM memory: nVidia Corporation Device 007a (rev a1)
00:01.4 RAM memory: nVidia Corporation Device 007b (rev a1)
00:01.5 RAM memory: nVidia Corporation Device 007c (rev a1)
00:01.6 RAM memory: nVidia Corporation Device 007d (rev a1)
00:02.0 PCI bridge: nVidia Corporation Device 007e (rev a2)
00:09.0 RAM memory: nVidia Corporation Device 003f (rev a1)
00:0a.0 ISA bridge: nVidia Corporation Device 0030 (rev a3)
00:0a.1 SMBus: nVidia Corporation MCP04 SMBus (rev a2)
00:0b.0 USB Controller: nVidia Corporation MCP04 USB Controller (rev a1)
00:0b.1 USB Controller: nVidia Corporation MCP04 USB Controller (rev a1)
00:0b.2 USB Controller: nVidia Corporation MCP04 USB Controller (rev a2)
00:0f.0 IDE interface: nVidia Corporation MCP04 IDE (rev f2)
00:10.0 IDE interface: nVidia Corporation MCP04 Serial ATA Controller (rev f2)
00:11.0 IDE interface: nVidia Corporation MCP04 Serial ATA Controller (rev f2)
00:12.0 PCI bridge: nVidia Corporation MCP04 PCI Bridge (rev a2)
00:13.0 Multimedia audio controller: nVidia Corporation MCP04 AC'97 Audio Controller (rev a1)
01:00.0 VGA compatible controller: ATI Technologies Inc RV570 [Radeon X1950 Pro]
01:00.1 Display controller: ATI Technologies Inc RV570 [Radeon X1950 Pro] (secondary)
02:06.0 Ethernet controller: National Semiconductor Corporation DP83065 [Saturn] 10/100/1000 Ethernet Controller (rev 30)
02:0c.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)

Čia mes matome kokie įrenginiai pajungti prie mūsų pagrindinės plokštės (motherboard) ir per kurį lizdą…
Kas dar?

Prašau pagalbos 4