Bellek yönetimi

Ana belleğin işlemler arasında paylaştırılmasına ana bellek yönetimi ya da bellek yönetimi (Memory Management) adı verilir. İşletim sisteminin bu amaçla oluşturulan kesimine de bellek yöneticisi (Memory Manager) adı verilir[1].

Bellek yöneticisinin görevi, belleğin hangi parçalarının kullanımda olduğunu, hangi parçalarının kullanılmadığını izlemek, süreçlere bellek tahsis etme(allocate), tahsis edilen belleği geri almak ve bellek ile disk arasındaki takas işlemlerini gerçekleştirmektir[2].

Amaçlar

Bir işletim sisteminin bellek yönetiminin sonuçları şunlardır:

  • Bellekteki herhangi bir işlemi başka bir yere aktarabilmelidir.
  • Birden fazla işlem veya kullanıcı olduğunda bir kullanıcını diğer kullanıcını alanlarına girmeleri önlenmelidir.
  • Kullanıcılar arası kaynak paylaşımını sağlamalıdır.
  • Belleğin mantıksal alanlara bölünmesini sağlayarak bilgiye erişimi kolaylaştırmalıdır.
  • Belleğin yetmediği durumlarda fiziksel başka bellek alanlarını yani hard diskleri kullanabilmelidir[3].

Özellikler

Çok görevli işletim sistemlerinde bellek yönetim sistemleri genellikle aşağıdaki konuları içerir.

Yer değiştirme (relocation)

Sanal bellekli sistemlerde bellekteki programların farklı zamanlarda, belleğin farklı yerlerinde bulunabilmesi gerekir. Bunun temel nedeni, programın bir süreliğine bellekten dışarı götürülmesinin ardından tekrar geri getirildiğinde her zaman aynı bellek bölgesine yerleştirilmesinin mümkün olmamasıdır. Bu yüzden işletim sisteminin bellek yönetimi bellekte programların yerini değiştirebilmeli ve bu yer değiştirme sonrasında program kodu içindeki referansları doğru şekilde ayarlayarak her zaman bellekte doğru yeri işaret etmesini sağlayabilmelidir.

Koruma (protection)

Süreçler (process), başka süreçler için ilgili sürecin izni olmadan bellek başvurusu yapmamalıdır. Bellek koruması adı verilen bu mekanizma ile programdaki kötü niyetli ya da hatalı işleyen bir kodun diğer programların çalışmasını etkilemesi engellenir.

Paylaşma (sharing)

Farklı süreçler arasındaki bellek her ne kadar koruma altında olmuş olsa da uygun durumda farklı sürecin farklı bellek alanına erişip bilgiyi paylaşması mümkün olmalıdır.

Mantıksal yapılanma (logical organization)

Programlar genelde modüller şeklinde yapılandırılmıştır. Bu modüllerin bir kısmı gerek sadece okuma, gerekse veri değiştirme şeklinde başka programlar tarafından da kullanılabilir. Bellek yönetimi doğrusal fiziksel alanından farklı olan bu mantıksal yapılanmanın düzenlenmesinden sorumludur. Bunu sağlamanın yöntemlerinden birisi kesimlemedir (segmentation).

Fiziksel yapılanma (physical organization)

Bellek genellikle hızlı birincil depo ve yavaş ikincil depo şeklinde bölümlenmiştir (örneğin rastgele erişimli bellek RAM ve sabit disk gibi). İşletim sistemlerindeki bellek yönetimi bilginin bu bellek katmanları arasında taşınmasından sorumludur [4].

Ayrıca bakınız

Dış bağlantılar

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.