Bash aus C/C++ basiertem Kernel-Init starten
- 
					
					
					
					
 zum spielen haben ich mir Kernel für ein paar Qemu Platformen gebaut (SPARC,ARM,MIPS,PPC,ALPHA) und dazu ein kleines C/C++-Init geschrieben das mir ein paar Systemdaten wie Endianess, /proc/cpuinfo usw. ausgibt - also keine User, keine Bash usw. - nur Kernel + minimal Init Jetzt würde ich gerne die Bash direkt aus meinem init-Programm starten und darauf warten/blockieren das ich die Shell wieder mit "exit" beende habe dazu das gefunden: http://www.yolinux.com/TUTORIALS/ForkExecProcesses.html ich habe fork,exec(v,c,...) mir angeschaut bin mir aber nicht sicher was das richtige ist - mit system, popen oder sonstigen Shell nutzenden Befehlen will und kann ich nicht arbeiten ich denke vfork + exec könnte das richtige sein - oder? das ganze wuerde ich gerne mit der gesetzen environement Variable 
 LD_TRACE_LOADED_OBJECTS vom ld.so machen (habe kein ldd) damit ich zusätzlich noch die Ausgabe der dynamischen Abhängigkeiten sehen kann
 
- 
					
					
					
					
 Gast3 schrieb: ich denke vfork + exec könnte das richtige sein - oder? Ja, die Kombination ist genau dazu da, einen neuen Prozess zu starten. 
 
- 
					
					
					
					
 Danke dann probiere ich mal vfork und exec wie sieht es aus mit ld.so und der env-var LD_TRACE_LOADED_OBJECTS? 
 kann ich einfach nur die env-var setzen und dann mit exec ausführen oder
 muss ich den Befehl direkt über ld.so starten?
 
- 
					
					
					
					
 hat alles geklappt - Danke