Prozessor
-
Hi!
Ich hab einige Fragen zu Prozessoren:- Im RM kann man ja nur bis zu 2^32 (4 GB) adressieren. Es gibt aber bereits Prozessoren mit einer Adressleiste von 64 bit, bleiben bei diesen 32 Bits ungenutzt?
- Wie sieht das mit dem Transport über die Datenleitungen aus, diese haben ja bis zu 300 oder mehr Leitungen?
- Wie funktionert ein Computer mit mehreren Prozessoren?
lg, phreaking
-
1. Die oberen 32 Bit bleiben nur bei alten Programmen ungenutzt. Allerdings denke ich, dass diese 64Bitter nur zu sich selbst kompatibel sind und dadurch sowieso eigene Software brauchen, bei denen man dann auch die 64 Bit ausreizt.
2.Bei 64 Bit hast du 64 Datenleitungen und eine Masse. Das ist -denke ich- noch zu handhaben, wenn man einen Computer dafür hat *fg*3. Da gibt es mehrere Möglichkeiten. Eine ist so:
Eine Main-CPU verwaltet die Aufgaben. sämtliche anderen haben entweder zu tun, doer sie senden ein Signal, dass sie frei sind. Dies spiechert die Mein-CPU. Ist nun eine Aufgabe zu erledigen, so werden die dementsprechenden Daten an die erste freie CPU weitergeleitet.cYa
DjR
-
zu 3.
Das was DoC genannt hat, nennt sich dann Asymmetrisches Multiprocessing (AMP), weil ein Prozessor verwaltet (dort läuft dann das OS) und die anderen kümern sich um die User-Prozesse. Die andere Möglichkeit ist das Symmetrische Multiprocessing (SMP), was schöner, aber auch komplexer ist.
Bei SMP arbeitet jede CPU für sich, was halt gerade anliegt. Wenn man nur eine CPU im Rechner hat führt die ja mal Kernelcode, mal usercode aus etc. Beim SMP arbeiten alle CPUs einfach so, d.h. jede für sich mal Kernel mal Usercode. Aufpassen muss man halt dann nur, wenn z.B. von verschiedenen Stellen im Kernel auf die gleichen Speicherstrukturen zugegriffen wird, dass immer nur eine CPU zur Zeit daran rumwurstet. Die Synchronisation (die bei AMP i.A. nicht notwendig ist, weil am Kernelcode läfut ja immer nur eine CPU) erfolgt teilweise über bestimmte Zwischen-CPU-Signale, größtenteils aber über Softwarealgorithmen wie Semaphoren, Spinlocks und Mutual Exclusion.Kurz gefasst ist AMP eine leicht zu implementierende Methode, mehrere Prozesse zu nutzen, abe rmeist sehr verschwenderisch, denn wessen Kernel schaffts schon, eine ganze CPU auszulasten. SMP ist schwerer zu implementieren, nutz dafür aber soviel von den Prozessorkraft, wie möglich
-
Danke für die beiden Antworten und Erklärungen. Was sind Semaphoren, Spinlocks und Mutual Exclusion?
lg, phreaking