Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Бақылау сұрақтары. 1. Физикалық жады түсініктемесі






1. Физикалық жады тү сініктемесі

2. Физикалық мекен тү сініктемесі

3. Виртуалды жадының қ ұ рылымы

4. Бетті аударыстыру мақ саты

13 дә ріс. Жады қ орының менеджері. Жадыны бө лу стратегиялары.Қ олданбалық интерфейстер жә не қ абық шалар.

Компьютердің есте сақ тау қ ұ рылғ ысы ең аз дегенде екі дең гейге бө лінеді: негізгі жады (бас, оперативті, физикалық) жә не ішкі жады.

Негізгі жады – бірбайтты реттелген ұ яшық, ол ұ яшық тың ә рқ айсысының нө мері (адресі) бар. Процессор негізгі жадыдан команданы алады да оны кодтайды, содан кейін оны орындайды. Командалар орындалу ү шін тағ ы да негізгі жадыдағ ы бірнеше ұ яшық тарғ а сұ раныс жасау керек болады. Негізгі жады жартыө ткізгіш технологиясын қ олдану арқ ылы дайындалады жә не ө зінің қ ұ рамындағ ыны токтан ажыратқ ан кезде жоғ алтады.

Ішкі жадыны – (бұ л дискінің негізі) кө птеген байттардан қ ұ ралғ ан кең істіктің бірө лшемді сызық тық адресіретінде қ арастыруғ а болады. Оның оперативті жадыдан айырмашылығ ы ол токқ а тә уелді емес, ү лкен сиымдылығ ы бар жә не негізгі жадыны кең ейту кезінде қ олданады.

Кө пдең гейлі схеманы былайша қ олданады. Жадының жоғ арғ ы дең гейінде орналасқ ан ақ парат ү лкен нө мерлі дең гейде сақ талады. Егер процессор керек ақ паратты і-ші дең гейден таба алмаса, онда ол келесі дең гейден іздей бастайды. Керек ақ паратты тапқ аннан кейін ол тезірек орындалатын дең гейге беріледі.

Мұ ндай ұ йымдастыру ә дісі кезінде жады дегейінде болғ анша қ атынау жылдамдығ ы азайтылады жә не де оларғ а қ атынас жасау жиілігі де азайтылады.

Бұ л жерде негізгі рө лді шектелген уақ ыт бө лігінде жады адресінің кішкене жиынымен жұ мыс істейтін нақ ты программа қ асиетімен сипатталады. Бұ л жергілікті қ асиет.

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

Бұ л кө зқ арасты қ олдайтын жадыны басқ ару схемасы сегментация деп аталады. Сегмент – ішінде сызық тық адресті қ олдайтын арнайы тағ айындалатын жады аймағ ы. Сегмент процедурағ а, массивке, стекке жә не скалярлы шамағ а ие болады, бірақ аралас типтегі ақ парат жоқ.

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

Оперативті жадыда нақ ты болатын адрестен процесс қ атынас жасайтын адрестің айырмашылығ ы ү лкен. Ә рбір жанама жағ дайда программа адресін қ олдану ә р тү рлі адреспен беріледі. Мысалы, бастапқ ы мә тіннің адресі символды болады. Компилятор осы символды адрестерді араласқ ан адрестермен (модульдің басынан n байтты) байланыстырылады. Мұ ндай адрес логикалық (кең істіктегі жады жү йесінде ол вртуальды деп аталады) адрес деп аталады. Барлық логикалық адрестердің жиынтығ ын кең істіктің (виртуальды) логикалық адресі деп атайды.

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

1. Компиляция кезең і. (Compile time) Жадыда компиляция кезінде процесстің орналасатын орныанық белгілі болса, онда физикалық адрес сә йкесінше сол орында ө ндіріледі. Программаның бастапқ ы адресін ө згерту ү шін оның кодын қ айтадан компилирлеу керек. Мысал ретінде MS-DOS-та *.com программасыналуғ а болады, ол компиляция стадиясында оны физикалық адреспен байланыстырады.

2. Жү ктеу кезең і. (Load time). Егер компиляция стадиясында программалардың орналасуы туралы ақ парат болмаса, онда компилятор араласқ ан кодты ө ндіреді. Бұ л жағ дайда байланыстыру жү ктелген уақ ытқ а дейін орындалмайды. Егер Бастапқ ы адрес ауыстырылса, онда ө згертілген шама есебінде кодты қ айта жү ктеу керек.

3. Орындалу кезең і. (Execution time). Егер процесс жадының бір жағ ынан екіншісіне ө ту кезінде ауыстырылғ ан болса, онда байланыстыру стадиясына дейін орындалмайды. Мұ нда арнайы қ ұ рылғ ының бар болғ аныдұ рыс, мысалы ауыстырушы регистрдің болғ аны дұ рыс. Қ азіргі ОЖ-нің кө бінде «орындалу» кезең інде адрес трансляциясы іске асыру арнайы аппарат механизмі ү шін қ олданылады.

Жадыны қ олдануда тиімдібақ ылаумен қ амтамасыздандыруү шін ОЖ келесі функцияларды орындау керек:

- процесстің кең істіктегі адресінің физикалық жадының белгілі бір аймағ ына ә сері;

- бір-бірімен бә секелес (конкурент) процесстер арасында жадының бө лінуі;

- процесстің кең істіктегі адресіне қ атынас жасауын бақ ылау;

- оперативті жадыда орын болмағ ан кезде ішкі жадыдан процесстердің тү суі (бү тіндей немесе біртіндеп);

- бос қ алғ ан жә не бос емес жадыны есепке алу.

Беттік жады (Страничная память). Ең қ арапайым жә не ең кө п тарағ ан беттік жадыны ұ йымдастыру, (paging) кең істіктің логикалық адресі сияқ ты, физикалық берілетін блок жиынынан немесе ө лшемді бірдей беттерден тұ рады. Сонымен қ атар лгикалық бет (page) пайда болады, ал физикалық жадыдағ ы сә йкес бірліктер бет кадрлары (страничные кадры) (page frames) деп аталады. Беттер (жә не бет кадрлары) бекітілген ұ зындық қ а ие болады. Ә рбір кадрда бір бет деректер болады. Мұ ндай ұ йымдастырылуларда сыртқ ы (фрагментация) ү зінділеу болмайды жә не процесстің соң ғ ы бетінің бө лігі шектелген.

Беттік жү йедегі логикалық адресте – қ ос реттелген (p, d), мұ ндағ ы р – виртуаль жадыдағ ы беттің нө мері, ал d – р беті жақ тауының ығ ысуы, яғ ни, адрестелген элемент орналасқ ан. Беттегі кең істік адресін бө лу, программистер ү шін байқ алмай, есептеу жү йесінде іске асырылады. Сондық тан ОЖ тұ рғ ысынан қ арағ анда адрес екі ө лшемді болып табылады, ал программист тұ рғ ысынан қ арағ анда процесстің кең істіктегі адресі сызық тық болып қ алады.

Бет кестесі (page table) процессордағ ы арнайы регистр кө мегімен адрестеледі жә не логикалық адрес бойынша кадр нө мерін анық тауғ а мү мкіндік береді. Бұ л негізгі тапсырмадан басқ а да, бет кестесіндегі жолда жазылғ ан атрибуттар кө мегімен белгілі бір бетке қ атынауғ а жә не оны қ орғ ауғ а бақ ылау ұ йымдастыруғ а болады.

Жад қ орының менеджері орын механизмі жә не жады кө лемінің қ ұ рылымдық механизміне байланысты сипатталады.

Қ ұ рылымдық базалық элемент жады блогы болып табылады. Онда жадты басқ ару блогы – басқ арушы элементтерге бө лінеді.

Толығ ымен жады қ оры жадтың бос блоктар ретімен тү зілген динамикалық қ ұ рылыммен беріледі. Реттеу бір-бірімен ө зара байланысқ ан жады блоктарының тізімімен жү ргізіледі.

Барлық бос болктар қ орлық жә не функционалдық қ ұ раушылармен сипатталатын ретке біріктіріледі.

Қ ордың қ ұ рамында сандық сипаттамалар, функционалдық та - жадтың қ орын бақ ылау бойынша жұ мыс істеу функциялары беріледі.

Жадтың блоктарымен манипуляциялау жұ мыс істеу функцияларымен анық талады:

1. ТБТ функциясы (тізімнен блокта таң дау), берілген аргумент ретінде талап етілген жады кө лемі болады. Бұ л жерде аргумент жады блогінің орны болып табылады, ал дә лірек талап бойынша бө лінетін мә ліметтердің блоктар орны.

2. ажырату функциясы – тізімнен блокты алып тастайды.

3. блокты қ айтадан тізімге енгізу (БҚ ТЕ) функциясы – блокті тізімге қ осу.

Жады қ орын бірден-бір бақ ылаушы функция динамикалық қ олдану жадының жү рісінде алынатын дефрегменттеу функциясы болып табылады.

Жадыны қ олданудың екінші маң ызды функциясы жадтағ ы программаларды реттеу болып табылады. Бұ л функцияны жү ктеу программасы іске асырады, ал жү ктеу ү рдісіне жадыдан таң дап алынғ ан функцияны жү ктелген программалық модульдің орнын анық тау ү шін сұ раныс беріледі. Алдажү ктеуші жү ктеу программасының салыстырмалы орнын тү зету ү шін – жад орнын қ олданады.

Жадыдағ ы программаларды тү зету. Тү зету тұ рақ тысы бойынша ауыспалы орынды модификациялайтын жү ктеушінің жү йелік программасымен орындалады. Бұ л жағ дайда тү зету тұ рақ тысы жады орны АПАМ болып табылады. Жү ктеме позициясы салыстырмалы жә не абсолюттік модуль деп бө леді.

Салыстырмалы модульдежадыдағ ы нақ ты орынғ а орындар қ атары байланыспағ ан жү ктелген модульге жеке топтар жеке тү зету биттарымен белгіленеді. ә р бір бит тү зетілген топ бойынша кө рсетілген кең істікті модификациялауды не модификацияламауды анық тайды.

Модификациялар тікелей берілген операндтарғ а, жылжу тұ рақ тысына, топ кодтарына жатпайды.

Жадыны тарату магниттік диск, оперативтік жады сияқ ты физикалық жадыда сақ та қ ондырғ ыларында қ олданылатын виртуалдық жадыны жү зеге асырудың белгілі бір тә сілінің кө мегі іске асырылады.

Аппаратты қ олдану мү мкіндігі осы санашық пен белгіленетін оперативтік жад ұ яшық тарына санашық тың жетуін ұ йымдастыруды анық тайды.

Сонымен жадыны тарату осы ү рдісте қ атысатын ақ парат жадыда сақ талуына ә сер етеді.

Бос жадыны тарату барысында осы немесе басқ а программалық модульдерден кейін бос жадылар жабылады. Бұ л сұ рақ тар тікелей жоспарлау принциптерімен байланысты. Жү ктеу сұ рақ тары екі тү рде шешілуі мү мкін:

1. Абсолюттік жү ктеу. ә рдайым бір адреспен орындалады. Бұ л жағ дайда программалық модуль жады аумағ ында бө лінген физикалық адреспен ғ ана тұ рады.

2. Орналастырушы жү ктеме. Программалық модуль ә рбір жү ктеме барысында тасымалданатын салыстырмалы адрестен тұ рады. Бұ л жағ дайда жадының бос блогында жү ктелген модульді бө лу ү шін жоспарлау фазасы болады.

Жү ктеуші ү шін жұ мыс параметрі тү зету тұ рақ тысы деп аталатын жә не жү ктелетін модуль басталатын бастапқ ы адрес блогын анық тайтын бастапқ ы жү ктеу адресі болып табылады.

Негізгі ә дебиеттер 2 [67-99], 3 [191-292], 9 [169-205]

Қ осымша ә дебиеттер 20 [164-207], 15[337-386]






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.