ЖЕКЕ ЖОБА ЖАДЫНЫ БАСҚАРУ




Презентация қосу
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
М.ӘУЕЗОВ АТЫНДАҒЫ ОҢТҮСТІК ҚАЗАҚСТАН МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ
«АҚПАРАТТЫҚ ТЕХНОЛОГИЯЛАР ЖӘНЕ ЭНЕРГЕТИКА» ЖОҒАРЫ МЕКТЕБІ
«ЕСЕПТЕУ ТЕХНИКАСЫ ЖӘНЕ БАҒДАРЛАМАЛЫҚ ҚАМТАМАСЫЗ ЕТУ» КАФЕДРАСЫ

ЖЕКЕ ЖОБА
ЖАДЫНЫ БАСҚАРУ

Орындаған: Исақ А.
Тобы: ИП-16-6к2
Қабылдаған: Мелдебекова С.
Жадыны басқару

Жады – мультипрограммалы операциялық жүйе тарапынан мұқият қадағалауды
талап ететін маңызды ресурстардың бірі. Жадының маңызды рөлі былай түсіндіріледі:
процессор программаның нұсқауларын тек олар жадыда орналасқан жағдайда ғана
орындай алады. Жады қолданбалы программалар модульдері арасында бөлінетіні
сияқты, операциялық жүйенің өз модульдері арасында да бөлінеді.
Бұрынғы операциялық жүйелерде жадына басқару жай ғана программаларды және
оның берілгендерін (деректерін) кейбір ішкі жинағыштардан (перфоленталар, магнитті
ленталар немесе магниттік дискілер) жүктеу арқылы жүргізілді.
Мультипрограммалаудың пайда болуымен операциялық жүйелерге бар жадыны бір
уақытта орындалатын бірнеше программлардың арасында бөліп беруге байланысты
жаңа мәселелер қойылды.
Мультипрограммалық жүйеде жадыны басқаруды операциялық жүйенің
функциялары:
· бос және бос емес жадыны қадағалау;
· процестерге жадыны бөліп беру және процесс орындалып болған соң жадыны
босату;
· барлық процестерді орындау үшін негізгі жадының көлемі жетпеген жағдайда
процесттердің берілгендері мен кодтарын оперативті жадыдан дискіге ауыстыру (толық
және бөліктік) және орын босаған уақытта оларды қайтарып алу;
· программалар адрестерін физикалық жадының нақты облыстарына баптау.
Процесттердің құрылуы кезінде оларға алғаш жадыны бөліп берумен қатар
операциялық жүйелер жадыны динамикалық бөлумен де айналысуы керек. Яғни процестің
орындалуы барысында қосымша уақыт сұранысын қанағаттандыруы тиіс. Қосымша
жадыға деген мұқтаждық өтелген жағдайда ол жүйеге қайтарылады. Кездейсоқ
ұзындықтағы жадыны уақыттың кездейсоқ аралығында жалпы жадыдан бөлу оның
фрагментациялануына алып келеді және осының салдарынан жадыны пайдалану тиімділігі
төмендейді. Жадыны дефрегментациялау да жадының бір функциясы болып табылады.
Жадыны басқарудың барлық әдістерін екі классқа бөлуге болады: оперативті жадымен
диск арасында процесстерді алмастыру әдісі және бұл істі жасамайтын әдістер.
Оперативті жадыны басқарудың қарапайым түрі – ол белгіленген мөлшердегі
бөліктерге бөлу. Орындалатын келесі есеп, не жалпы кезектен, не бір бөліктегі кезектен
тұрады.
Бұл жағдайда жадыны басқарушы бағыныңқы жүйе келесі жұмыстарды орындайды.
Операциялық жүйемен жұмыс уақытында жаңа қызметтік ақпараттық құрылымдар
құрады. Барлық жүйелік объектілер жадыны қажет етеді. Кейбір операциялық жүйелер
ертерек керекті көлемін жадыдан алады. Осы жағдайда кез келген операциялық жүйелер өз
кестесін, объектісін құрылымын т.б. ішкі жүйедегі жадыға сақтайды.
Жадының үлестіру алгоритмі

Әрбір процесске физикалық жадының бір үзіліссіз облысын тағайындау керек пе,
әлде жадыны «бөлшектермен» үлестіру керек пе? Жадыға жүктелген программаның
сегменттері процесстің түгел орындалу периодында бір орында тұруы керек пе, немесе
оны уақыт өткен сайын жылжытып отыру тиімді ме? Егер программа сегменттері бар
жадыға сиыспаса не істеу керек? Әр түрлі операциялық жүйелер жадыны басқарудың
осы және осы секілді базалық сұрақтарына өздігінше әр түрлі жауап береді. Бұдан әрі
операциялық жүйелердің дамуының әр түрлі периодтарында көрініс берген жадыны
үлестірудің әр түрлі әдістеріне тоқталатын боламыз. Олардың кейбіреулері өздерінің
маңыздылығын сақтап қалған және замануи операциялық жүйелерде қолданылады, ал
кейбіреулері тек танысуға ғана тұрарлық, дегенмен ол әдістерді кейбір арнайы
операциялық жүйелерден кездестіруге болады.
Суретте жадыны үлестірудің барлық алгоритмдері 2 классқа бөлінген: процесс
сегменттерін оперативті жады мен дискі арасында ауыстыруға негізделген алгоритмдер
және сыртқы жадыны қажет етпейтін алгоритмдер.
Жаданы басқару жүйесі келесі міндеттерді шешеді.

Орындауға түскен бағдарламаның өлшемімен бос бөлімдерді салыстырып, сәйкес
бөлімді таңдайды.
Бағдарламаны іске қосып, мекен-жайды құрады. Осы трансляция мерзімінде
есептеуіш іске керекті бөлімді тауып алады. Бұл жадының нақты саласына айнымалы
жүктемесіз машиналық кодын алуға мүмкіндік береді.

Артықшылығы – жүзеге асырудың қарапайымдылығы болса да, үлкен кемшілігі бар –
қатаңдылығы. Себебі, әр бөлікте тек қана бір ғана бағдарлама орындалады, онда
мултибағдарламалау деңгейі бағдарлама өлшеміне тәуелсіз бөліктер санымен шектелген.
Егер бағдарлама көлемі үлкен болмаса да, ол бір бөлікті толық қамтиды, бұл жадыны
қолдануда нәтижесіз болып саналады.
Мұндай жадыны басқару әдісі бұрынғы мултибағдарламалық операциялық жүйеде
қолданылған. Бірақ қазір де бұл белгіленген бөліммен жадыны үлестіру әдісі нақты уақыт
жүйелерінде қолданылады.
Жадыны фиксирленген бөлімдермен үлестіру
Оперативті жадыны қолданудың қарапайым әдісі жадыны бөлімдер деп аталатын
бірнеше фиксирленген облыстарға бөлу арқылы жүргізіледі. Мұндай бөлу оператор
арқылы жүйе жүктелгенде немесе жүйені орнату барысында орындалады. Бұдан кейін
бөлімдер шекарасы өзгертілмейді.
Орындалуға жіберілген кезекті жаңа процесс жалпы кезекке немесе кейбір
бөлімдердегі кезекке орналасады.
Жадыны басқарудың жүйеасты жүйесі бұл жағдайда келесі есептерді орындайды:

Бос бөлімдері бар жадылар көлемін салыстырып, жаңа түскен процесс талап
ететін сәйкес бөлімді таңдайды;
Программаны бөлімдердің біреуі мен адрестер баптауына жүктейді. Бұл жағдайда
программаны өндеуші программаның орындалу бөлімін трансляция кезеңінде өзі
көрсете алады. Бұл ауыстырушы жүктеуішті қолданбай-ақ жадының нақты бір
облысына бағытталған машиналық кодты бірден алуға мүмкіндік береді.
Жадыны динамикалық бөлімдермен бөлу
Бұл жағдайда машина жадысы алдын-ала бөлінбейді. Бастабында қосымша
әрекеттерге сақталған барлық жады бос болады. Жаңадан орындалуға келіп жатқан әр
қосымшаға процессті құру кезеңінде қажет болатын барлық жады бөлінеді (егер жадының
көлемі жетпесе, онда қосымша қабылданбайды және оған процесс құрылмайды).
Процесстің аяқталумен жады босатылады және босаған орынға басқа процесс жүктеле
алады. Осыған орай, оперативті жады кез келген сәтте кез келген көлемдегі бос және бос
емес аумақтардың кездейсоқ тізбегін береді.
Ұсынылып отырған әдісті игеруге арналған операциялық жүйенің функциялары
төмендегідей:

Жады аумағының бастапқы адрестері мен көлемдері көрсетілетін бос және бос емес
облыстар кестесін құру;
Жаңа процессті құру барысында – жадыға қойылатын талаптар анализін жасау және жаңа
процесстің кодтары мен деректерін орналастыруға көлемі сәйкес келетін бөлімді кестедегі
бос және бос емес облыстарды салыстыра отырып таңдау. Бөлімді таңдау әр түрлі
ережелерге негізделуі мүмкін, мысалы «жеткілікті көлемдегі бірінші кезіккен бөлім», «ең
кіші жеткілікті көлемдегі бөлім» немесе «ең үлкен жеткілікті көлемдегі бөлім».
Таңдалған бөлімге программаны жүктеу, бос және бос емес облыстар кестесіне түзетулер
енгізу. Берілген тәсіл программа коды орындалу барысында ауыстырылмайтынын, яғни
адрестерді баптау жүктлеумен бірге жүргізілуі мүмкін екендігін көрсетеді;
Процесстің яқталуынан кейін бос және бос емес облыстар кестесіне түзетулер енгізу.
Пайдаланылған әдебиеттер тізімі

Астахова, И.Ф. Компьютерные науки. Деревья, операционные системы,
сети / И.Ф. Астахова, И.К. Астанин и др. - М.: Физматлит, 2013.
Назаров, С.В. Современные операционные системы: Учебное пособие / С.В.
Назаров, А.И. Широков. - М.: Бином, 2013.
Таненбаум, Э. Современные операционные системы / Э. Таненбаум. - СПб.:
Питер, 2013.
Олифер В.Г., Олифер Н.А. Сетевые операционные системы. – СПб: Питер,
2011.
Гордеев А.В., Молчанов Ю.А. Системное программное обеспечение. – СПб.,
2008.

Ұқсас жұмыстар
Жадыны басқару
ЖЕКЕ ЖОБА ФАЙЛДАР ЖӘНЕ ФАЙЛДЫҚ ЖҮЙЕЛЕР
Операциялық жүйелер, орта және қабықтар
Халық тарих толқынында бағдарламасы
Процессордың тактілік жиілігі кеңарна
Компьютерлік жады
Динамикалық жады
Basecamp жобаларды басқару қызметі
Команданы басқару
Жобаның құнын басқару
Пәндер