Процесске каршы тема
Компьютерлерге бир эле учурда бир нече иш-аракеттерди жасоого мүмкүнчүлүк берүү үчүн процесс да, жип да сонун кызматты камсыздайт, бирок алардын иштөө ыкмасы боюнча алардын ортосунда айырма бар. Компьютерде иштеген бардык программалар жок дегенде бир процессти же жипти колдонот. Процесс жана жип компьютер ресурстарын бөлүшүү учурунда процессорго бир нече тапшырмалардын арасында оңой өтүүгө мүмкүндүк берет. Ошентип, программисттин милдети - жиптерди жана процесстерди эффективдүү колдонуу, жогорку өндүрүмдүүлүккө ээ процессорду жасоо. Жиптерди жана процесстерди ишке ашыруу жеткиликтүү операциялык системага жараша айырмаланат.
Процесс деген эмне?
Процесс жалпысынан белгилүү бир натыйжага жетүү үчүн үзгүлтүксүз иш-аракеттердин сериясы. Бирок, компьютерлер дүйнөсүндө процесс - бул компьютердик программанын аткарылышынын мисалы. Башка сөз менен айтканда, бул иштеп жаткан компьютердик программанын бир эле көрүнүшүнүн идеясы. Жөн гана процесстер бир же бир нече жипти камтыган бинарларды иштетип жатат.
Процесске тартылган жиптердин санына жараша процесстердин эки түрү бар. Алар бир жиптүү процесстер жана көп жиптүү процесстер. Анын аты айтып тургандай, бир жиптүү процесс - бул бир гана жиптен турган процесс. Демек, бул жип процесс болуп саналат жана бир гана иш болуп жатат. Көп жиптүү процессте бирден ашык жип бар жана бирден ашык аракет болуп жатат.
Эки же андан көп процесс процесстер аралык байланыш аркылуу бири-бири менен байланыша алат. Бирок бул абдан кыйын жана көбүрөөк ресурстарды талап кылат. Жаңы процессти жасоодо программист эки нерсени кылышы керек. Алар ата-эне процессинин кайталанышы жана жаңы процесс үчүн эстутумду жана ресурстарды бөлүштүрүү. Демек, бул чынында эле кымбат.
Жип деген эмне?
IT дүйнөсүндө жип – бул график боюнча өз алдынча башкарууга боло турган компьютердик программанын инструкцияларынын эң кичине аткарылышы. Жип - процесстин ичиндеги аткаруунун жөнөкөй жолу. Жип процесс сыяктуу күчтүү, анткени жип процесс жасай турган нерсенин баарын жасай алат. Жип жеңил процесс жана аз гана ресурстарды талап кылат. Жиптер бир эле өзгөрмөлөрдөн жана маалымат структураларынын өзгөрмөсүнөн окуп жана жаза алат. Жип жиптердин ортосунда оңой байланыша алат.
Бүгүнкү күндө көп жиптүү көптөгөн көйгөйлөргө табигый мамиле болуп калды. Чоң иш бөлүктөргө бөлүнүп, алардын ар бири жип деп аталган аткаруу бирдигине бекитилет. Бул жөн гана көп жиптүү. Бул кылдат программалоону талап кылат, анткени жиптер бир эле учурда башка жип тарабынан өзгөртүлгөн маалымат структураларын бөлүшөт, ошондой эле жиптер бирдей дарек мейкиндигин бөлүшөт. Жиптердин дагы бир артыкчылыгы - жиптер параллелизмге жетүүнүн эффективдүү жана эффективдүү жолун камсыз кылат. Системанын өткөрүү жөндөмдүүлүгүн бир нече жиптердин бир нече процессорлордо иштөөсүнө уруксат берүү менен көбөйтүүгө болот, анткени жип көз карандысыз пландаштырылуучу объект.
Мутли-жип
Процесс менен Жиптин ортосунда кандай айырма бар?
• Процесстерди түзүү кыйын, анткени ал негизги процессти жана эстутумду бөлүштүрүүнү талап кылат, ал эми жиптерди түзүү оңой, анткени алар өзүнчө дарек мейкиндигин талап кылбайт.
• Жиптер жөнөкөй тапшырмалар үчүн, ал эми процесстер колдонмону аткаруу сыяктуу оор тапшырмалар үчүн колдонулат.
• Процесстер бирдей дарек мейкиндигин бөлүшпөйт, бирок бир процесстин ичиндеги жиптер бирдей дарек мейкиндигин бөлүшөт.
• Процесстер бири-биринен көз карандысыз, бирок жиптер бири-биринен көз каранды, анткени алар бирдей дарек мейкиндигин бөлүшөт.
• Процесс бир нече жиптен турушу мүмкүн.
• Жиптер бирдей дарек мейкиндигин бөлүшкөндүктөн, виртуалдаштырылган эстутум процесстер менен гана байланышкан, бирок жиптер менен эмес. Бирок ар бир жип менен өзүнчө виртуалдаштырылган процессор байланышкан.
• Ар бир процесстин өзүнүн коду жана маалыматтары бар, ал эми процесстердин жиптери бирдей кодду жана маалыматтарды бөлүшөт.
• Ар бир процесс негизги жиптен башталат, бирок ал керек болсо кошумча жиптерди жаратышы мүмкүн.
• Процесстердин ортосундагы контекстти которуу бир эле процесстин жиптеринин ортосундагы контекстке караганда бир топ жайыраак.
• Жиптер анын маалымат сегменттерине түз кире алат, бирок процесстер маалымат сегменттеринин өзүнүн көчүрмөсүнө ээ.
• Процесстерде кошумча чыгымдар бар, бирок жиптер жок.
Корытынды:
Процесс жана Жип
Процесс жана жип - бул процессорду башкаруу жана компьютерде нускамаларды натыйжалуу жана эффективдүү аткаруу үчүн программисттер колдонгон эки ыкма. Процесс бир нече жипти камтышы мүмкүн. Жиптер эстутумду бөлүшүүнүн эффективдүү жолун камсыздайт, бирок ал процесстерге караганда бир нече аткарууларды иштетет. Ошондуктан, жиптер бир нече процесстерге альтернатива болуп саналат. Көп ядролуу процессорлорго карата өсүү тенденциясы менен жиптер программисттер дүйнөсүндөгү эң маанилүү курал болуп калат.