Re: čavrljanje 2.0
Postano: 08 svi 2014, 18:40
Ovaj...kad se već spominje programiranje ovdje, malo da zatražim pomoć, naime radim program za benchmarking programskih jezika, jednostavan program koji pokrene 50k threadova i 50k procesa i ispiše rezultat u sekundama u *.txt, krenulo je samo kao usporedba pokretanja procesa i threadova (brzina jel) u sklopu nastave a potaknut sporošću C#-a krenuo sam raditi istu stvar i za C++, C i Python, tj. trenutno je za C# gotov i pri kraju sam sa C++ ali imam problem sa execl, napravio sam ovo:
sad za ovaj if/else if/else dio nisam siguran dali bi trebao raditi, to je samo jedan od triala, ali glavni dio, ovaj execl neće pokrenuti zadani process, nisam uspio na netu naći dali uopće mogu preko relativnih putanji pokretati sa execl ili je nešto drugo problem, ali on samo preskoči kompletnu for(){} petlju ako nema fork() i ostatka nego samo execl dio.
Može li mi tko malo objasniti kako točno radi execl i što su ustvari ovi parametri koje bi main funkcija trebala dobiti, jedino što na netu kažu za te parametre je "these are parameters that your main function will have", nešto u tom smislu.
Kod: Označi sve
pid_t child;
for (int i = 0; i<50001; i++){
child = fork();
if (child < 0){
cout<<"Error!\n";
}else if (child==0){
execl("./randomProcess", (char*)0);
}
else{
kill(child, SIGTERM);
}
}
Može li mi tko malo objasniti kako točno radi execl i što su ustvari ovi parametri koje bi main funkcija trebala dobiti, jedino što na netu kažu za te parametre je "these are parameters that your main function will have", nešto u tom smislu.