Jump to content

Համակարգչի հիշողություն

Վիքիպեդիայից՝ ազատ հանրագիտարանից

Համակարգչի հիշողություն (անգլ.՝ Computer memory), տեղեկատվություն, օրինակ՝ տվյալներ և ծրագրեր, որոնք պահպանվում է համակարգչի կողմից անմիջական օգտագործման համար[1]։ «Հիշողություն» տերմինը հաճախ հոմանիշ է օպերատիվ հիշողություն (անգլ.՝ RAM), հիմնական հիշողություն (անգլ.՝ main memory) կամ առաջնային պահեստավորում (անգլ.՝ primary storage) տերմիններին։ Հիմնական հիշողության հնացած հոմանիշներից են «միջուկ» (անգլ.՝ core) և «պահեստարան» (անգլ.՝ store)[2]։

DDR4 SDRAM տիպի հիշողության մոդուլ։ 2021 թվականի տվյալներով՝ անհատական համակարգիչներում (անգլ.՝ PC) և սերվերներում օգտագործվող համակարգչային հիշողության ավելի քան 90%-ը այս տեսակին է պատկանում[3]։

Հիմնական հիշողությունն աշխատում է բարձր արագությամբ՝ զանգվածային կուտակիչների (անգլ.՝ mass storage) համեմատ, որոնք ավելի դանդաղ են, բայց մեկ բիթի հաշվով ավելի էժան են և ունեն ավելի մեծ ծավալ։ Բացի բացված ծրագրերն ու ակտիվորեն մշակվող տվյալները պահելուց, համակարգչի հիշողությունը ծառայում է որպես քեշ (անգլ.՝ mass storage cache) և գրելու բուֆեր (անգլ.՝ write buffer)՝ ընթերցման և գրելու արդյունավետությունը բարձրացնելու համար։ Օպերացիոն համակարգերը օպերատիվ հիշողության ծավալը փոխառում են քեշավորման համար, քանի դեռ այն անհրաժեշտ չէ աշխատող ծրագրերին[4]։ Անհրաժեշտության դեպքում համակարգչի հիշողության պարունակությունը կարող է տեղափոխվել կուտակիչ. դրա տարածված միջոցը վիրտուալ հիշողություն կոչվող հիշողության կառավարման տեխնիկան է։

Ժամանակակից համակարգչի հիշողությունը իրականացվում է որպես կիսահաղորդչային հիշողություն (անգլ.՝ semiconductor memory)[5][6], որտեղ տվյալները պահվում են հիշողության բջիջներում, որոնք ստեղծված են MOS տրանզիստորներից և ինտեգրալ սխեմայի վրա գտնվող այլ բաղադրիչներից[7]։ Գոյություն ունեն կիսահաղորդչային հիշողության երկու հիմնական տեսակներ՝ կայուն (անգլ.՝ non-volatile) և անկայուն (անգլ.՝ volatile)։ Կայուն հիշողության օրինակներ են ֆլեշ հիշողությունը և ROM, PROM, EPROM և EEPROM հիշողությունները։ Անկայուն հիշողության օրինակներ են դինամիկ օպերատիվ հիշողությունը (անգլ.՝ dynamic random-access memory (DRAM)), որն օգտագործվում է առաջնային պահեստավորման համար, և ստատիկ օպերատիվ հիշողությունը (անգլ.՝ static random-access memory (SRAM)), որը հիմնականում օգտագործվում է CPU-ի քեշի համար։

Կիսահաղորդչային հիշողության մեծ մասը կազմակերպված է հիշողության բջիջներով, որոնցից յուրաքանչյուրը պահում է մեկ բիթ (0 կամ 1)։ Ֆլեշ հիշողության կազմակերպումը ներառում է ինչպես մեկ բիթ մեկ հիշողության բջջում, այնպես էլ բազմամակարդակ բջիջ, որն ունակ է պահելու մեկից ավելի բիթ։ Հիշողության բջիջները խմբավորվում են ֆիքսված բառի երկարությամբ բառերի մեջ, օրինակ՝ 1, 2, 4, 8, 16, 32, 64 կամ 128 բիթ։ Յուրաքանչյուր բառի հասանելի է դառնում N բիթանոց երկուական հասցեով, ինչը հնարավորություն է տալիս հիշողության մեջ պահել 2N բառ։

Համակարգչային հիշողության և պահեստավորման պատմականորեն ամենացածր մանրածախ գինը։
IBM 602-ում՝ վաղ շրջանի բազմապատկիչ հաշվիչում, օգտագործված էլեկտրամեխանիկական հիշողություն։
ENIAC-ի մի հատվածի հետևի դետալ, որը ցույց է տալիս էլեկտրոնային լամպերը։
Վիլյամսի խողովակը որպես հիշողություն օգտագործվել է IAS համակարգչում մոտավորապես 1951 թվականին։
8 ԳԲ microSDHC քարտ 8 բայթ մագնիսական միջուկային հիշողությամբ (1 միջուկը 1 բիթ է:

1940-ականների սկզբին հիշողության տեխնոլոգիան հաճախ թույլ էր տալիս մի քանի բայթ ծավալ։ Առաջին ծրագրավորվող էլեկտրոնային թվային համակարգիչը՝ ENIAC-ը, որն օգտագործել է հազարավոր էլեկտրոնային լամպեր, կարող էր կատարել պարզ հաշվարկներ՝ օգտագործելով էլեկտրոնային լամպերում պահված 10 տասնորդական թվանշանից բաղկացած 20 թիվ։

Համակարգչի հիշողության հաջորդ կարևոր առաջընթացը ակուստիկ ուշացման գծային հիշողությունն էր, որը մշակվել է Ջ. Պրեսպեր Էքերտի կողմից 1940-ականների սկզբին։ Ապակե խողովակը լցված էր սնդիկով և երկու ծայրերում փակված էր քվարցե բյուրեղներով։ Ուշացման գծերը կարող էին պահել տեղեկատվության բիթեր՝ սնդիկի միջով տարածվող ձայնային ալիքների տեսքով։ Քվարցե բյուրեղները ծառայել են որպես փոխակերպիչներ՝ բիթերը կարդալու և գրելու համար։ Այս հիշողության ծավալը սահմանափակ էր՝ մինչև մի քանի հազար բիթ։

Ուշացման գծի երկու այլընտրանքներ՝ Ուիլյամսի խողովակը և Սելեկտրոնի խողովակը, ստեղծվել են 1946 թվականին։ Երկուսն էլ որպես պահեստավորման միջոց ապակե խողովակներում օգտագործել են էլեկտրոնային ճառագայթներ։ Կաթոդային ճառագայթային խողովակներ օգտագործելով՝ Ֆրեդ Ուիլյամսը ստեղծել է Ուիլյամսի խողովակը, որը առաջին պատահական հասանելիությամբ օպերատիվ հիշողությունն էր։ Ուիլյամսի խողովակը կարող էր ավելի շատ տեղեկատվություն պահել, քան Սելեկտրոնի խողովակը (Սելեկտրոնը սահմանափակ էր 256 բիթով, իսկ Ուիլյամսի խողովակը կարող էր պահել հազարավոր) և ավելի էժան էր։ Այնուամենայնիվ, Ուիլյամսի խողովակը չափազանց զգայուն էր շրջակա միջավայրի խանգարումների նկատմամբ։

1940-ականների վերջին սկսել են ջանքեր գործադրել՝ անգոլորշի հիշողություն գտնելու համար։ Մագնիսական միջուկային հիշողությունը թույլ էր տալիս պահել տվյալները նույնիսկ էներգիայի անջատումից հետո։ Այն մշակվել է Ֆրեդերիկ Վ. Վիեհեի և Վան Անի կողմից 1940-ականների վերջին, բարելավվել է Ջեյ Ֆորեսթերի և Յան Ա. Ռաջչմանի կողմից 1950-ականների սկզբին և առևտրայնացվել է 1953 թվականին Whirlwind I համակարգչի հետ[8]։ Մագնիսական միջուկային հիշողությունը հիշողության գերակշռող տեսակն էր մինչև 1960-ականներին MOS կիսահաղորդչային հիշողության զարգացումը[9]։

Առաջին կիսահաղորդչային հիշողությունը իրականացվել է 1960-ականների սկզբին՝ որպես տրիգերային (անգլ.՝ flip-flop) սխեմա՝ օգտագործելով երկբևեռ տրանզիստորներ[9]։ Դիսկրետ սարքերից պատրաստված կիսահաղորդչային հիշողությունն առաջին անգամ առաքվել է Texas Instruments-ի կողմից ԱՄՆ ռազմաօդային ուժերին 1961 թվականին։ Նույն տարում Fairchild Semiconductor-ի ինժեներ Բոբ Նորմանն առաջարկել է պինդմարմնային հիշողության գաղափարը ինտեգրալ սխեմայի (անգլ.՝ IC) չիպի վրա[10]։ Առաջին բիպոլյար կիսահաղորդչային հիշողության IC չիպը SP95-ն էր, որը IBM-ը ներկայացրել է 1965 թվականին[9]։ Չնայած կիսահաղորդչային հիշողությունն ավելի լավ արդյունավետություն էր ապահովում, քան մագնիսական միջուկային հիշողությունը, այն ավելի մեծ էր և թանկ և չի փոխարինել մագնիսական միջուկային հիշողությանը մինչև 1960-ականների վերջը[9][11]։

MOS հիշողություն

[խմբագրել | խմբագրել կոդը]

Մետաղ-օքսիդ-կիսահաղորդիչ դաշտային տրանզիստորի (անգլ.՝ metal–oxide–semiconductor field-effect transistor (MOSFET)) գյուտը հնարավորություն է տվել գործնականում օգտագործել մետաղ-օքսիդ-կիսահաղորդիչ (անգլ.՝ metal–oxide–semiconductor (MOS)) տրանզիստորները որպես հիշողության բջիջների պահեստային տարրեր։ MOS հիշողությունը մշակվել է Ջոն Շմիդտի կողմից Fairchild Semiconductor-ում 1964 թվականին[12]։ Բացի ավելի բարձր արդյունավետությունից, MOS կիսահաղորդչային հիշողությունն ավելի էժան էր և ավելի քիչ էներգիա էր սպառում, քան մագնիսական միջուկային հիշողությունը[13]։ 1965 թվականին Թագավորական ռադիոլոկացիոն հաստատության աշխատակիցներ Ջ. Վուդը և Ռ. Բոլը առաջարկել են թվային պահեստավորման համակարգեր, որոնք օգտագործում էին CMOS (լրացուցիչ MOS) հիշողության բջիջներ, ի լրումն MOSFET էներգիայի սարքերի հոսանքի աղբյուրների, միացված խաչաձև կապի, անջատիչների և ուշացման գծի պահեստավորման համար[14]։ Սիլիցիումե դարպասով MOS ինտեգրալ սխեմայի (MOS IC) տեխնոլոգիայի մշակումը Ֆեդերիկո Ֆագինի կողմից Fairchild-ում 1968 թվականին հնարավորություն է տվել արտադրել MOS հիշողության չիպեր[15]։ NMOS հիշողությունը առևտրայնացվել է IBM-ի կողմից 1970-ականների սկզբին[16]։ MOS հիշողությունը 1970-ականների սկզբին առաջ է անցել մագնիսական միջուկային հիշողությունից՝ դառնալով գերակշռող հիշողության տեխնոլոգիա[13]։

RAM-ի երկու հիմնական տեսակներն են ստատիկ օպերատիվ հիշողությունը (անգլ.՝ SRAM) և դինամիկ օպերատիվ հիշողությունը (անգլ.՝ DRAM)։ Բիպոլյար SRAM-ը հայտնագործել է Ռոբերտ Նորմանը Fairchild Semiconductor-ում 1963 թվականին[9], որին հաջորդել է MOS SRAM-ի մշակումը Ջոն Շմիդտի կողմից Fairchild-ում 1964 թվականին[13]։ SRAM-ը դարձել է մագնիսական միջուկային հիշողության այլընտրանք, բայց տվյալների յուրաքանչյուր բիթի համար պահանջում է վեց տրանզիստոր[17]։ SRAM-ի առևտրային օգտագործումը սկսվել է 1965 թվականին, երբ IBM-ը ներկայացրել է իր SP95 SRAM չիպը System/360 Model 95-ի համար[9]։

Տոշիբան ներկայացրել է երկբռեռ DRAM հիշողության բջիջները իր Toscal BC-1411 էլեկտրոնային հաշվիչի համար 1965 թվականին[18][19]։ Չնայած այն ապահովում էր բարելավված արդյունավետություն, երկբևեռ DRAM-ը չէր կարող մրցակցել այդ ժամանակ գերակշռող մագնիսական միջուկային հիշողության ցածր գնի հետ[20]։ MOS տեխնոլոգիան ժամանակակից DRAM-ի հիմքն է։ 1966 թվականին Ռոբերտ Հ. Դենարդը IBM Thomas J. Watson-ի հետազոտական կենտրոնում աշխատել է MOS հիշողության վրա։ Ուսումնասիրելով MOS տեխնոլոգիայի բնութագրերը՝ նա պարզել է, որ հնարավոր է կառուցել կոնդենսատորներ, և որ լիցքը կամ լիցքի բացակայությունը MOS կոնդենսատորի վրա կարող է ներկայացնել բիթի 1-ը և 0-ն, իսկ MOS տրանզիստորը կարող է վերահսկել լիցքի գրումը կոնդենսատորի վրա։ Սա հանգեցրել է նրա կողմից մեկ տրանզիստորով DRAM հիշողության բջջի մշակմանը[17]։ 1967 թվականին Դենարդը արտոնագիր է ներկայացրել MOS տեխնոլոգիայի վրա հիմնված մեկ տրանզիստորով DRAM հիշողության բջջի համար[21]։ Սա հանգեցրել է առաջին առևտրային DRAM IC չիպին՝ Intel 1103-ին, 1970 թվականի հոկտեմբերին[22][23][24]։ Հետագայում սինխրոն դինամիկ օպերատիվ հիշողությունը (անգլ.՝ Synchronous dynamic random-access memory (SDRAM)) առաջին անգամ ներկայացվել է Samsung KM48SL2000 չիպով 1992 թվականին[25][26]։

«Հիշողություն» տերմինը հաճախ օգտագործվում է նաև անգոլորշի հիշողությունների համար, ներառյալ կարդալու համար նախատեսված հիշողությունից (անգլ.՝ read-only memory (ROM)) մինչև ժամանակակից ֆլեշ հիշողությունը։ Ծրագրավորվող կարդալու համար նախատեսված հիշողությունը (անգլ.՝ Programmable read-only memory (PROM)) հայտնագործել է Վեն Ցինգ Չոուն 1956 թվականին՝ աշխատելով American Bosch Arma Corporation-ի Arma բաժնում[27][28]։ 1967 թվականին Bell Labs-ի Դավոն Կահնգը և Սայմոն Սզեն առաջարկել են, որ MOS կիսահաղորդչային սարքի լողացող դարպասը կարող է օգտագործվել վերածրագրավորվող ROM-ի բջիջի համար, ինչը հանգեցրել է Ինթելի Դով Ֆրոհմանի կողմից EPROM-ի (ջնջվող PROM) գյուտին 1971 թվականին[29]։ EEPROM-ը (էլեկտրականորեն ջնջվող PROM) մշակվել է Յասուո Տարուիի, Յուտակա Հայաշիի և Կիյոկո Նագայի կողմից Electrotechnical Laboratory-ում 1972 թվականին[30]։ Ֆլեշ հիշողությունը հայտնագործվել է Ֆուջիո Մասուոկայի կողմից Տոշիբաում 1980-ականների սկզբին[31][32]։ Մասուոկան և գործընկերները ներկայացրել են NOR ֆլեշի գյուտը 1984 թվականին[33], իսկ այնուհետև՝ NAND ֆլեշը 1987 թվականին[34]։ Toshiba-ն NAND ֆլեշ հիշողությունը առևտրայնացրել է 1987 թվականին[35][36][37]։

Տեխնոլոգիայի զարգացումները և մասշտաբի տնտեսությունները հնարավոր են դարձրել այսպես կոչված շատ մեծ հիշողությամբ (անգլ.՝ very large memory (VLM)) համակարգիչների ստեղծումը[37]։

Հիշողության տեսակները

[խմբագրել | խմբագրել կոդը]

Անկայուն հիշողություն

[խմբագրել | խմբագրել կոդը]
Տարբեր հիշողության մոդուլներ, որոնք պարունակում են DRAM-ի տարբեր տեսակներ (վերևից ներքև). DDR SDRAM, SDRAM, EDO DRAM և FPM DRAM

Գոլորշիացող հիշողությունը համակարգչային հիշողություն է, որը պահպանում է տվյալները միայն այն ժամանակ, երբ միացված է էներգիայի աղբյուրին։ Էներգիայի անջատվելու դեպքում հիշողության ամբողջ պարունակությունը կորչում է։ Ժամանակակից կիսահաղորդչային գոլորշիացող հիշողության հիմնական տեսակներն են ստատիկ RAM (SRAM) և դինամիկ RAM (DRAM)[Ն 1]։ DRAM-ը գերիշխում է որպես սեղանի համակարգիչների հիմնական համակարգային հիշողություն։ Այն մեկ բիթի համար օգտագործում է ընդամենը մեկ տրանզիստոր և մեկ կոնդենսատոր, ինչը թույլ է տալիս հասնել շատ ավելի բարձր խտության և ավելի ցածր արժեքի։ Սակայն, DRAM-ը կառավարման և ինտերֆեյսի առումով ավելի բարդ է, քանի որ տվյալները պահպանելու համար պահանջում է պարբերական թարմացումներ։

SRAM-ն օգտագործվում է հիմնականում որպես պրոցեսորի քեշ հիշողություն։ Այն պահպանում է իր պարունակությունը, քանի դեռ էներգիա է ստանում՝ առանց թարմացման ցիկլերի անհրաժեշտության։ SRAM-ն ունի ավելի պարզ ինտերֆեյս, բայց մեկ բիթի համար սովորաբար օգտագործում է վեց տրանզիստոր, ինչի պատճառով այն ավելի թանկ է և ունի ավելի ցածր խտություն, քան DRAM-ը։ SRAM-ը կարելի է գտնել նաև փոքր ներկառուցված համակարգերում, որոնք պահանջում են քիչ հիշողություն[1][23][37]։

Կայուն հիշողություն

[խմբագրել | խմբագրել կոդը]

Կայուն հիշողությունը կարող է պահպանել տեղեկատվությունը նույնիսկ այն դեպքում, երբ էներգիա չի ստանում։ Այս տեսակի հիշողության օրինակներ են՝ ROM-ը, ֆլեշ հիշողությունը, մագնիսական կուտակիչների մեծ մասը (օրինակ՝ կոշտ սկավառակները, ճկուն սկավառակները և մագնիսական ժապավենը), օպտիկական սկավառակները, հիշողության ավելի հին մեթոդները, ինչպիսիք են մագնիսական թմբուկը, ծակոտաժապավենը և ծակոտաքարտը[37]։ Զարգացման փուլում գտնվող կայուն հիշողության տեխնոլոգիաներից են՝ ֆեռոէլեկտրական RAM-ը, ծրագրավորվող մետաղացման բջիջը, սպին-տրանսֆերային մագնիսական RAM-ը, SONOS-ը, ռեզիստիվ պատահական հասանելիությամբ հիշողությունը, ռեյսթրեք հիշողությունը, Nano-RAM-ը, 3D XPoint-ը և միլիպեդ հիշողությունը։

Կիսակայուն հիշողություն

[խմբագրել | խմբագրել կոդը]

Հիշողության երրորդ տեսակը կիսակայունն է։ Այս տերմինն օգտագործվում է այնպիսի հիշողություն նկարագրելու համար, որն էներգիայի անջատումից հետո ունի սահմանափակ կայուն պահպանման տևողություն, բայց, ի վերջո, տվյալները կորչում են։ Կիսակայուն հիշողություն օգտագործելու տիպիկ նպատակը անկայուն հիշողություններին բնորոշ բարձր արդյունավետության և դիմացկունության ապահովումն է՝ միաժամանակ տալով կայուն հիշողության որոշ առավելություններ։

Օրինակներ՝

  1. Մաշված բջիջների օգտագործում. որոշ կայուն հիշողության տեսակներ մաշվում են գրելու ժամանակ։ Մաշված բջիջն, չնայած ավելի մեծ անկայունության, շարունակում է աշխատել։ Հաճախակի գրվող տվյալների տեղերը կարող են ուղղորդվել դեպի մաշված սխեմաները։ Քանի դեռ տեղեկատվությունը թարմացվում է որոշակի պահպանման ժամանակահատվածում, տվյալները մնում են վավեր։ Որոշ ժամանակ անց, եթե թարմացում չի եղել, տվյալների արժեքը պատճենվում է ավելի քիչ մաշված սխեմայի մեջ, որն ունի ավելի երկար պահպանման ժամկետ։ Սկզբում մաշված հատվածում գրելը թույլ է տալիս ապահովել գրելու բարձր արագություն՝ միաժամանակ խուսափելով չմաշված սխեմաների մաշվելուց[38]։
  2. Spin-transfer torque magnetic RAM (STT-RAM) հիշողությունը կարող է դառնալ կայուն՝ կառուցելով մեծ բջիջներ, բայց դա մեծացնում է մեկ բիթի արժեքը և էներգիայի պահանջները և նվազեցնում գրելու արագությունը։ Փոքր բջիջներ օգտագործելը բարելավում է ծախսերը, էներգիան և արագությունը, բայց հանգեցնում է կիսակայուն պահվածքի։ Որոշ հավելվածներում մեծացած անկայունությունը կարելի է կառավարել՝ ապահովելով կայուն հիշողության շատ առավելություններ, օրինակ՝ անջատելով էներգիան, բայց սարքը միացնելով մինչև տվյալների կորուստը, կամ քեշավորելով միայն ընթերցման համար նախատեսված տվյալները և մաքրելով քեշը, եթե անջատման ժամանակահատվածը գերազանցում է կայունի շեմը[39]։

«Կիսակայուն» տերմինն օգտագործվում է նաև այլ հիշողության տեսակներից կազմված կիսակայուն վարքագիծ նկարագրելու համար, ինչպես օրինակ nvSRAM-ը, որը նույն չիպի վրա համատեղում է SRAM-ը և կայուն հիշողությունը։ Այս դեպքում արտաքին ազդանշանը տվյալները պահպանում է անկայուն հիշողությունից կայուն հիշողություն, բայց եթե էներգիան անջատվում է մինչև պահպանումը, տվյալները կորչում են։ Մեկ այլ օրինակ է մարտկոցով ապահովված RAM-ը, որն օգտագործում է արտաքին մարտկոց՝ հիշողության սարքը սնուցելու համար՝ արտաքին էներգիայի կորստի դեպքում։ Եթե էներգիան երկար ժամանակ անջատված է, մարտկոցը կարող է սպառվել՝ հանգեցնելով տվյալների կորստի[37]։

Հիշողության կառավարում

[խմբագրել | խմբագրել կոդը]

Հիշողության պատշաճ կառավարումը կարևոր է համակարգչային համակարգի ճիշտ աշխատանքի համար։ Ժամանակակից օպերացիոն համակարգերն ունեն բարդ համակարգեր՝ հիշողությունը ճիշտ կառավարելու համար։ Դա չկատարելը կարող է հանգեցնել սխալների կամ ցածր արդյունավետության։

Հիշողության ոչ պատշաճ կառավարումը ծրագրային ապահովման մեջ սխալների և անվտանգության հետ կապված խնդիրների տարածված պատճառ է։ Ստորև ներկայացված են ամենատարածված դեպքերը.

  • Հիշողության արտահոսք (անգլ.՝ memory leak )․ այս սխալը տեղի է ունենում, երբ ծրագիրը օպերացիոն համակարգից հիշողություն է հատկացնում, բայց չի ազատում այն, երբ այլևս անհրաժեշտ չէ։ Ժամանակի ընթացքում այդ ծրագիրն աստիճանաբար ավելի ու ավելի շատ հիշողություն է զբաղեցնում՝ հանգեցնելով համակարգի դանդաղեցմանը, իսկ վերջում՝ ծրագրի կամ նույնիսկ ամբողջ համակարգի խափանմանը։
  • Սեգմենտացիոն սխալ (անգլ.՝ segmentation fault)․ սա տեղի է ունենում, երբ ծրագիրը փորձում է մուտք գործել հիշողության մի հատված, որի համար այն թույլտվություն չունի։ Օպերացիոն համակարգը, հայտնաբերելով նման խախտում, ավտոմատ կերպով դադարեցնում է ծրագրի աշխատանքը՝ կանխելով համակարգի անվտանգության հնարավոր խախտումները։
  • Բուֆերի գերլցում (անգլ.՝ buffer overflow)․ այն տեղի է ունենում, երբ ծրագիրը հատկացված հիշողության տարածքից դուրս տվյալներ է գրում՝ անցնելով այլ ծրագրերին հատկացված տարածք։ Սա կարող է առաջացնել ծրագրի անկանոն աշխատանք, տվյալների կորուստ կամ նույնիսկ համակարգի ամբողջական խափանում։ Այս տեսակի խոցելիությունը հաճախ օգտագործվում է չարամիտ հաքերների կողմից՝ համակարգչի վերահսկողությունն ստանձնելու համար։

Վիրտուալ հիշողություն

[խմբագրել | խմբագրել կոդը]

Վիրտուալ հիշողությունը օպերացիոն համակարգի կողմից իրականացվող հիշողության կառավարման համակարգ է, որին սովորաբար աջակցում է կենտրոնական պրոցեսորի (CPU) մաս կազմող հիշողության կառավարման բլոկը (MMU)։ Այն թույլ է տալիս օգտագործել մի քանի տեսակի հիշողություն՝ ընդլայնելով քեշի հիերարխիան։ Օրինակ՝ տվյալների մի մասը կարող է պահվել արագագործ RAM-ում, իսկ մյուս մասը՝ ավելի դանդաղ կոշտ սկավառակի վրա (օրինակ՝ swapfile-ի միջոցով)։

Վիրտուալ հիշողությունն ունի մի քանի առավելություն.

  • Ծրագրավորողի համար հարմարավետություն: Ծրագրավորողներն այլևս ստիպված չեն մտածել, թե որտեղ են ֆիզիկապես պահվում իրենց տվյալները կամ արդյոք օգտատիրոջ համակարգիչն ունի բավարար հիշողություն։
  • Արդյունավետության բարձրացում: Օպերացիոն համակարգն ինքնաբերաբար տեղադրում է ակտիվորեն օգտագործվող տվյալները արագագործ RAM-ում՝ ապահովելով դրանց արագ մուտքը։

Այնուամենայնիվ, երբ RAM-ի ծավալը բավարար չէ բոլոր ծրագրերն աշխատեցնելու համար, համակարգիչը կարող է ավելի շատ ժամանակ ծախսել տվյալները RAM-ի և կոշտ սկավառակի միջև տեղափոխելու վրա, քան իրական առաջադրանքները կատարելու։ Այս երևույթը հայտնի է որպես թրեշինգ (անգլ.՝ thrashing) և հանգեցնում է համակարգչի կտրուկ դանդաղեցման։

Պաշտպանված հիշողություն

[խմբագրել | խմբագրել կոդը]

Պաշտպանված հիշողությունը համակարգ է, որի միջոցով յուրաքանչյուր ծրագրի հատկացվում է իր սեփական հիշողության տարածքը, և այն զերծ է պահվում այդ սահմաններից դուրս աշխատելուց։ Եթե օպերացիոն համակարգը հայտնաբերում է, որ ծրագիրը փորձել է փոփոխել մի հիշողություն, որը իրեն չի պատկանում, այդ ծրագիրն անմիջապես դադարեցվում է։ Այս մոտեցման շնորհիվ միայն խախտում կատարած ծրագիրն է խափանվում, իսկ մյուս ծրագրերը պաշտպանված են անսպասելի խնդիրներից, անկախ նրանից՝ խնդիրը պատահաբար է առաջացել, թե դիտավորյալ։ Պաշտպանված հիշողության օգտագործումը զգալիորեն բարձրացնում է համակարգի ինչպես հուսալիությունը, այնպես էլ անվտանգությունը։

Առանց պաշտպանության հիշողության աշխատանքի դեպքում մեկ ծրագրի սխալը կարող է փոխել մեկ այլ ծրագրի կողմից օգտագործվող հիշողությունը։ Սա կհանգեցնի նրան, որ երկրորդ ծրագիրը կաշխատի կոռումպացված տվյալներով՝ անկանխատեսելի արդյունքներով։ Եթե վնասվի օպերացիոն համակարգի հիշողությունը, ամբողջ համակարգիչը կարող է խափանվել և պահանջել վերագործարկում։ Երբեմն ծրագրերը միտումնավոր են փոփոխում ուրիշ ծրագրերի հիշողությունը։ Սա անում են վիրուսները և վնասակար ծրագրերը՝ համակարգիչը վերահսկելու համար։ Այն կարող է օգտագործվել նաև անվնաս նպատակներով, օրինակ՝ դեբագերների կողմից՝ ծրագրի մեջ ընդհատման կետեր կամ կապի կետեր (անգլ.՝ hooks) տեղադրելու համար։

  1. SRAM-ին և DRAM-ին մրցակցելու կամ դրանց փոխարինելու փորձ կատարած այլ անկայուն հիշողության տեխնոլոգիաներից են՝ Z-RAM-ը և A-RAM-ը։

Ծանոթագրություններ

[խմբագրել | խմբագրել կոդը]
  1. 1,0 1,1 Hemmendinger, David (2016 թ․ փետրվարի 15). «Computer memory». Encyclopedia Britannica. Վերցված է 2019 թ․ հոկտեմբերի 16-ին.
  2. A.M. Turing and R.A. Brooker (1952). Programmer's Handbook for Manchester Electronic Computer Mark II Արխիվացված 2014-01-02 Wayback Machine. University of Manchester.
  3. Read, Jennifer (2020 թ․ նոյեմբերի 5). «DDR5 Era To Officially Begin In 2021, With DRAM Market Currently Transitioning Between Generations, Says TrendForce». EMSNow. Վերցված է 2022 թ․ նոյեմբերի 2-ին.
  4. «Documentation for /proc/sys/vm/».
  5. «The MOS Memory Market» (PDF). Integrated Circuit Engineering Corporation. Smithsonian Institution. 1997. Արխիվացված (PDF) օրիգինալից 2003 թ․ հուլիսի 25-ին. Վերցված է 2019 թ․ հոկտեմբերի 16-ին.
  6. «MOS Memory Market Trends» (PDF). Integrated Circuit Engineering Corporation. Smithsonian Institution. 1998. Արխիվացված (PDF) օրիգինալից 2019 թ․ հոկտեմբերի 16-ին. Վերցված է 2019 թ․ հոկտեմբերի 16-ին.
  7. «1960 - Metal Oxide Semiconductor (MOS) Transistor Demonstrated». The Silicon Engine. Computer History Museum.
  8. «1953: Whirlwind computer debuts core memory». Computer History Museum. Վերցված է 2019 թ․ օգոստոսի 2-ին.
  9. 9,0 9,1 9,2 9,3 9,4 9,5 «1966: Semiconductor RAMs Serve High-speed Storage Needs». Computer History Museum. Վերցված է 2019 թ․ հունիսի 19-ին.
  10. «1953: Transistors make fast memories | The Storage Engine | Computer History Museum». www.computerhistory.org. Վերցված է 2019 թ․ նոյեմբերի 14-ին.
  11. Orton, John W. (2009). Semiconductors and the Information Revolution: Magic Crystals that made IT Happen. Academic Press. էջ 104. ISBN 978-0-08-096390-7.
  12. Solid State Design - Vol. 6. Horizon House. 1965.
  13. 13,0 13,1 13,2 «1970: MOS Dynamic RAM Competes with Magnetic Core Memory on Price». Computer History Museum. Վերցված է 2019 թ․ հուլիսի 29-ին.
  14. Wood, J.; Ball, R. (1965 թ․ փետրվար). «The use of insulated-gate field-effect transistors in digital storage systems». 1965 IEEE International Solid-State Circuits Conference. Digest of Technical Papers. Vol. VIII. էջեր 82–83. doi:10.1109/ISSCC.1965.1157606.
  15. «1968: Silicon Gate Technology Developed for ICs». Computer History Museum. Վերցված է 2019 թ․ օգոստոսի 10-ին.
  16. Critchlow, D. L. (2007). «Recollections on MOSFET Scaling». IEEE Solid-State Circuits Society Newsletter. 12 (1): 19–22. doi:10.1109/N-SSC.2007.4785536.
  17. 17,0 17,1 «DRAM». IBM100. IBM. 2017 թ․ օգոստոսի 9. Վերցված է 2019 թ․ սեպտեմբերի 20-ին.
  18. «Spec Sheet for Toshiba "TOSCAL" BC-1411». Old Calculator Web Museum. Արխիվացված օրիգինալից 2017 թ․ հուլիսի 3-ին. Վերցված է 2018 թ․ մայիսի 8-ին.
  19. «Toshiba "Toscal" BC-1411 Desktop Calculator». Արխիվացված է օրիգինալից 2007 թ․ մայիսի 20-ին.
  20. «1966: Semiconductor RAMs Serve High-speed Storage Needs». Computer History Museum.
  21. «Robert Dennard». Encyclopedia Britannica. Վերցված է 2019 թ․ հուլիսի 8-ին.
  22. «Intel: 35 Years of Innovation (1968–2003)» (PDF). Intel. 2003. Արխիվացված է օրիգինալից (PDF) 2021 թ․ նոյեմբերի 4-ին. Վերցված է 2019 թ․ հունիսի 26-ին.
  23. 23,0 23,1 The DRAM memory of Robert Dennard history-computer.com
  24. Lojek, Bo (2007). History of Semiconductor Engineering. Springer Science & Business Media. էջեր 362–363. ISBN 9783540342588. «The i1103 was manufactured on a 6-mask silicon-gate P-MOS process with 8 μm minimum features. The resulting product had a 2,400 µm, 2 memory cell size, a die size just under 10 mm², and sold for around $21.»
  25. «KM48SL2000-7 Datasheet». Samsung. 1992 թ․ օգոստոս. Վերցված է 2019 թ․ հունիսի 19-ին.
  26. «Electronic Design». Electronic Design. Hayden Publishing Company. 41 (15–21). 1993. «The first commercial synchronous DRAM, the Samsung 16-Mbit KM48SL2000, employs a single-bank architecture that lets system designers easily transition from asynchronous to synchronous systems.»
  27. Han-Way Huang (2008 թ․ դեկտեմբերի 5). Embedded System Design with C805. Cengage Learning. էջ 22. ISBN 978-1-111-81079-5. Արխիվացված օրիգինալից 2018 թ․ ապրիլի 27-ին.
  28. Marie-Aude Aufaure; Esteban Zimányi (2013 թ․ հունվարի 17). Business Intelligence: Second European Summer School, eBISS 2012, Brussels, Belgium, July 15-21, 2012, Tutorial Lectures. Springer. էջ 136. ISBN 978-3-642-36318-4. Արխիվացված օրիգինալից 2018 թ․ ապրիլի 27-ին.
  29. «1971: Reusable semiconductor ROM introduced». Computer History Museum. Վերցված է 2019 թ․ հունիսի 19-ին.
  30. Tarui, Y.; Hayashi, Y.; Nagai, K. (1972). «Electrically reprogrammable nonvolatile semiconductor memory». IEEE Journal of Solid-State Circuits. 7 (5): 369–375. Bibcode:1972IJSSC...7..369T. doi:10.1109/JSSC.1972.1052895. ISSN 0018-9200.
  31. Fulford, Benjamin (2002 թ․ հունիսի 24). «Unsung hero». Forbes. Արխիվացված օրիգինալից 2008 թ․ մարտի 3-ին. Վերցված է 2008 թ․ մարտի 18-ին.
  32. «US 4531203 Fujio Masuoka».
  33. «Toshiba: Inventor of Flash Memory». Toshiba. Վերցված է 2019 թ․ հունիսի 20-ին.
  34. Masuoka, F.; Momodomi, M.; Iwata, Y.; Shirota, R. (1987). «1987 International Electron Devices Meeting». Electron Devices Meeting, 1987 International. IEDM 1987. IEEE. էջեր 552–555. doi:10.1109/IEDM.1987.191485.
  35. «1987: Toshiba Launches NAND Flash». eWeek. 2012 թ․ ապրիլի 11. Վերցված է 2019 թ․ հունիսի 20-ին.
  36. «1971: Reusable semiconductor ROM introduced». Computer History Museum. Վերցված է 2019 թ․ հունիսի 19-ին.
  37. 37,0 37,1 37,2 37,3 37,4 Stanek, William R. (2009). Windows Server 2008 Inside Out. O'Reilly Media, Inc. էջ 1520. ISBN 978-0-7356-3806-8. Արխիվացված օրիգինալից 2013 թ․ հունվարի 27-ին. Վերցված է 2012 թ․ օգոստոսի 20-ին. «[...] Windows Server Enterprise supports clustering with up to eight-node clusters and very large memory (VLM) configurations of up to 32 GB on 32-bit systems and 2 TB on 64-bit systems.»
  38. Montierth, Briggs, Keithley. «Semi-volatile NAND flash memory». Վերցված է 2018 թ․ մայիսի 20-ին.{{cite web}}: CS1 սպաս․ բազմաթիվ անուններ: authors list (link)
  39. Keppel, Naeimi, Nasrullah. «Method and apparatus for managing a spin-transfer torque memory». Google Patents. Վերցված է 2018 թ․ մայիսի 20-ին.{{cite web}}: CS1 սպաս․ բազմաթիվ անուններ: authors list (link)

Գրականություն

[խմբագրել | խմբագրել կոդը]
  • Miller, Stephen W. (1977), Memory and Storage Technology, Montvale.: AFIPS Press
  • Memory and Storage Technology, Alexandria, Virginia.: Time Life Books, 1988