Kas ir atmiņas pārvaldība?
Atmiņas pārvaldība ir datora atmiņas kontrolēšanas un koordinēšanas process, piešķirot daļas, kas pazīstamas kā bloki, dažādām darbības programmām, lai optimizētu sistēmas vispārējo veiktspēju.
Tā ir vissvarīgākā operētājsistēmas funkcija, kas pārvalda primāro atmiņu. Tas palīdz procesiem virzīties atpakaļ un uz priekšu starp galveno atmiņu un izpildes disku. Tas palīdz OS sekot līdzi visām atmiņas vietām neatkarīgi no tā, vai tā ir piešķirta kādam procesam, vai arī tā paliek brīva.
Šajā operētājsistēmas apmācībā jūs uzzināsiet:
- Kas ir atmiņas pārvaldība?
- Kāpēc izmantot atmiņas pārvaldību?
- Atmiņas pārvaldības paņēmieni
- Kas ir mijmaiņa?
- Kas ir atmiņas piešķiršana?
- Kas ir peidžers?
- Kas ir sadrumstalotības metode?
- Kas ir segmentēšana?
- Kas ir dinamiskā ielāde?
- Kas ir dinamiskā saistīšana?
- Atšķirība starp statisko un dinamisko slodzi
- Atšķirība starp statisko un dinamisko saistīšanu
Kāpēc izmantot atmiņas pārvaldību?
Šeit ir atmiņas pārvaldības izmantošanas iemesli:
- Tas ļauj pārbaudīt, cik daudz atmiņas jāpiešķir procesiem, kuri izlemj, kuram procesoram kādā laikā vajadzētu iegūt atmiņu.
- Dziesmas ikreiz, kad tiek atbrīvots vai nepiešķirts krājums. Saskaņā ar to tiks atjaunināts statuss.
- Tas piešķir vietu lietojumprogrammu kārtībai.
- Tas arī pārliecinās, ka šīs lietojumprogrammas netraucē viena otrai.
- Palīdz aizsargāt dažādus procesus viens no otra
- Tas ievieto programmas atmiņā tā, lai atmiņa tiktu pilnībā izmantota.
Atmiņas pārvaldības paņēmieni
Šeit ir daži vissvarīgākie atmiņas pārvaldības paņēmieni:
Viena blakus esoša piešķiršana
Tā ir vienkāršākā atmiņas pārvaldības tehnika. Šajā metodē visiem datora atmiņas veidiem, izņemot nelielu daļu, kas rezervēta OS, ir pieejama viena lietojumprogramma. Piemēram, MS-DOS operētājsistēma šādā veidā piešķir atmiņu. Iegultā sistēma darbojas arī vienā lietojumprogrammā.
Sadalīts sadalījums
Tas sadala primāro atmiņu dažādās atmiņas nodalījumos, kas galvenokārt ir blakus esošie atmiņas apgabali. Katrā nodalījumā tiek glabāta visa informācija par konkrētu uzdevumu vai darbu. Šī metode sastāv no nodalījuma piešķiršanas darbam, kad tas sākas, un atdalīšana, kad tas beidzas.
Paged atmiņas pārvaldība
Šī metode sadala datora galveno atmiņu fiksēta izmēra vienībās, kas pazīstamas kā lapu rāmji. Šī aparatūras atmiņas pārvaldības vienība lappuses kartē rāmjos, kas būtu jāpiešķir pa lapām.
Segmentēta atmiņas pārvaldība
Segmentētā atmiņa ir vienīgā atmiņas pārvaldības metode, kas lietotāja programmai nenodrošina lineāru un blakus esošo adreses vietu.
Segmentiem ir nepieciešams aparatūras atbalsts segmentu tabulas veidā. Tajā ir sadaļas fiziskā adrese atmiņā, izmērs un citi dati, piemēram, piekļuves aizsardzības biti un statuss.
Kas ir mijmaiņa?
Mainīšana ir metode, kurā process īslaicīgi jāpārmaina no galvenās atmiņas uz atbalsta krātuvi. Vēlāk tas tiks atgriezts atmiņā, lai turpinātu izpildi.
Rezerves krātuve ir cietais disks vai kāda cita sekundārā atmiņas ierīce, kurai jābūt pietiekami lielai pasūtījumam, lai visiem lietotājiem būtu piemērotas visu atmiņas attēlu kopijas. Tas spēj arī piedāvāt tiešu piekļuvi šiem atmiņas attēliem.
Apmaiņas priekšrocības
Šeit ir galvenie ieguvumi / plusi, kas saistīti ar maiņu:
- Tas piedāvā augstāku daudzprogrammēšanas pakāpi.
- Ļauj dinamiski pārvietoties. Piemēram, ja tiek izmantota adrešu saistīšana izpildes laikā, procesus var apmainīt dažādās vietās. Citādi kompilēšanas un ielādes laika saistīšanas gadījumā procesi jāpārvieto uz to pašu vietu.
- Tas palīdz labāk izmantot atmiņu.
- Minimāls centrālā procesora laika izšķiešana pēc pabeigšanas, lai to varētu viegli izmantot uz prioritātēm balstītai plānošanas metodei, lai uzlabotu tā veiktspēju.
Kas ir atmiņas piešķiršana?
Atmiņas piešķiršana ir process, kurā datorprogrammām tiek piešķirta atmiņa vai vieta.
Šeit galvenā atmiņa ir sadalīta divu veidu nodalījumos
- Zema atmiņa - operētājsistēma atrodas šāda veida atmiņā.
- Augsta atmiņa - lietotāju procesi tiek turēti lielā atmiņā.
Sadalījuma sadalījums
Atmiņa ir sadalīta dažādos blokos vai nodalījumos. Katrs process tiek piešķirts atbilstoši prasībām. Partition piešķiršana ir ideāla metode, lai izvairītos no iekšējas sadrumstalotības.
Tālāk ir norādītas dažādas nodalījumu piešķiršanas shēmas:
- First Fit : Šāda veida fitā tiek piešķirts nodalījums, kas ir pirmais pietiekamais bloks no galvenās atmiņas sākuma.
- Vislabāk: Tas piešķir procesu nodalījumam, kas ir pirmais mazākais nodalījums starp bezmaksas nodalījumiem.
- Sliktākais fit: Tas piešķir procesu nodalījumam, kas ir lielākais pietiekami brīvi pieejamais nodalījums galvenajā atmiņā.
- Next Fit: Tas lielākoties ir līdzīgs pirmajam Fit, taču šis Fit meklē pirmo pietiekamo nodalījumu no pēdējā piešķiršanas punkta.
Kas ir peidžers?
Lapu meklēšana ir glabāšanas mehānisms, kas ļauj OS lapu veidā ielādēt procesus no sekundārās atmiņas galvenajā atmiņā. Peidžošanas metodē galvenā atmiņa ir sadalīta mazos fiksēta izmēra fiziskās atmiņas blokos, kurus sauc par rāmjiem. Rāmja izmēram jābūt tādam pašam kā lapas izmēram, lai maksimāli izmantotu galveno atmiņu un izvairītos no ārējas sadrumstalotības. Peidžers tiek izmantots, lai ātrāk piekļūtu datiem, un tas ir loģisks jēdziens.
Kas ir sadrumstalotība?
Procesi tiek saglabāti un izņemti no atmiņas, tādējādi tiek izveidota brīva atmiņas vieta, kas ir pārāk maza, lai to izmantotu citi procesi.
Dažreiz procesus, kurus nevar piešķirt atmiņas blokiem, jo to mazais izmērs un atmiņas bloki vienmēr paliek neizmantoti, sauc par fragmentāciju. Šāda veida problēmas rodas dinamiskās atmiņas piešķiršanas sistēmas laikā, kad brīvie bloki ir diezgan mazi, tāpēc tā nespēj izpildīt nevienu pieprasījumu.
Divu veidu fragmentācijas metodes ir:
- Ārējā sadrumstalotība
- Iekšējā sadrumstalotība
- Ārējo sadrumstalotību var samazināt, pārkārtojot atmiņas saturu, lai visu brīvo atmiņu ievietotu vienā blokā.
- Iekšējo sadrumstalotību var samazināt, piešķirot mazāko nodalījumu, kas joprojām ir pietiekami labs, lai veiktu visu procesu.
Kas ir segmentēšana?
Segmentēšanas metode darbojas gandrīz līdzīgi kā peidžeri. Vienīgā atšķirība starp abiem ir tā, ka segmenti ir mainīga garuma, savukārt peidžeru metodē lapas vienmēr ir noteikta izmēra.
Programmas segments ietver programmas galveno funkciju, datu struktūras, lietderības funkcijas utt. OS uztur segmentu kartes tabulu visiem procesiem. Tas ietver arī brīvo atmiņas bloku sarakstu, kā arī tā lielumu, segmentu numurus un atmiņas vietas galvenajā atmiņā vai virtuālajā atmiņā.
Kas ir dinamiskā ielāde?
Dinamiskā ielāde ir programmas rutīna, kas netiek ielādēta, kamēr programma to neizsauc. Visām kārtībām jābūt diskā ar pārvietojamu ielādes formātu. Galvenā programma tiks ielādēta atmiņā un tiks izpildīta. Dinamiskā ielāde nodrošina arī labāku atmiņas vietas izmantošanu.
Kas ir dinamiskā saistīšana?
Saistīšana ir metode, kas palīdz OS apkopot un apvienot dažādus koda un datu moduļus vienā izpildāmā failā. Failu var ielādēt atmiņā un izpildīt. OS var sasaistīt sistēmas līmeņa bibliotēkas programmā, kas bibliotēkas apvieno ielādes laikā. Dinamiskās saistīšanas metodē bibliotēkas tiek saistītas izpildes laikā, tāpēc programmas koda lielums var palikt mazs.
Atšķirība starp statisko un dinamisko slodzi
Statiskā ielāde | Dinamiska ielāde |
Statiskā ielāde tiek izmantota, ja vēlaties programmu ielādēt statiski. Tad sastādīšanas laikā visa programma tiks sasaistīta un kompilēta bez jebkāda ārēja moduļa vai programmas atkarības. | Dinamiski ielādētā programmā tiks sniegtas atsauces un ielāde tiks veikta izpildes laikā. |
Ielādes laikā visa programma tiek ielādēta atmiņā un sāk tās izpildi. | Bibliotēkas rutīnas tiek ielādētas atmiņā tikai tad, kad tās ir nepieciešamas programmā. |
Atšķirība starp statisko un dinamisko saistīšanu
Šeit ir galvenā atšķirība starp statisko un dinamisko saistīšanu:
Statiskā saistīšana | Dinamiskā saistīšana |
Statiskā sasaiste tiek izmantota, lai apvienotu visus pārējos moduļus, kurus programma prasa vienā izpildāmā kodā. Tas palīdz OS novērst jebkādu atkarību no izpildlaika. | Ja tiek izmantota dinamiskā saistīšana, faktiskais modulis vai bibliotēka nav jāsaista ar programmu. Tā vietā izmantojiet atsauci uz dinamisko moduli, kas paredzēts apkopošanas un sasaistīšanas laikā. |
Kopsavilkums:
- Atmiņas pārvaldība ir datora atmiņas kontrolēšanas un koordinēšanas process, piešķirot daļas, kuras sauc par blokiem, dažādām darbības programmām, lai optimizētu sistēmas kopējo veiktspēju.
- Tas ļauj pārbaudīt, cik daudz atmiņas jāpiešķir procesiem, kuri izlemj, kuram procesoram kādā laikā vajadzētu iegūt atmiņu.
- Vienā blakus esošajā piešķiršanā vienai lietojumprogrammai ir pieejami visi datora atmiņas veidi, izņemot nelielu daļu, kas rezervēta OS.
- Partitioned Allocation metode sadala primāro atmiņu dažādās atmiņas nodalījumos, kas pārsvarā ir blakus esošie atmiņas apgabali
- Peidžētās atmiņas pārvaldības metode sadala datora galveno atmiņu fiksēta izmēra vienībās, kas pazīstamas kā lapu rāmji
- Segmentētā atmiņa ir vienīgā atmiņas pārvaldības metode, kas lietotāja programmai nenodrošina lineāru un blakus esošo adreses vietu.
- Mainīšana ir metode, kurā process īslaicīgi jāpārmaina no galvenās atmiņas uz atbalsta krātuvi. Vēlāk tas tiks atgriezts atmiņā, lai turpinātu izpildi.
- Atmiņas piešķiršana ir process, kurā datorprogrammām tiek piešķirta atmiņa vai vieta.
- Lapu meklēšana ir glabāšanas mehānisms, kas ļauj OS lapu veidā ielādēt procesus no sekundārās atmiņas galvenajā atmiņā.
- Sadrumstalotība attiecas uz diska stāvokli, kurā faili tiek sadalīti gabalos, kas izkaisīti ap disku.
- Segmentēšanas metode darbojas gandrīz līdzīgi kā peidžeri. Vienīgā atšķirība starp abiem ir tā, ka segmenti ir mainīga garuma, savukārt peidžeru metodē lapas vienmēr ir noteikta izmēra.
- Dinamiskā ielāde ir programmas rutīna, kas netiek ielādēta, kamēr programma to neizsauc.
- Saistīšana ir metode, kas palīdz OS apkopot un apvienot dažādus koda un datu moduļus vienā izpildāmā failā.