Segmentación de memoria

En informática la segmentación de memoria es una técnica de gestión de memoria que pretende acercarse más al punto de vista del usuario. Los programas se desarrollan, generalmente, en torno a un núcleo central (principal) desde el que se bifurca a otras partes (rutinas) o se accede a zonas de datos (tablas, pilas, etc).

Desde este punto de vista, un programa es un conjunto de componentes lógicos de tamaño variable o un conjunto de segmentos, es decir, el espacio lógico de direcciones se considera como un conjunto de segmentos, cada uno definido por un identificador, y consistente de un punto de inicio y el tamaño asignado.[1]

La segmentación de un programa la realiza el compilador y en ella cada dirección lógica se expresará mediante dos valores: Número de segmento (s) y desplazamiento dentro del segmento (d).

Una de las implementaciones más obvias y directas de un espacio de memoria segmentado es asignar un segmento distinto a cada una de las secciones del espacio en memoria de un proceso.

La segmentación también ayuda a incrementar la modularidad de un programa: Es muy común que las bibliotecas enlazadas dinámicamente estén representadas en segmentos independientes.

Hardware de segmentación

Puesto que la memoria física se direcciona literalmente, será necesario transformar cada dirección lógica en una dirección real . Esta conversión la realiza un dispositivo especial de hardware, consultando la tabla de segmentos correspondiente.

Rendimiento

Esta técnica permite reducir la fragmentación interna de la memoria provocada por la paginación, ya que asigna a cada programa la cantidad de memoria que requiere.

La carga de un programa en memoria exige la búsqueda de los huecos adecuados a sus segmentos, y puesto que éstos son de tamaño variable, se ajustarán los más posible a las necesidades, produciéndose huecos pequeños. En este caso se produce fragmentación externa. La eficiencia de la segmentación requiere, de igual forma que la paginación, el uso de memorias caché para lograr unos tiempos de acceso adecuados. De igual forma que en la paginación, se pueden compartir segmentos entre varios procesos.

Permisos

Una de las principales ventajas del uso de segmentación es que nos permite pedir a la unidad de gestión de memoria que cada uno de los segmentos tenga un distinto juego de permisos[2]​ para el proceso en cuestíón: El sistema operativo puede indicar, por ejemplo, que el segmento de texto (el código del programa) sea de lectura y ejecución, mientras que la sección de datos es de lectura y escritura. De este modo podemos evitar que un error en la programación resulte en que datos proporcionados por el usuario o por el entorno modifiquen el código que está siendo ejecutado.

Sin embargo, incluso bajo este esquema, dado que la pila de llamadas (stack) debe mantenerse como escribible, es común encontrar ataques que permiten modificar la dirección de retorno de una subrutina.

Incluso, dado que el acceso de ejecución está limitado a solo los segmentos cargados del disco por el sistema operativo, el atacante no podrá introducir código ejecutable tan fácilmente — Tendría que cargarlo como un segmento adicional con los permisos correspondientes.

Intercambio parcial

Un uso muy común de la segmentación, particularmnete en los sistemas de los 1980s, era el de permitir que solo ciertas regiones de un programa sean intercambiadas al disco: Si un programa está compuesto por porciones de código que nunca se ejecutarán aproximadamente al mismo tiempo en sucesión, puede separar su texto (e incluso los datos correspondientes) en diferentes segmentos.

A lo largo de la ejecución del programa, algunos de sus segmentos pueden no emplearse por largos periodos de tiempo. Estas páginas pueden ser enviadas al espacio de intercambio (swap) ya sea a solicitud del proceso o por iniciativa del sistema operativo.

Rendimiento

Intercambiar un proceso completo a disco resulta demasiado caro. Cuando hablamos de un espacio de memoria segmentado, y muy particularmente cuando hablamos de bibliotecas de carga dinámica, la sobrecarga es mucho menor: Si el segmento de texto es de solo lectura, una vez que este fue copiado una vez al disco, ya no hace falta volver a hacerlo: Tenemos la certeza de que no será modificado por el proceso en ejecución, por lo que basta marcarlo como no presente en las tablas de segmentos en memoria para que cualquier acceso ocasione que el sistema operativo lo traiga de disco.

Por otro lado, si la biblioteca en cuestión reside en disco (antes de ser cargada) como una imagen directa de su representación en memoria, al sistema operativo le bastará identificar el archivo en cuestión al cargar el proceso; no hace falta siquiera cargarlo en la memoria principal y guardarlo al área de intercambio, puede quedar referido directamente al espacio en disco en que reside el archivo.

Claro está, el acceso a disco sigue siendo una fuerte penalización cada vez que un segmento tiene que ser cargado del disco (sea del sistema de archivos o del espacio de intercambio), pero este mecanismo reduce dicha penalización, haciendo más atractiva la flexibilidad del intercambio por segmentos.

Referencias

  1. Operating Systems Concepts Essentials; Abraham Silberschatz, Peter Baen Galvin, Greg Gagne; John Wiley & Sons, 2011
  2. An Operating Systems Vade Mecum, Raphael Finkel, University of Kentucky, 1988

Read other articles:

Questa voce sull'argomento hockeisti su ghiaccio canadesi è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Sid Abel Nazionalità  Canada Altezza 180 cm Peso 77 kg Hockey su ghiaccio Ruolo Attaccante Tiro Sinistro   Modifica dati su Wikidata · Manuale Sidney Gerald Sid Abel (Melville, 22 febbraio 1918 – Farmington Hills, 8 febbraio 2000) è stato un hockeista su ghiaccio e allenatore di...

 

Cereopsius arbiter Klasifikasi ilmiah Kerajaan: Animalia Filum: Arthropoda Kelas: Insecta Ordo: Coleoptera Famili: Cerambycidae Subfamili: Lamiinae Tribus: Lamiini Genus: Cereopsius Spesies: Cereopsius arbiter Cereopsius arbiter adalah spesies kumbang tanduk panjang yang tergolong familia Cerambycidae. Spesies ini juga merupakan bagian dari genus Cereopsius, ordo Coleoptera, kelas Insecta, filum Arthropoda, dan kingdom Animalia. Larva kumbang ini biasanya mengebor ke dalam kayu dan dapat men...

 

Artikel ini memiliki beberapa masalah. Tolong bantu memperbaikinya atau diskusikan masalah-masalah ini di halaman pembicaraannya. (Pelajari bagaimana dan kapan saat yang tepat untuk menghapus templat pesan ini) Artikel ini tidak memiliki bagian pembuka yang sesuai dengan standar Wikipedia. Mohon tulis paragraf pembuka yang informatif sehingga pembaca dapat memahami maksud dari Colokan dan soket listrik AC domestik. Contoh paragraf pembuka Colokan dan soket listrik AC domestik adalah .... (Mei...

Japanese actress This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. Please help improve this article by introducing more precise citations. (September 2015) (Learn how and when to remove this template message) This article may need to be rewritten ...

 

Cet article est une ébauche concernant l’Amérique latine. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Organisation du traité de coopération amazonienneCarte de localisation des pays membres de l'OTCA.HistoireFondation 1995CadreSigle (en) ACTOZone d'activité Amérique du SudType Organisation internationale, organisation environnementaleDomaine d'activité Conservation de la natureObjectif Défores...

 

ロバート・デ・ニーロRobert De Niro 2011年のデ・ニーロ生年月日 (1943-08-17) 1943年8月17日(80歳)出生地 アメリカ合衆国・ニューヨーク州ニューヨーク市身長 177 cm職業 俳優、映画監督、映画プロデューサージャンル 映画、テレビドラマ活動期間 1963年 -配偶者 ダイアン・アボット(1976年 - 1988年)グレイス・ハイタワー(1997年 - )主な作品 『ミーン・ストリート』(1973年)...

Lough GurLoch Goir (Irish)Location in IrelandLocationCounty LimerickCoordinates52°30′58.97″N 8°31′59.80″W / 52.5163806°N 8.5332778°W / 52.5163806; -8.5332778Basin countriesIrelandSurface area0.78 km2 (0.30 sq mi)Average depth1.5 m (4 ft 11 in)Max. depth3.8 m (12 ft)Water volume1.2 hm3 (970 acre⋅ft)Residence time0.21 years[1] Lough Gur (Irish: Loch Goir)[2] is a lake in Count...

 

Squash events for men and women organised by the Professional Squash Association Men's World ChampionshipDetailsEvent namePSA Men's World ChampionshipMen's PSA World TourCategoryWorld ChampionshipMost recent champion(s) Ali Farag Current2023 PSA Men's World Squash Championship Women's World ChampionshipDetailsEvent namePSA Women's World ChampionshipWomen's PSA World TourCategoryWorld ChampionshipMost recent champion(s) Nour El Sherbini Current2023 PSA Women's World Squash Championship The Wor...

 

Al-Qadisiyya ClubCalcio Segni distintiviUniformi di gara Casa Trasferta Colori sociali Giallo, rosso Simbolicavaliere Dati societariCittàKhobar Nazione Arabia Saudita ConfederazioneAFC Federazione SAFF CampionatoPrima Divisione Fondazione1967 Proprietario Saudi Aramco Presidente Ahmed Ghodran Allenatore Míchel StadioPrincipe Saud bin Jalawi(20.000 posti) PalmarèsTitoli nazionali2 campionati sauditi Trofei nazionali1 Coppa Principe Faysal bin Fahd1 Coppa del Principe della Corona saudi...

Questa voce sull'argomento Siria è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Idlibgovernatoratoمُحافظة ادلب LocalizzazioneStato Siria AmministrazioneCapoluogoIdlib TerritorioCoordinatedel capoluogo35°56′N 36°38′E / 35.933333°N 36.633333°E35.933333; 36.633333 (Idlib)Coordinate: 35°56′N 36°38′E / 35.933333°N 36.633333°E35.933333; 36.633333 (Idlib) Superficie5 933[1] k...

 

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总...

 

Tây ÁDiện tích7.100.000 km2 (2.700.000 dặm vuông Anh)aDân số374.000.000 (2016) (thứ 9)[1][2]Mật độ dân số50,1 km2 (19,3 dặm vuông Anh)GDP (PPP)$9,063 nghìn tỷ (2019)[3]GDP (danh nghĩa)$3,751 nghìn tỷ (2019)[3]GDP bình quân đầu người$11.967 (2019; trên danh nghĩa)[3]$28.918 (2019; PPP)[3]HDI0,699 (medium)Các nhóm dân tộcSemit (Ả R...

1958 compilation album by Frankie LaineFrankie Laine's Greatest HitsCompilation album by Frankie LaineReleased1958LabelColumbiaFrankie Laine chronology Rockin'(1957) Frankie Laine's Greatest Hits(1958) Foreign Affair(1958) Professional ratingsReview scoresSourceRatingAllMusic[1] Frankie Laine's Greatest Hits is a compilation album by Frankie Laine released in 1958 on Columbia Records.[2][3] In 1962, this monaural album was re-released in an electronically recha...

 

Stimulant of the cathinone class N-EthylhexedroneLegal statusLegal status BR: Class F2 (Prohibited psychotropics)[1] CA: Schedule I DE: Anlage II (Authorized trade only, not prescriptible) UK: Class B US: Schedule I UN: Psychotropic Schedule II Illegal in Japan and a controlled substance in Sweden Pharmacokinetic dataMetabolismNeurometabolicIdentifiers IUPAC name 2-(Ethylamino)-1-phenylhexan-1-one CAS Number802857-66-5 YHCl  : 18410-62...

 

Postgraduate academic degree awarded by most universities worldwide PhD redirects here. For other uses, see PHD (disambiguation). Doctor of PhilosophyTypePostgraduate educationDuration3 to 8 yearsPrerequisites / eligibility criteriaBachelor's degreeMaster's degree(varied by country and institution) A Doctor of Philosophy (PhD, Ph.D., or DPhil; Latin: philosophiae doctor or doctor philosophiae) is a terminal degree that usually denotes the highest level of academic achievement in a given disci...

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目翻譯品質不佳。 (2022年1月9日)翻譯者可能不熟悉中文或原文語言,也可能使用了機器翻譯。請協助翻譯本條目或重新編寫,并注意避免翻译腔的问题。明顯拙劣的翻譯請改掛{{d|G13}}提交刪除。 此條目可参照英語維基百科相應條目来扩充。 (2022年1月9日)若您熟悉来源语言和主题,请协助参考外�...

 

Historic church in Michigan, United States Not to be confused with Cathedral of the Blessed Sacrament (disambiguation). Church in Michigan, United StatesCathedral of the Most Blessed SacramentWoodward Avenue façade and rectory42°23′19″N 83°05′06″W / 42.3885824°N 83.0850898°W / 42.3885824; -83.0850898Location9844 Woodward AvenueDetroit, MichiganCountryUnited StatesDenominationRoman CatholicWebsitewww.cathedral.aod.orgHistoryStatusCathedral(also a parish chu...

 

Progress of miniaturisation, and comparison of sizes of semiconductor manufacturing process nodes with some microscopic objects and visible light wavelengths 1970s The first chips that could be considered microprocessors were designed and manufactured in the late 1960s and early 1970s, including the MP944 used in the F-14 Central Air Data Computer.[1] Intel's 4004 of 1971 is widely regarded as the first commercial microprocessor.[2] Designers predominantly used MOSFET transis...

Railway line in Germany Not to be confused with Berlin Outer Ring Railway. Berliner RingbahnRingbahn, Messe Nord ICC stationOverviewLine number 6020 (S-Bahn) 6170 (mainline) LocaleBerlin, GermanyServiceRoute number 200.41 200.42 TechnicalTrack gauge1,435 mm (4 ft 8+1⁄2 in) standard gaugeElectrification S-Bahn: 750 V third rail main line: 15 kV/16.7 Hz AC overhead catenary Route map Legend    Berlin-Moabit 0.7 Berlin Westhafen from and to Hau...

 

Pour les articles homonymes, voir Gambier. Îles GambierArchipel des Gambier (mul) Image satellite du principal atoll de Gambier. Géographie Pays France Archipel Îles Gambier Localisation Océan Pacifique Coordonnées 23° 07′ 04″ S, 134° 58′ 13″ O Superficie 31 km2 Nombre d'îles 14 Île(s) principale(s) Akamaru, Aukena, Mangareva, Taravai Administration Statut Commune Collectivité d'outre-mer Polynésie française District Tuamotu Démogr...