шпаргалка

a.Crearea proceselor

[ Назад ]
Singurul mod prin care un utilizator poate crea un nou proces оn UNIX este folosirea apelului sistem fork. Procesul care apeleazг fork este numit proces pгrinte, iar noul proces creat este numit proces fiu. Sintaxa pentru apelul sistem fork este: pid=fork();
La revenirea din apelul sistem fork, douг procese au copii identice ale contextului la nivel utilizator, excepюie fгcвnd valoarea de retur a pid-ului. Оn procesul pгrinte, pid-ul are valoarea identificatorului procesului fiu; оn procesul fiu, pid-ul are valoarea zero.
Procesul 0, creat intern de cгtre kernel cвnd sistemul este iniюializat este singurul proces care nu este creat prin intermediul apelului sitem fork. Nucleul executг urmгtoarea secvenюг de operaюii la apelul sistem fork:
1)Alocг o intrare оn tabela proceselor penrtru noul proces.
2)Atribuie un identificator unic procesului fiu.
3)Face o copie logicг a contextului procesului pгrinte.
4)Incrementezг contorii tabelei de inoduri ?i fi?iere asociate procesului.
5)Оntoarce оn procesul pгrinte numгrul identificatorului atribuit procesului fiu ?i valoarea zero оn procesul fiu. Descrierea algoritmului:
-Nucleul se asigurг mai оntвi dacг are resurse disponibile pentru a termina cu succes apelul sistem fork. (Dacг nu sunt resurse disponibile, apelul sistem fork dг gre?.)
-Nucleul gгse?te o intrare оn tabela proceselor pentru a оncepe construcюia contextului procesului fiu ?i se asigurг cг utilizatorul care a apelat fork nu are deja prea multe procese оn curs de execuюie. De asemenea selecteazг un unic identificator pentru noul proces. -Mai departe nucleul iniюializeazг intrarea din tabela proceselor pentru procesul fiul creat prin copierea diferitelor cвmpuri din intrarea procesului pгrinte. Starea iniюialг a procesului este "оn curs de creare".

КАТЕГОРИИ:

Network | английский | архитектура эвм | астрономия | аудит | биология | вычислительная математика | география | Гражданское право | демография | дискретная математика | законодательство | история | квантовая физика | компиляторы | КСЕ - Концепция современного естествознания | культурология | линейная алгебра | литература | математическая статистика | математический анализ | Международный стандарт финансовой отчетности МСФО | менеджмент | метрология | механика | немецкий | неорганическая химия | ОБЖ | общая физика | операционные системы | оптимизация в сапр | органическая химия | педагогика | политология | правоведение | прочие дисциплины | психология (методы) | радиоэлектроника | религия | русский | сертификация | сопромат | социология | теория вероятностей | управление в технических системах | физкультура | философия | фотография | французский | школьная математика | экология | экономика | экономика (словарь) | язык Assembler | язык Basic, VB | язык Pascal | язык Си, Си++ |