5.3. Bir takas alanının kullanılması
Hazırlanmış bir takas alanı swapon(8) ile kullanıma sunulur. Bu komutla çekirdeğe takas alanını kullanabileceğini iletiriz. Bir fikir olarak, takas alanını yolu da belirtilebilir. Bu komutla geçici bir takas dosyası üzerine yazılmaya başlanır.
#
swapon /ek-takas
#
Takas alanları /etc/fstab
dosyası içinde
listelenerek otomatik olarak kullanılabilir.
/dev/hda8 none swap sw 0 0 /swapfile none swap sw 0 0
Başlangıç betikleri swapon -a komutunu çalıştıracak
ve böylece /etc/fstab
dosyasında listelenmiş bütün
takas alanları kullanıma açılacaktır. Bununla beraber, swapon
komutu genellikle ek takas alanına ihtiyaç duyulduğu zamanlarda
kullanılır.
Takas alanı kullanımını free komutu ile görüntüleyebilirsiniz.
$
free
total used free shared buffers cached Mem: 512368 453692 58676 40144 35568 201236 -/+ buffers/cache: 216888 295480 Swap: 1951856 0 1951856$
Çıktının birinci satırı (Mem:
) fiziksel belleği
gösterir. 1 Mb civarı, çekirdek tarafından kullanılan bellek,
burada gösterilmez. used
sütunu kullanılan
bellek miktarını gösterir (ikinci sıradaki -/+ buffers/cache:
sayılmaz). free
sütunu tamamen boş olan alanı
gösterir. shared
sütunu çeşitli uygulamalar
tarafından paylaşılan alanı gösterir. buffers
sütunu ise diskin tampon bellek alanını gösterir.
Son satır (Swap:
) ise takas alanları için
benzer bilgileri gösterir. Bu alan tamamen sıfır ise bu takas
alanınızın etkinleştirilmediğini gösterir.
Aynı bilgiler top komutu ile veya proc dosya
sistemindeki /proc/meminfo
sayesinde de
elde edilebilir. Belirli bir takas alanının kullanımı hakkında
bilgi almak oldukça zordur.
Bir takas alanı swapoff ile kullanımdan kaldırılabilir. Bu normal olarak gerekli değildir, sadece geçici takas alanlarını kaldırmak için kullanılır. Takas alanı içinde öncelikle kullanımdaki sayfalar takas edilir. Bunları tutacak yeterli fiziksel bellek yok ise bir diğer takas alanına gönderilir. Şayet bu sayfaları tutacak yeterli sanal bellek yok ise Linux kıvranmaya başlar. Uzun bir süre sonra kendine gelir fakat bu arada sistemi kullanamazsınız. Kullanımdaki bir takas alanını kaldırmadan önce free komutu ile yeterli miktarda boş bellek bulunup bulunmadığına bakmalısınız.
swapon -a ile otomatik bağlanan bütün takas
alanları swapoff -a ile kaldırılabilir.
Sistem neyi kaldıracağını bulmak için /etc/fstab
dosyasının içine bakar. El ile açılmış takas alanları ise kullanılmaya
devam eder.
Bazı zamanlar büyük miktarda boş fiziksel bellek olmasına rağmen, pek çok takas alanı kullanımda olabilir. Bu olabilir, örneğin: bir yerde takas işlemine ihtiyaç vardır ama daha sonra bellekte çok yer kaplayan bir süreç öldürülür ve bellek boşaltılır. Dışarıya takas edilmiş bilgi ihtiyaç duyulana kadar geri alınmaz. Bunun için boş yere endişe duymaya gerek yoktur fakat ne olup bittiğini bilmek rahatlatıcı olabilmektedir.