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.