Överlägg (programmering)

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 30 september 2015; kontroller kräver 16 redigeringar .

Overlay (overlay) - overlay, en programmeringsmetod som låter dig skapa program som kräver mindre RAM. Metoden består i att dela upp programmet i exekverbara block, som sekventiellt skrivs till ett minnesområde ovanpå de föregående, utför sina funktioner och skrivs över av nästa. Inbäddade datorer använder ofta överlagringar, eftersom system-on-a-chip vanligtvis innehåller lite minne och inte stöder virtuellt minne .

Användning

Metoden går ut på att dela upp programmet i fragment som kallas överlägg ( overlays ). Storleken på varje överlägg är begränsad beroende på tillgängligt minne. Platsen i minnet där överlägget kommer att laddas kallas regionen ( region , destination region ). Även om program ofta bara använder ett minnesblock för att ladda olika överlägg, är det möjligt att definiera flera regioner av varierande storlek. Överlagringshanteraren, ibland en del av operativsystemet , laddar den begärda överlagringen från externt minne ( hårddisk , flashminne, Ppzu // Scientific and Technical Encyclopedic Dictionary . ) till regionen. Vissa länkar (kompositörer) stöder överlagringar. [ett]

Programmering med överlägg kräver att programmeraren är försiktig med storleken på varje del av programmet. På grund av detta används ofta lågnivåspråk och assembler, vilket gör att du kan begränsa storleken på programmet och överlägg. Programmering med överlägg är mer komplex än programmering med virtuellt minne.

Överlägg i PC/MS DOS

Under DOS dagar var överlägg populära eftersom operativsystem och de flesta datorer inte gav virtuellt minne. Den ursprungliga IBM PC:n använde inte ens en hårddisk , så den enda sekundära lagringsenheten var en 5-1/4" diskett .

Tidiga IBM-datorer hade väldigt lite RAM med dagens standarder. Medan 5-1/4" disketter kunde lagra 360 kilobyte, var RAM -minnet för 1981-1985 datorer i allmänhet ännu mindre (64, 128 eller 256 kilobyte, ibland 384 kb). De första modellerna av IBM PC hade från 16 till 64 kb Den största mängden minne som kunde installeras i ett system utan speciell teknik var begränsad till 640 K. För stora volymer var det nödvändigt att använda standarderna EMS (expanded memory) och XMS (extended memory) och installera ytterligare minne på ISA-kort En kontroversiell metod för tunga DBMS, som kräver ytterligare investeringar, både finansiella och intellektuella.

Utgången har hittats. En del av koden fanns kvar i RAM (huvudprogrammet, vanliga bibliotek, överlagringsdelen), och resten överbelastades av överlagringsdelen - bearbetningsenheter och laddningsprocedurer och funktioner till RAM, efter behov, vilket var vad överlagringen bearbetade programmet gjorde. Logistiken för att lägga ut överlägg krävde en förståelse för vad, var och var man skulle lämna, eftersom tillämpning av en procedur från en annan överlagring ledde till en förändring i överlägget, förlust av variabler och andra buggar, särskilt med tanke på begränsningen av RAM.

Således måste överlägg användas för stora program. [2] I DOS hade binärfiler som innehåller överlagringar ofta en .OVL- tillägg

Anteckningar

  1. GNU Linker-dokumentationen: Överläggsbeskrivning (3 juni 2008). Arkiverad från originalet den 12 augusti 2012.
  2. allt om .ovl-filtypen . www.cryer.co.uk. Tillträdesdatum: 27 juni 2016. Arkiverad från originalet 2 oktober 2009.

Se även