Виртуальді жады
Виртуалды жад-Бұл компьютерді басқарудың тәсілі, бұл физикалық жадты жасырады (әр түрлі формада, мысалы: жедел жад, ROM немесе қатты дискілер) бір интерфейстің артында, олармен бірге жұмыс істейтін бағдарламаларды құруға мүмкіндік беру кездейсоқ қол жетімді үздіксіз жад массиві.
Виртуалды мекен-жайды физикалық мекен-жайға түрлендіруді жүзеге асыру үшін келесі әрекеттерді орындайды. Виртуалды жад бірдей ұзындықтағы блоктарға бөлінеді, әдетте 4 Кбайт, олар беттер (страница) деп аталады. Бұл жағдайда виртуалды жад беттері сақталатын файлдар бет файлдары немесе подкачки файлдары деп аталады. Процесс виртуалды беттегі мекен-жайға жүгінген кезде, қажет болса, бұл парақ компьютердің нақты жадына жүктеледі және осы парақпен жұмыс істеу үшін процестің мекен-жай кеңістігін конфигурациялайды. Виртуалды жадтың мұндай ұйымдастырылуы бет деп аталады.
Шын мәнінде, бұл жағдайда мекен-жай екі бөлікке бөлінеді: үлкен және кіші. Мекен — жайдың жоғарғы бөлігі нақты немесе виртуалды жадтағы бет нөмірі ретінде қарастырылады, ал оның төменгі бөлігі сол беттің ішіндегі орын ауыстыру ретінде қарастырылады.
Процесс тұрғысынан оның виртуалды жадының беттері үш күйдің бірінде болуы мүмкін:
* пайдалану үшін босатылған (free);
* пайдалану үшін процеске бөлінген (committed).
* резервтелген, бірақ процесте пайдаланылмайды (reserved);
Виртуалды жад аймағын резервтеу немесе тарату үшін процесс VirtualAlloc функциясын шақыруы керек. Егер lpAddress параметрі null болса, to амалдық жүйенің өзі виртуалды жад аймағының бастапқы мекен-жайын таңдайды. Виртуалды жад аяқталғаннан кейін оны VirtualFree функциясын пайдаланып босату керек.
Үрдістерді басқару.
Процестерді басқару дегеніміз-жүйелік және қолданбалы бағдарламалардың іске қосылуын, олардың орындалуы мен аяқталуын қамтамасыз ететін ОЖ процедуралары.
Бір тапсырмалы ОЖ-де процестерді басқару келесі міндеттерді шешеді:
бағдарламаны жадқа жүктеу, оны іске қосуға дайындау және іске қосу;
процестің жүйелік қоңырауларын орындау;
орындау барысында туындаған қателерді өңдеу;
процестің қалыпты аяқталуы;
қате немесе пайдаланушы араласқан жағдайда процесті тоқтату.
Барлық осы міндеттер салыстырмалы түрде қарапайым шешіледі.
Көп тапсырма айтарлықтай маңызды тапсырмаларды қосады:
бір процессорда процестерді параллель орындауды тиімді жүзеге асыру, процессорлар арасында процессорды ауыстыру;
берілген процестердің басымдықтарын және процессорды пайдалану статистикасын ескере отырып, келесі процесті таңдау;
бір процестің екіншісін орындауға рұқсатсыз араласу мүмкіндігін жою;
жүйелік ресурстар үшін процестер бәсекелестігі кезінде туындайтын тығырықтарды болдырмау немесе жою;
процестердің синхрондалуын және олардың арасындағы деректермен алмасуды қамтамасыз ету.
Достарыңызбен бөлісу: |