Hallo,
eltern/kind prozesse sind prozesse, die einen prozess identisch kopieren. beide prozesse werden dann separat fortgeführt.
threads machen doch das gleiche?
wo ist der unterschied zwischen threads und eltern/kind prozessen?
Hallo,
eltern/kind prozesse sind prozesse, die einen prozess identisch kopieren. beide prozesse werden dann separat fortgeführt.
threads machen doch das gleiche?
wo ist der unterschied zwischen threads und eltern/kind prozessen?
Hast du dich
etwas verlaufen ?
Hallo,
eltern/kind prozesse sind prozesse, die einen prozess
identisch kopieren. beide prozesse werden dann separat
fortgeführt.
threads machen doch das gleiche?
Gruß Insulin
Moien
Lernst für eine OS-Vorlesung an der FH, was ?
eltern/kind prozesse sind prozesse, die einen prozess
identisch kopieren. beide prozesse werden dann separat
fortgeführt.
threads machen doch das gleiche?
Nein. Bei Threads wird nix kopiert und beide(alle) laufen auf den gleichen Daten.
cu
eltern/kind prozesse sind prozesse, die einen prozess
identisch kopieren. beide prozesse werden dann separat
fortgeführt.
threads machen doch das gleiche?wo ist der unterschied zwischen threads und eltern/kind
prozessen?
Deine Shift-Taste ist kaputt, außerdem wird der Thread-Begriff normalerweise etwas anders benutzt.
Der Unterschied ist, dass die eine Version „lightweight“ und die andere „heavyweight“ ist. Was jetzt was ist hängt ein wenig davon ab, wie man sich die Begriffe definiert. Eine Definition ist, dass „heavyweight“ auf Funktionen des Betriebssystems basiert, während „lightweight“ möglichst alle benötigten Funktionen selbst implementiert. (Dieser Definition nach ist zB Javas Swing lightweight, was zu lustigen Diskussionen führen kann.)
Wenn du auf einem POSIX-System per fork() einen Prozess clonst, dann bekommst du wirklich zwei identische Prozesse, die auch vom Betriebssystem als solche erkannt werden (abhängig vom Rückgabewert des fork-Kommandos können aber Eltern- und Kindprozesse durchaus unterschiedliche Wege gehen). Jeder dieser Prozesse hat einen eigenen Adressraum. Die Kommunikation läuft über die bei IPC gängigen Mechanismen wie Pipes oder Shared Memory.
Threads werden innerhalb eines einzelnen Prozesses erzeugt und verwaltet, das System selber sieht nur diesen einen Prozess. Ein Threading-Package sorgt dafür, dass die einzelnen Threads vernünftig verwaltet werden. Kommunikation kann in diesem Fall auch über den Prozesseigenen Speicher stattfinden.