paging

wondrous wondrous
işletim sisteminin fiziksel hafızanın kendine yeterli olmadığı zamanlarda sabit disk üzerinde bir page file açarak işini tökezleyerek de olsa halletmeye çalışması hadisesi.
poet poet
baz istasyonunun kapsama alanı içinde kaybolan mobil cihazların, baz istasyonlarındaki kayıt/paging tuşu sayesinde bulunmasını sağlayan sistem.
azureel azureel
dinamik bellek genelde harddiskten küçüktür. çalıştırılacak proses ise, bellekten ufak olsa da, onlarcası aynı anda bellekte bulunmak isteyeceğinden sığamazlar rame. lakin çoklu proses çalıştırılması da gereklidir. öyleyse ne yapılacak, proseslerin sadece çalışan kısımları bellekte tutulacak, bellekte olmayan ve çalışması gereken kısımlar ihtiyaç halinde diskten (virtual memory) belleğe (physical memory) transfer edilecek.

prosesin çalıştırılabilir kod parçalarının, boyu belli [diyelim 1mb] bloklar halinde bellekte parça parça bulundurulması işlemine paging deniyor işte. a prosesinin 10 sayfası var diyelim, b, c ve d proseslerinin de 5'er sayfası (page) olsun. bellek ise max 10 sayfa tutabiliyor diyelim.

bu 4 prosesin aynı anda çalışması için, tüm bu 4 prosesin sayfalarından sadece o an için prosesin ihtiyacı olanın bellekte bulunması ile mümkündür. a'nın ilk 4 parçası, diğer proseslerin de ilk 2'şer parçası diyelim bellekte. ama a ilerledi ve 5'inci parçaya ihtiyaç duydu mesela.

bu durumda refere edilen adres bellekte bulunmadığı için "page fault" yani sayfa hatası oluşur. a bir süre bekler, eski parçaları atılır (1 nolu sayfası atılır, 5 nolu parçası belleğe yüklenir mesela) ve prosesler yine dönüşümlü olarak çalışır.

sayfa hatası oluştuğunda hangi sayfanın çıkarılacağına karar veren çeşitli algoritmalar var, illa ki a prosesi yeni sayfa istedi diye, a'nın eski sayfası atılmaz her zaman. sayfa değiştirme algoritması önemli burada. ikinci kritik kısım ise sayfa boyutunun iyi ayarlanması. sayfa boyu ufak olur ise, 1.1 mb'lık proses için 1 mb'lık sayfaları bulunan bir sistemde 2 sayfa almamız gerekirdi, bu da bellek israfı demek. eğer sayfa boyutu 1 mb değil de 100 kb olsaydı, 11 sayfa olurdu ve israf olmazdı. ama bu sefer, zırt pırt sayfa hatası alır, diskten belleğe sayfa okuması yapmamız gerekirdi. böyle bir şey paging.

türkçesi "sayfalama" galiba. bir de segmanlama var, o da buna benziyor. (bkz: segmentation)