Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: ChristianF am 22. August 2008, 09:10
-
Ahoi,
ich habe da mal eine Frage an die Leute, die SMP Unterstützung in ihrem Betriebssystem eingebaut haben.
Wie testet ihr das? Kann man das emulieren?
Ich lese mich da nämlich gerade ein wenig in das Thema ein. :)
Und so gesehen habe ich keinen PC bei mir stehen, der 2 Prozessoren oder mehr hat. Nur einen Dual Core habe ich hier, allerdings als 64-Bit Variante, falls der überhaupt zählt.
Grüße Christian
-
ich habe da mal eine Frage an die Leute, die SMP Unterstützung in ihrem Betriebssystem eingebaut haben.
Meines Wissens funktioniert das momentan bei keinem so richtig.
Wie testet ihr das? Kann man das emulieren?
bochs, qemu, VMWare können alle 2 oder mehr Prozessoren. VirtualBox denke ich auch.
Nur einen Dual Core habe ich hier
Ist software-technisch gesehen das selbe.
allerdings als 64-Bit Variante, falls der überhaupt zählt.
Die sind abwärtskompatibel.
-
ich habe da mal eine Frage an die Leute, die SMP Unterstützung in ihrem Betriebssystem eingebaut haben.
Meines Wissens funktioniert das momentan bei keinem so richtig.
Das steht aber bei einigen, bzw. stand! :wink:
Wie testet ihr das? Kann man das emulieren?
bochs, qemu, VMWare können alle 2 oder mehr Prozessoren. VirtualBox denke ich auch.
Ich habe eben mal geschaut, und zumindest Virtual Box unterstützt dies. Wie das bei den anderen ist, muss ich noch nach schauen.
Sollte ich das irgendwann mal einbauen, dann kann ich das noch auf dem Dual Core testen...
Danke für die Antwort
Gruß Christian
*EDIT*
Mal schauen, vllt. gibt es auch einen virtuellen SMP support, dass ich das weiterhin auf meinem 32-Bit Single Core Rechner emulieren kann.
-
ich habe da mal eine Frage an die Leute, die SMP Unterstützung in ihrem Betriebssystem eingebaut haben.
Meines Wissens funktioniert das momentan bei keinem so richtig.
Das steht aber bei einigen, bzw. stand! :wink:
Ich kenne keins, dass userspace programme ohne Probleme auf mehreren Cores ausführt. Multicore bringt halt sehr viele Probleme mit sich, va. in einem Kernel: Deadlocks und Data Races.
In lightOS habe ich iirc bis jetzt nur die anderen Cores gestartet, in den Protected- bzw. Long-Mode gebracht und einige Core-spezifische Kernelinterna initialisiert. Das ausführen von userspace-threads auf verschiedenen Cores war erst in den Kinderschuhen, da Locking eben kein triviales Thema ist, va. wenn man dafür nicht unbedingt "designt" hat.
Mal schauen, vllt. gibt es auch einen virtuellen SMP support, dass ich das weiterhin auf meinem 32-Bit Single Core Rechner emulieren kann.
Exakt so war meine Antwort eigentlich gemeint. Die Emulatoren emulieren schließlich ein System. Das kann natürlich auch ein SMP System sein ohne das eines real vorhanden wäre.
Ob die Emulatoren auch SMP auf dem Hostsystem ausnutzen wüsste ich jetzt garnicht und ist eigentlich auch nicht wirklich essenziell...
-
Ob die Emulatoren auch SMP auf dem Hostsystem ausnutzen wüsste ich jetzt garnicht und ist eigentlich auch nicht wirklich essenziell...
Reines qemu jedenfalls nicht, das führt die Prozessoren schön abwechselnd aus.
-
Gegenbeispiel wäre wohl VMware, das macht SMP nur mit wenns der Host auch kann.