Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
1. the first column shows the IRQ number. AFAIK, modern computers usually have 16 IRQs. Why is there 15 of them? Is it because IRQ 2 cascades to IRQs 8-15? Or do I have 24 IRQs (apic)? How can I check it? Why are not all the numbers used up? What I mean is why isn't it in a continuous sequence 0,1,2,3,4, etc?
2. Now a bit about the second and third columns. The second one shows the number of interrupts send from a device to the first core of my CPU since last reboot. Am I correct? If so, is there any particular reason why the second core is being more 'popular'?
Have you lot noticed that irq0-7 are sufficient for a standard 8086-based desktop machine from the 80's?
I also have some vague memories about IBM machines which had negative level-triggered IRQ's which actually allowed something like IRQ sharing back then. IBM clones had positive level IRQ's causing IRQ conflicts. Or was it other way around ... hmmm ...
IBM clones had positive level IRQ's causing IRQ conflicts. Or was it other way around
I think it was the other way around... I remember the clones ended up with a rep superior to the IBM machines. I also remember IBM having the stature enjoyed by MS today now they're the good guys: how the World turns. (We used to call them "ibbum", and the machines "chaotic-evil". By the same token, I guess MS is "Lawful-Evil".)
Notice how the interrupts spread evenly on both cores (well, at least on gfx and usb-hd) after running irqbalance for 1 day.
I was quite pleased to learn of this utility also. This is why I look to help other people here - I end up learning something I would not have thought to ask about.
Have you noticed how asking about the really low-level aspects of a computer dredges up the really old techs around here? Us "Sid" types will now go off and play Quake... with punch cards. http://ars.userfriendly.org/cartoons/?id=20011229
My question is concerned with how IRQs fit in that diagram.
eg. I moved my mouse which results in an IRQ being sent from i8042 to the CPU.
My question is whether IRQ channels/paths physically exist as separate channels on
the motherboard or is the interrupt request from i8042 sent via PCI bus to the southbridge, which
via the internal bus is sent to the northbridge which finally uses FSB to send the request to the processor?
You start loading the 'Quake' cards and call me when your through.
Done! Ahhh... no. One of the cards was out of sequence, have to redo. (Hmmm... hanging chad on this one...)
Quote:
My question is whether IRQ channels/paths physically exist as separate channels on
the motherboard
CPUs have a separate pin/s which is/are the interrupt-line/s (often: "INT REQ" on pin diagrams) It says "go look at the bus". The exact details are HW-specific. So pick a CPU and study it.
The way to see how interrupts came and go, is to go to the circuit diagram - here's an old one: http://www.z80.info/gfx/Circuit_diagram_2A_3A.gif
The CPU is the Z80 ... the IRQ line goes to the NIRQ pin (pin 20 - hunt for it). Interrupts come from the handler, which gets them from the HW interface. The PCI bus has an interrupt-line, for eg.
Last edited by Simon Bridge; 02-20-2008 at 06:58 PM.
I am thinking of putting the Z80 mobo diagram as my wallpaper
Quote:
Are you thinking of scratch-building a mobo?
Yes, mine will support 66-core CPUs, it will have 72 IRQs and 2 integrated toasters!!!
On a serious note, I started reading about a hardware side of computers, and I find
it quite interesting. It is quite weird to me not to know how computers work - I've been
using them for 18 years.
having spent some time trying to monitor interrupts over time, I've added support to reporting this type of data by cpu over time with my collectl utility - see http://collectl.sourceforge.net/ but in the meanwhile to help whet your appetite, here are a couple of examples of what it will show you, in addition to lots of other types of data.
and this shows the individual types of interrupts. note that since it only shows those that are actually changing, it's much easier than trying to visually parse /proc/interrupts, which is where collectl gets the data:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.