SHPORA.net :: PDA

Login:
đćăèńòđàöèÿ

Main
FAQ

ăóìàíèòàđíûć íàóêè
ćńòćńòâćííûć íàóêè
ìàòćìàòèśćńêèć íàóêè
òćőíèśćńêèć íàóêè
Search:
Title: | Body:

b.Shell-ul

Cea mai simplă linie de comandă conține un nume de program ?i câțiva parametri cum ar fi:
^ who
^ grep -n include *.c
^ ls -1
--Shell-ul face un apel fork ?i crează un proces fiu care execută programul pe care utilizatorul îl specifică în linia de comandă. Procesul părinte, shell-ul care este folosit de utilizator, a?teaptă până când procesul fiu iese din comanda dată ?i atunci revine pentru a citi comanda următoare. Pentru a rula un proces asincron (în fundal), ca de exemplu:
^ nroff -mm big document [and] shell-ul setează o variabilă internă amper când analizează caracterul [and]. Dacă găse?te variabila setată la sfâr?itul buclei, nu se execută wait dar imediat reîncepe ciclul ?i cite?te următoarea linie de comandă.
Poza arată că procesul fiu are acces la copia liniei de comandă după fork. Pentru a putea redirecta ie?irea standard a fi?ierului, ca de exemplu
^nroff -mm bigdocument>output
--procesul fiu crează fi?ierul de ie?ire specificat în linia de comandă; dacă apelul creat nu se încheie cu succes (de exemplu, la crearea fi?ierului în director fără drept de acces ), procesul fiu ar trebui să apeleze imediat exit. Dăcă apelul creat se încheie cu succes, procesul fiu închide fi?ierul de ie?ire standard anterior ?i duplică descriptorul de fi?ier al noului fi?ier de ie?ire. Descriptorul fi?ierului de ie?ire standard referă acum fi?ierul de ie?ire redirectat. Procesul fiu închide descriptorul de fi?ier obținut prin apelul creat pentru a conserva descriptorii de fi?ier pentru programul executat. Shell-ul redirectează fi?ierele de intrare ?i eroare standard într-un mod similar.