409
уредувања
(embed {{Нормативна контрола}} with wikidata information) |
с |
||
==
===
Во рамките на целиот КС се употребуваат
RОM мемориите се обично
Постојат ограничен број регистри, најчесто до 64, затоа што испитувањата покажуваат дека со денешната дека со денешната технологија постои големо забрзување на алгоритмите и зголемување на перформансите на системот со скок од 16 на 32 регистри. Скокот од 32 на 64 регистри знацително ја услознува хардверската организација и делумно го забавува системот поради адресирање регистри и воведување на големи патеки помеѓу регистрите.
Зависно од системите, кеш меморијата има големина од 8К до 2М зборови, а примарната меморија од 4М до 3G зборови. Ова се релативни величини важечки за 1997 година. Со развојот на [[технологијата]] овие параметри може да се зголемуваат на поголеми вредности.
Кеш меморијата е RАМ меморија што работи значително побрзо од примарната меморија и често со брзината на [[процесорот]] и често со брзината на процесорот заради неговото ефикасно искористување. Нејзината намена е да го снабди процесорот со доволно податоци. SАМ меморијата во рамките на кеш меморијата служи за брзо откривање дали пребаруваниот податок или инструкцијата се наоѓа кеш меморијата или во инструкцискиот бафер. Слична улога има и во контролната единица кадешто се употребува во табелата на страници.
Главната меморија може да биде организирана на ниво од збор или бајт. Се организира како меморија во еден модул или множество на паралелни модули. Главната меморија е најскапата
Сите дилеми околу намалувањето на цената на КС може да се сведат на:
* Корисниците и дизајнерите на софтвер треба да дизајнираат шеми што користата помала примарна меморија.
Користењето примарна меморија е проследено со идентификација на пристапот во форма на читање или запис, како и со односот на
Според тоа ефективниот мемориски пропусен опсег е функција од обликот на адреси генерирани од програмите. Програмите што користат фреквентно можат да се сместат во RОМ како дел од главната меморија.
Принципот на локалност се применува со имплементирање на меморијата како мемориска хиерархија. Мемориската херархија се состои од повеќе нивоа на меморијата со различни големини и брзини. Побрзите мемории се поскапи од побавните па затоа и се помали.
Целта е на корисникот даму се овозможи толку меморија колку што има со евтината технологија и брзина на пристап колку брзата меморија. Ова е соодветно со книгите на маста до кои пристапот е побрз, но нема доволно место да се сместат сите потребни книги.
Концептите за градење на меморијата влијаат многу други аспекти на компјутерот, како што е начинот на кој
===
Со помош на базни, индекси и гранични регистри и употреба на податочни дескриптори се постигнуваат ефекти на поделбата на меморијата и виртуелност. Принципот на поделба и трансформација на страниците од секундарната меморија дозволува обработка на големи програми и податочни полиња во мали примарни мемории и истовремена работа на повеќе корисници.
Сигналот што се генерира кога постои потреба од трансфер на страница е наречен странична грешка. Во случај на промена на содржината на страницата се генерира потреба од нејзиното префрлање назад во секундарната меморија, во страничната табела таа се обележува со посебно одреден дескриптор.
Обично оперативниот систем го менува процесорот кон друг корисник секогаш кога ја префрла страницата во било која насока од секундарната во главната меморија или обратно со што процесорот се ослободува од мртвото време на чекање. Работата и контролата на префрлање страници ја презема контролната единица или меморискиот арбитер.
Принципот на виртуелната меморија дава процедури за униформно адресирање, делејќи ја меморијата на мали делови, така што голем број корисници истовремено можат да ја делат меморијата. Доста често се појавуваат податоци или програми што истовремено можат да се делат меѓу повеќе корисници. Техниката на страничење е техника со користење на блокови со фиксна големина. Постои и друга техника која користи блокови со променлива големина сегментирање и се користи за подржување на помоќни методи на заштита и делење на адресен простор. Многу архитектури го делат адресниот простор на големи блокови со фиксна големина со што ја поедноставуваат заштитата помеѓу оперативниот систем и корисничките програми и ја зголемуваат ефикасноста во имплементација на страничењето.
Сегмент е блок на виртуелната меморија. Виртуелната мемориска адреса за сегментарната меморија се формира од сегментен, страничен или линиски број. Сегментирање е хардверска или софтверска метода за поделба на виртуелната меморија на повеќе сегменти. Ова дозволува корисникот засебно да употребува повеќе сегменти за неговата потреба и сегменти што ке ги дели со други корисници.
Сето тоа може да се разгледува на венови дијаграми за пресек на множества. На пример нека има три
На сличен начин страничењето може да се разгледува како две можества од кои главната меморија е со помала големина во однос на множеството дефинирано според потребите на програмата што треба да се изведува. Ефектот на страничење е всушност ефект на прозорец што се движи во рамките на дефинираното множество и во даден момент само тој дел од потребната меморија се користи во главната меморија.
Страничењето е практично поделбата на виртуелната меморија во мали блокови со цел виртуелните мемориски блокови да се пресликуваат кон физичката главна меморија со помош на табелата за страници. Сегментирањето е начин на поделба на виртуелната меморија во блокови од повеќе виртуелни страници. Сегментите можат да добијат симболички имиња и не се ограничуваат според просторните граници за виртуелните страници. Секој корисник има своја сегментна табела аналогна на табелата на страници.
Разликата меѓу техниките на страничење и сегментирањето е одредена со тоа што страничењето е поделбата на меморијата според една димензија, додека сегментирањето може да се разгледува како дво- или повеќедимензионална поделба, што ја дели меморијата на мали сегменти, додека одредени множества на вакви сегменти формираат страници.
===
Основната организација на RAM мемориската единица е приказана на сликата. Адресата преземена од процесорот се сместува во меморискиот адресен регистар (MAR), без разлика дали се побарува операција на читање или запис. Потоа адресниот декодер ја одредува локацијата на податокот.
Ако е одредена операцијата за читање тогаш податокот што се наоѓа на декодираната адреса се префрла во меморискиот податочен регистар (
Сите дејствија на читање и запис во меморијата ги контролираат мемориската контролна единица (
* Интерфејс кон надворешниот свет. Пристапот е остварен преку регистрите МАR и МDR. Надворесниот свет за меморијата на процесорот, контролната единица и влезно-излезните единици. Понекогаш интерната меморија може да се организира со различна големина од процесорскиот збор или магистралата на податоци. На пример, процесорскиот збор може да е 32 битен, магистралата 16 битна а меморијата 8 битна. Потребен е посебен хардвер за составување и разложување на бајтови во потребните зборови, којшто се имплементира во (
* Хардверски интергритет на податоци. Се остварува преку битови на парност. Мемориската контролна еденица МCU ги тестира зборовите како при прием на податоците, така и при испорака кон надворешниот свет. Ако се појави грешка се презема соодветната акција генерирајќи прекин, за да се обнови приемот на податоци. Во случај на код што овозможува детекција и корекција на податоците, се презема акција на поправка.
* Управување со меморијата. Тоа е една од најважните улоги на МCU. Освен стандардната шема на адресирање и пристап се користи техника на крање циклуси. Циклусите се крадат од процесорот кога постои влезно-излезна операција или пак проточноста во преземањето податоци на самата меморија. Доколку меморијата е значително побавна и ја зазма податочната магистрала, може да го закочи процесорот во неговата нормална работа.
* Заштита
* Локално адресирање. Повеќе паралелни преклопени мемориски единици можат да делат една МCU. Постојат ситуации кога во системот постојат повеќе единици, како на пример, 4 МCU со 8 мемориски единици. Кога меморискиот и процесорскиот збор се со различна големина, тогаш постојат нови типови на проблеми како избор на вистинскиот бајт во меморискиот збор што треба да се пренесе во процесорот.
* Управување со кеш меморијата. Ова опфаќа комплетна реализација на префрлање блокови од и назад во примарната меморија, правило на адресирање итн.
Уште од најраните денови на развојот на компјутерите, програмерите сакале неограничени количества на брза меморија. Начин за да им се помогне е формирање на илузија дека располагаат со
▲== '''Виртуелна компјутерска меморија''' ==
Како што кеш меморијата се користи како метода за овозможување брз пристап, така главната меморија меже да се однесува како кеш меморија за секундарна меморија, обично имплементирана како
▲Уште од најраните денови на развојот на компјутерите, програмерите сакале неограничени количества на брза меморија. Начин за да им се помогне е формирање на илузија дека располагаат со неограночени количества брза меморија. Постојата многу техники за создавање на оваа илузија и за подобрување на нејзините преформанси.<ref>http://www.webopedia.com/TERM/v/virtual_memory.html</ref>
▲=== '''Основни концепти''' ===
▲Како што кеш меморијата се користи како метода за овозможување брз пристап, така главната меморија меже да се однесува како кеш меморија за секундарна меморија, обично имплементирана како магнентен диск. Оваа техника се нарекува [http://en.wikipedia.org/wiki/Virtual_memory виртуелна меморија].
Постојат две главни мотивации за виртуелната меморија можноста за ефикасно делење на меморијата помеѓу повеќе програми и отстранување на тешкотиите за програмирање поради малото ограничено количество на главната меморија.
Другата мотивација е да им се овозможи на корисничките програми да зафаќаат повеќе меморија отколку што навистина има главната меморија. Порано програмерите ја одредувале поделбата на програмата на делови кои што во текот на извршувањето на програмата се сместувале во главната меморија и се обновувале во секундарната под контрола на корисничката програма. Поради тоа програмирањето претставува голем проблем. Виртуелната меморија, пак од друга страна, автоматски управува со дво нивовска хиерархија преставена со главната меморија и секундарната меморија.
За секоја програма се дефинира адресен простор односно одреден број на мемориски локации резервирани за таа програма. Со тоа се врши заштита на програмите една од друга и на оперативен систем од програмите. Виртуелната меморија го овозможува пренесувањето на адресниот простор за секоја програма. Концептот на работа на виртуелната меморија и на кеш меморијата е ист, но се користат различни термини. Така блок во виртуелната меморија се нарекува страница, а активноста што доведува до непогодување генерира грешка на страницата.
Процесорот создава виртуелна адреса која со помош на хардверот и софтверот се преведува во физичка адреса во главната меморија. Виртуелната меморија исто така го поедноставува начинот на кој се записуваат програмите во меморијата, бедејќи врши релокација. Тоа значи дека мемориските страници се сместуваат на различни места во меморијата, т.е. за да се смести една програма или една податотека не е потребно да се бара континуиран слободен дел од меморијата туку се бараат празни односно непополнети мемориски страници во физичката меморија. За оваа активност порано бил потребен додатен хардвер или специјална подршка на оперативниот систем која што виртуелната меморија ја спроведува.
===
За намалување непогодувањето на оптимизира начинот на сместување на страниците. Кога страниците се сместуваат на произволно место во меморијата, оперативниот систем при замена може да избере произволна страница.
Бидејќи секоја страница може да биде сместена на било кое место во меморијата потребен е механизам да се пронајде, т.е. се формира табела на страници. Табелата на страници е индексирана по бројот на страница од виртуелната адреса и ги содржи соодветните физички броеви на страници, како что е прикажано на сликата.
Таа ги содржи дури и оние страници што не се присутни во меморијата. На секоја програма и соодветствува табела на страници која го мапира виртуелниот адресен простор во физичка меморија. Позицијата на табелата на страници во меморијата се означува со помош на регистар кој покажува кон почетокот на табелата и кој се нарекува регистар на табелата на страници. Начинот на кој се формира физичката адреса со помош на регистарот на табелата на страници и табелата на страници е прикажано на сликата. Со помош на битот за валидност се означува дали страницата е во меморијата или не. Ако страницата е во меморијата тогаш во табелата се содржи бројот на физичката страница, а во споротива настанува грешка на страница. Бидејќи табелата ги содржи мапирањата за секоја можна страница нема потреба од ознака бит.
Освен техниката за полно асоцијативната реализација на виртуелната меморија теориски постојат и други техники за мапирање на блок од подолно во погорно мемориско ниво. Ограничено асоцијативна техника е онаа која што може страницата да ја мапира во одредено множество на страници, а дирекно мапирана страница се одредува со точно одредување каде може да се мапира секоја страница. Овие две техники не се приметуваат кај виртуелната меморија поради зголемениот трансвер на податоци помеѓу дискот и меморијата.
==
Кеш и паралелните мемории имаат цел да го зголемат пропусниот опсег на главната меморија. И двете употребуваат додатен хардвер. Успесноста од нивната примена зависи од регуларноста на адресните облици при изведување на програмите. Природно е да се постави прасањето која техника овозможува поголем пропусен опсег.
===
Има две мемориски единици со ознаки 0 и 1, првата единица за непарни и втората за парни адреси. Мемориската контролна единица
Назначената идеја за изведување паралелни преклопени мемории кај произведувачите може да носи различни имиња како на пример преклопени, повеќемемориски или фазирани. Фазираните преклопени паралелни мемории се мала модификација на обичните преклопени мемории. Тие се управуваат според друг часовен интервал.
Постојат повеќе примери на еднопроцесорски системи што користат паралелни преклопени мемории. Меѓутоа, повеќепроцесорските системи користат друг тип паралелни мемории наречени паралелни мемориски модули.
===
Принципот според кој се разгледуваат паралелни мемориски модули не се сведува на тоа како да се одржат мемориите во работата, туку колку мемориски единици се потребни за да се одржат процесорите во ефикасна работа. Ова настанува поради тоа што процесорот е значително побрз од меморијата. На сликата е прикажана една можна архитектура кадешто секој процесор може да пристапи кон некоја мемориска единица.
Секој процесор може да работи независно и пристапува кон одредена мемориска единица во секој временски чекор. Потенцијално постои можност повеќе процесори да пристапат кон исти податоци од една мемориска единица, односно пренос на податоци до повеќе процесори.
Ако аредсите се преклопени во мемориите, тогаш реализацијата на поврзување е изведена според функција модум. Меѓутоа некогаш се препорачува преземање податоци од една мемориска
Конфликтите појавени за пристап кон меморијата обично се разрешуваат во рамките на мемориската контролна единица што се гради како засебно интегрирано коло за управување со меморијата ММU. Логички разгледано, проблемите на мемориските конфликти можат да се разрешуваат и на ниви на процесорска единица или преклопувачка мрежа, но во повеќепроцесорските системи најдобра е употребата на засебно ММU интегрирано коло.
Проблемот на организирање полиња или матрици се истакнува посебно од аспект на ефикасно искористување или од аспект на зголемување на пропусниот опсег. Едноставно разместување на едно димензионалните полиња ие кога оперантите се пристапуваат паралелно, па се обрабутуваат од процесорското поле истовремено за еден временски чекор, потоа следните податоци итн.
Кај повеќе димензионални полиња постојат пристапи кон колони, редици, дијагонали, блокови што дополнително го усложнуваат начинот на пристап кон податоците односно нивната организација во меморијата.
▲== '''Заклучок''' ==
Секој компјутерски систем зависи од единиците кои овозможуваат превремено или трајно складирање на податоци. Во текстот погоре беа претставени каректеристиките и системските параметри на меморијата. Посебно техниките за страничење и сегментирање, принципот и реализацијата на виртуелната меморија, реализацијата на кеш меморијата и паралелни мемориски модули.
|
уредувања