Thread Umgebungsvariablen manipulieren
(30 answers)
Opened by Heinz at 2014-11-04 14:24
Möglich ist das prinzipiell schon, aber dazu muss man im Adressraum des Elternprozesses herumpfuschen.
So etwas widerspricht natürlich den Prinzipien der Prozessisolation und Informationskapselung, ist im Allgemeinen keine gute Idee und erfordert auf vernünftigen Betriebssystemen erweiterte Zugriffsrechte, die man nicht automatisch hat, wenn man nicht sowieso als Superuser arbeitet. Wenn ein Kindprozess dem Elternprozess etwas mitteilen möchte, dann sollte das über Ausgabedatenströme oder andere Interprozesskommunikationsmittel geschehen. Der Elternprozess kann dann bei Bedarf seine Umgebungsvariablen anpassen. Wenn Du unbedingt im Elternprozess herumpfuschen willst, könntest Du unter Linux zum Beispiel via procfs die Addresse der Umgebungsvariablen eines Prozesses ermitteln und darauf zugreifen — in /proc/$pid/stat steht unter anderem der Addressbereich der Umgebungsvariablen, via /proc/$pid/mem kannst Du dann direkt auf den Speicher des Prozesses zugreifen. When C++ is your hammer, every problem looks like your thumb.
|