uih, schwieriges Thema, da man dort sehr weit abschweifen kann.
also mein Senf dazu
I/O)
Was meinst Du mit "Kern"? Es gibt auch I/Os zwischen Tastatur und PC, zum Drucker etc. Die haben oft einen eigenen kleinen Puffer und laufen parallel/nebenbei. Mir ist nicht ganz klar, was Du da als Antwort erwartest ?
Zeitunterbrechung
Auch da bin ich mir nicht ganz klar, was Du meinst? Interups?
Dort gibt es 2 Arten:
Einmal die Hardwareseitigen (IRQs) die den wirklichen Datentransfer und die Kontrollen der einzelnen Hardware-Komponenten steuern (Wer darf wann den Datenbus benutzen etc.). Deine Maus z.B. hat einen Hardware IRQ, damit sie i.d.R. immer bedienbar bleibt und nicht mangelnds Beachtung unbenutzbar bleibt.
Die IRQ Zuweisung wird AFAIK durch einen kontroler erledigt.
Die Softwareseitige Zeitunterbrechung nennt man AFAIK auch Zeitscheibe (oder so ähnlich) und ist Aufgabe eines Betriebssystems.
Auch wenn Microsoft schon seit Jahren behauptet Windows könne Programme parallel arbeiten lassen stimmt das im engeren Sinne nicht (*mehr). Letztendlich gibt es nur eine CPU die auch nur einen Prozess versorgen kann.
Welcher Prozess wieviel Zeit zugesagt bekommt, regelt das Betriebssystem
Wartet ein Prozess z.B. auf ein I/O, bedient der Prozessor solange einen anderen Prozess.
Bei windows kann man ein wenig am "Zeitmanagement" rumspielen indem man die Priorität verändert.
Wenn mehrere Prozesse auf CPU-Power warten, werden die Prozesse mit höherer Priorität bevorzugt bedient.
Auch die Dauer einer Zuteilung kann davon beeinflusst werden.
Ein Prozess auf Realtime und einer durchgehend konstanten Auslastung legt damit den gesamten Rechner lahm.
Bei Mehrkern-Rechnern sieht das natürlich wieder etwas anders aus, ich nehme mal an, dass das Betriebssystem einfach mehrere (soviele wie CPUs vorhanden) Zeitscheiben im Einsatz hat.