İlk olarak, kaydedilmesi gereken RAM miktarı şaşırtıcı derecede küçüktür. Aslında, yalnızca eşlenmiş kirli sayfaların ("tembel geri yazma") ayarlanması ve ayrıca çalıştırılabilir kodun üzerine yazılmış ve taşınan tüm özel sayfaların yazılması gerekir.
- Çalıştırılabilirlerin .text kesimleri her zaman dosya eşlemesi ile desteklenir. Bu aynı zamanda en azından bazı DLL'ler için de geçerlidir (fakat hepsi değil, yeniden konumlandırılmaları gerekip gerekmediğine bağlıdır).
- Benzer şekilde dosya eşlemeleriyle desteklenen bellek atılabilir (farenin CoW veya RW olmadığı ve kirli olduğu varsayılmıştır ).
- Tembel geri dönüş hala gerçekleşmek zorunda kalacak, ama bunun dışında, önbellek atılabilir.
- Tahsis edilmiş fakat yazılmamış hafıza (genellikle uygulama verilerinin büyük kısmı!) Sıfır sayfa tarafından desteklenir ve atılabilir.
- "Bekleme" durumundaki bellek sayfalarının daha büyük kısmı (Windows'taki işlem başına çalışan asıl kişi şaşırtıcı derecede küçüktür, yalnızca 16 MB) arka planda sayfa dosyasına bir noktada kopyalanıp atılabilir .
- Grafik kartı gibi bazı cihazlar tarafından eşlenen hafıza bölgelerinin (muhtemelen) kaydedilmesi gerekmeyebilir. Kullanıcılar bazen bir bilgisayara 8GiB veya 16GiB taktıklarına şaşırırlar ve 1GiB veya 2GiB belirgin bir sebep olmadan sadece "gitmiş" olur. Ana grafik API'leri, uygulamaların "bazı koşullar altında" tam olarak ne anlama geldiğini belirtmeden tampon içeriğinin geçersiz hale gelmesini gerektirir. Bu nedenle, grafik sürücüsü tarafından sabitlenen hafızanın da atıldığını beklemek mantıksız değildir. Sonuçta ekran yine de kararıyor.
İkincisi, bir dosyayı kopyalamanın aksine, kaydedilmesi gereken RAM sayfaları kümesini atmak, sürücünün bakış açısından tek sıralı, bitişik bir yazıdır. Win32 API , bu işlem için kullanıcı düzeyinde bir işlev gösterir . Toplama yazma, donanım tarafından doğrudan desteklenir ve diskin fiziksel olarak veri kabul edebildiği kadar hızlı çalışır (denetleyici doğrudan DMA aracılığıyla veri çeker).
Bunun çalışması için bir takım ön koşullar vardır (hizalama, blok boyutu, sabitleme gibi) ve önbellekleme ile iyi oynamaz ve "tembel geri yazma" gibi bir şey yoktur (bu normal işletimde çok istenen bir optimizasyondur) ). Her yazmanın
sebebi bu değil.her zaman böyle çalışır. Ancak, sistem hazırda bekletme dosyasını kaydederken, tüm ön koşullar otomatik olarak karşılanır (tüm veriler sayfa hizalı, sayfa boyutunda ve sabitlenir) ve bilgisayar bir anda kapatılacağı için önbellekleme ilgisiz hale geldi.
Üçüncüsü, tek bir bitişik yazma yapmak hem eğirme diskleri hem de katı hal diskleri için çok uygundur .
Takas dosyası ve hazırda bekleme dosyası genellikle diskte oluşturulan ve ayrılan en eski dosyalardan bazılarıdır. Genellikle bir, en fazla iki parçadan oluşur. Bu nedenle, sektörler zarar görmediği ve diskin fiziksel sektörleri yeniden konumlandırması gerekmediği sürece, mantıksal bir sıralı yazma, dönen bir disk üzerindeki bir fiziksel sıralı yazma anlamına gelir.
Büyük miktarda ardışık, bitişik veri yazarken, diskte okuma-değiştirme-yazma işlemi gerekmez. Bu sorun, oldukça küçük olan tek sektörler yazabilen dönen bir sabit disklerde daha az belirgindir (Önbellekleme genellikle önleyen tek baytlar yazmamanız koşuluyla, cihazın orijinal içerikleri getirmemesi ve değiştirilen sürümü geri yazması gerekir). .
Bununla birlikte, bu, her yazının örneğin bir 512kB bloğun (normal bir sayıdır, ancak daha büyük olabilir) denetleyici tarafından okunması ve değiştirilmesi ve farklı bir yere geri yazılması gerektiği anlamına geldiği SSD'de çok belirgin olan bir şeydir. blok. Prensip olarak yazabiliyorken (ancak üzerine yazamazsınız)) flash disklerdeki daha küçük üniteler, sadece büyük blokları silebilir, donanım böyle çalışır. SSD'lerin devasa sıralı yazılarda daha iyi ücret almasının nedeni budur.