2. Процестер және басқару ағымдары. Процесс ұғымы. Процесс ұғымы қазіргі операциялық жүйелердегі негізгі ұйымдардың бірі болып табылады. Операциялық жүйе тұрғысынан алғанда, процесс жұмыс бірлігі, жүйелік ресурстарды тұтынуға өтініш. Егер процесс пен программа арасындағы қатынасты айтатын болсақ, онда келесі екі бекітім әділ:
программа бұл процесс күйінің бөлігі.
программа жұмысты орындау үшін бір процестен көбірек шақыруы мүмкін.
Процестер операциялық жүйеде иерархия құрайды. Соған сәйкес, туылған процестерді – берілген процестердің ұрпақтары, ал туылған процестің ата-анасын – бабасы деп атайық. Процестің негізгі күйлерін белгілейік (3.1 сурет):
Сурет 3.1 – Процесстің күйлері
процессорда – процесс барлық қажетті ресурстарға, оның ішінде процессорға ие, беленді күй;
Процесті құру негізінде келесі әрекеттер орындалуы керек:
процеске ерекше нөмір беру (ID);
процесті жүйеге белгілі процестер тізімін қосу;
бастапқы приоритетті анықтау;
процеспен басқару блогын қалыптастыру;
қажетті ресурстарды бөлу.
3 Ағымдылықты қолдайтын процестер. Басқару (thread) ағымы – программа командаларын табиғи ретпен орындау. Процестер традициялық және көп ағымды болып бөлінеді. Бір процестегі көп ағымдылықтың артықшылықтары бар. Бір процесте екі ағым арасында контексті ауыстырып қосу екі процесс арасындағы контексті ауыстырып қосудан оңайырақ. Орындау стегі мен процессор регистрінің мазмұны етегінен басқа барлық мәліметтер ағымдар арасында бөлінеді. Осылайша, көп ағымдылық тиілу параллеллизмді ұсынады. Көп ағымдылық қажет болатын программалардың тұтас класын көрсетуге болады: операциялық жүйелер, желілік серверлер, орныққан жүйелер, есептеу программалары.
Сигналдар – UNIX операциялық жүйесінде процестің қызметін үзуге болатын, программалық құрал. Сигналдар механизмі процестерге үрей оқиғаларға әсер етуге мүмкіндік береді. Әрбір сигналға сәйкесінше қойылады:
Келесі үш жағдай операциялық жүйемен сигналды генерация жасауға әкеледі:
ядро қолданушы клавиатурадағы клавишалардың белгілі бір комбинациясын басқан кезде процеске сигнал жібереді;
апараттық ерекше жағдайлардың пайда болуы орындалу кезеңіндегі процеске сигнал жіберейік, операциялық жүйенің ядросына бекітімді жіберуге әкеледі;
жүйенің белгілі бір программалық жағдайы сигналды жіберуді шақыруы мүмкін;
Сигналдардың келесі типтері қызығырақ болып табылады:
- кейбір шарттардың пайда болуы нәтижесінде процестің орындалуы кезінде туатын жабдықтардан сигналдар;
- SIGFPE (8) – жылжымалы немесе тиянақты үтірлі операцияларда орындау кезіндегі ерекше жағдайлар;
SIGILL (4) – дұрыс емес машиналық команданы орындауға тырысы;