/i/Yazılım

Umuyoruz ki geleceğin yazılımcıları bu altinciden çıkacak!
    başlık yok! burası bom boş!
http://www.nongnu.org/ext...oc/ext2.html#BLOCK-BITMAP
  1. 1.
    +9
    Bunu hepiniz biliyorsunuzdur büyük ihtimal.

    Ama benim anlatacağım şey bunun neden olduğu.

    Sabit diskler blok adı verilen 512 baytlık parçalara ayrılır. Dosya sistemleri (NTFS, FAT32, exFAT, ext2, ... ) bu blokları parçalayıp yöneterek dosya, klasör gibi daha anlaşılır yapılar halinde kullanmamızı sağlıyor.

    ext2 sistemi ile aşina olduğumdan ondan örnek veriyorum.

    abc.txt adında 1 kb'lık bir dosya var. ext2'de bir blok (aksi bir şekilde yapılandırılmadıysa) 1 kb ediyor. Yani abc.txt dosyası dosya sistemi bazında 1 blok, sabit disk bazında 2 blok (512 * 2) kaplıyor.

    Siz bu dosyayı sildiğinizde işletim sistemi o blokları temizlemiyor.
    Sadece blokların dolu ya da boş olduğunu belirten tabloda, gerekli blokları boş olarak ayarlıyor.

    ext2'de bu tablonun adı "Block Usage Bitmap"
    (bkz: http://www.nongnu.org/ext...oc/ext2.html#BLOCK-BITMAP)

    Sistemin yaptığı tek şey bu tabloda, silinecek dosyaların bloklarını boş olarak işaretlemek.

    Bu sayede yeni bir dosya oluştururken sistem o blokları kullanılmamış sayıyor ve üzerine yazabiliyor. Fakat üzerine yazılmayabilir de. Bu durumda dosyanın verileri kurtarılabilir oluyor.

    Düşünün, elinizde 16 GB'lık bir ISO dosyası var. Windows'ta bu dosyayı "shift + del" ile silmek istediğinizde dosya neredeyse 1 saniyede siliniyor. Fakat aynı dosyayı başka bir yere kopyalarsanız (SSD kullanmadığınız varsayıyorum) dakikalar alıyor.

    Eğer tüm veriyi diskten silseydi, silme işlemi de dakikalar alacaktı.
    ···
   tümünü göster