voellig richtig. Man unterscheidet zwischen preaemtivem Multitasking (mehrere tasks von einer oder verschiedenen Anwendungen koennen scheinbar gleichzeitig Abgearbeitet werden) wobei die Prozessorzeit nicht von der Anwendung reserviert, sondern vom System zugwiesen wird (scheduler).
Das ermoeglicht das scheinbar gleichzeitige Abarbeiten (time slize) mehrerer Aufgaben einer oder verschiedener Anwendungen. Das funktioniert auch mit einer single Prozessor Maschine aber bei zwei Prozessoren versucht das System natuerlich, beide Prozessoren gleichzeitig auszulasten (balanced load). Darauf bezieht sich meine Aussage, dass alle Dual Rechner automatisch vom 2ten Prozessor profitieren, auch ohne dass die Applikationen dafuer optimiert sein muessen.
Wenn die Anwendung allerdings nur einen einzelnen Task oder Prozess ausfuehren will, und keine andere Anwendung gleichzeitig laeuft, trifft das nicht mehr zu, sondern der Task oder Prozess wird nur auf einem Prozessor ausgefuehrt.
Im Gegensatz dazu wird beim Multithreading ein Task oder Prozess einer Applikation in Einzelaufgaben unterteilt und an beide Prozessoren zur gleichzeitigen Verarbeitung uebergeben. Der output der beiden Prozessoren wird anschliessend wieder zusammengefuehrt. Das wird natuerlich nicht mehr ueber das Betriebs System gesteuert sondern dafuer muss die Applikation entsprechend programmiert sein (z.B. Cinema 4D, Adobe Premiere, Photoshop). Zum Beispiel beim raytracing in Cinema 4D profitiert die Anwendung ganz erheblich davon (nahezu doppelt so schnell wie auf einer single Prozessor Maschine)
Cheers,
Lunde