Programowanie współbieżne
II rok informatyki studia dzienne, studia II-giego stopnia
rok akademicki 2006/2007 semestr zimowy
Zadanie z wywoływania programów zewnętrznych (rodzina funkcji exec)
1). Napisać osobny program w języku C, który wywoływany jest z parametrami wprowadzanymi z linii komend
Przykład:
int main( int argc, char *argv[]
) /// liczba parametrów, tablica parametrów, nazwa programu to parametr
zerowy
{
printf ("Jestem sobie program zewnętrzny, wywołany za pomocą exec-a");
printf ("Przekazano mi parametr: %s", argv[1]); ///
pierwszy parametr, parametry numerowane od zera
}
To jest wersja naj-naj-najbardziej podstawowa.
2). Proszę skompilować i wywołać z poziomu powłoki (shell'a):
$ ./moj.exe 1
gdzie:
./ - to ścieżka dostępu do pliku
moj.exe - to nazwa pliku
1 - to parametr
Wersja bardziej skomplikowana: przerobić parametr na wartość typu
integer,
można również sprawdzić ilość parametrów if (argc = ...)
3). Program z fork()
uzupełnić o: dodanie do procesu potomnego wybranej przez Państwa funkcji
z rodziny funkcji exec i za jej pomocą wywołać
program opisany w punkcie 1.