You are on page 1of 70

ANKARA ÜNIVERSITESI,

SAĞLIK BILIMLERI ENSTITÜSÜ


ADLI BILIMLER ANABILIM DALI
Adli Bilişim Programı
(Tezli Yüksek Lisans II. Öğretim)

Bilgisayar Sistemleri (2-2–3)


Dosya Sistemleri
(Bölüm 1 Ek Sunum)
Doç.Dr.Refik SAMET
Akış
• Dosya sistemleri nelerdir?
• Dosyalar
– İsimlendirme, türler, yapılar, erişim, nitelikler, işlemler.
• Dizinler
– Tek, iki ve hiyerarşik seviyeli sistemler
– İşlemler
• Yol (Path) İsimleri
• Dosya Sistemleri
– DOS dosya sistemi,FAT32,NTFS,ext
Neden Dosya Sistemlerine Gereksinim
Vardır?
• Veri, bir process kendisini kullanıp işi bittikten
sonra da varlığını devam ettirmek zorundadır.
• Bu sistem sayesinde oldukça büyük miktarda
verileri depolamak mümkündür.
• Yine bu sayede, çoklu işlemler verilere eş
zamanlı olarak erişebilmektedir.
• Çözüm, bu verileri disk veya diğer medyalara
üniteler halinde saklamaktır.
Dosyalar
• Dosya içerisinde saklanan verilerin kalıcı
olması gerekmektedir.

• Dosyalar OS tarafından yönetilmektedir.

• İşletim sisteminin dosyalarla ilgilenen kısmı


“Dosya Yöneticisi (File Manager)” olarak
bilinmektedir.
İsimlendirme (Naming)
• İsimlendirme ile ilgili kurallar kullanılan işletim
sistemine bağlıdır.
• Yaygın olarak kullanılan dosya isimlendirmeleri
– 1-8 karakter
– Dijitler ve belirlenmiş semboller
– Modern işletim sistemleri 255 karaktere kadar
desteklemektedir.
• Bazı dosya sistemleri karakter duyarlıdır.
– DOS, Windows (Karakter duyarsız)
– UNIX, Linux (Karakter duyarlı)
• Birçok işletim sistemi iki parçalı dosya
sistemini destekler.
– Parçalar nokta(.) ile birbirlerinden ayrılırlar.
– Örn: <dosya ismi>.<uzantı>
– deneme.txt, ornek.pdf, MyApplication.cs
• Uzantılar dosya hakkında bir takım bilgiler
içerir.
• Bazı işletim sistemleri için ise uzantı önemli
değildir.
– UNIX ve Linux dosya uzantılarını dikkate almazlar.
– Fakat bazı uygulamalar uzantılara bağlı olarak
çalışabilir.
Dosya Türleri
• 2 temel tür söz konusudur.
– Düzeli dosyalar (Regular Files): Kullanıcı verilerini
saklarlar. Bu tip dosyalar ASCII veya Binary olabilir.

– Dizinler (Directories): Dizinler, dosya sisteminin


yapısını yönetmek için kullanılan sistem
dosyalarıdır.
• Unix ortamında ise:
– Karakter dosyaları (Character Files) : I/O
kaynakları ile ilişkilidir, seri I/O cihazlarını
modellemek için kullanılır.
• /dev/tty, /dev/lp, /dev/net

– Blok dosyaları(Block Files) : Diskleri modellemek


için kullanılır.
• /dev/hd1
• /dev/hd2
Yapı (File Structure)
Dosya Erişimi (File Access)
Daha önce de bahsedildiği üzere 2 grupta
toplanabilir:
• Sıralı Erişim (Sequential Access)
Örn: Basit text dosyaları

• Rastgele Erişim (Random Access)


Örn: Veritabanı dosyaları, film dosyları
Dosya Nitelikleri (File Attributes)
• Dosya, isim ve uzantı haricinde de bazı karakteristikler
içerebilir.
• Yaygın olan bazı nitelikler:
– Dosya sahini (Owner)
– Dosyayı oluşturan (Creator)
– Koruma (Protection)
– Sadece okunabilirlik(Read only flag)
– Gizlilik (Hidden flag)
– Arşiv (Archive flag)
– En son erişim tarihi (Last Modified Date)
– …….
– …….
Dosya İşlemleri (File Operations)
• Oluşturma (Create)
• Silme (Delete)
• Açma (Open)
• Okuma (Read)
• Yazma (Write)
• Ekleme (Append)
• Kapama(Close)
• Arama (Seek)
• Yeniden Adlandırma (Rename)
• ….
Directory’ler(Directories)
• Dosyaları izlemek ve organize etmek için
kullanılır.
• Bir çok işletim sistemi directory’leri dosya gibi
ele alır.
– DOS, UNIX, Linux directory olarak isimlendirir.
– Windows ise dizin (Folder) olarak isimlendirir.
Tek Seviyeli Directory Yapısı
• Directory sisteminin en basit biçimidir. Tek bir
directory tüm dosyları içerir.

• Bu tekli directory “root” (kök dizin) olarak


isimlendirilir.
Çok kullanıcılı bir sistemde aynı isimde
dosyaların olması mümkün değildir.
İki Seviyeli Directory Yapısı
Çakışmayı önlemek için her bir kullanıcı için
farklı directoryler tahsis edilir.
Hiyerarşik Directory Yapısı
• Kullanıcılar kendi dosyalarını yönetmek
istediklerinde iki seviyeli directory yapısı
yeterli olmayacaktır.
• Neredeyse tüm işletim sistemleri çoklu
directory seviyelerini desteklemektedir.
• Fakat, CD-ROM dosya sistemi, bu konuda
hiyerarşik olarak belirli bir sınıra sahiptir.
Directory İşlemleri
(Directory Operations)
• Oluşturma (Create)
• Silme (Delete)
• Directory Açma (Opendir)
• Directory Okuma(Readdir)
• Directory Kapama (Closedir)
• Yeniden Adlandırma (Rename)
• Bağlantı(Link)
Yol İsimlendirmesi (Path Naming)
• Dosyalar directory ağacının içinde olduğunda
dosyanın konumunu belirtmek için bir
isimlendirme şemasının kullanılması gerekir.
• Mutlak yol isimleri (absolute path names)
– /Users/John/presentation.ppt
• Göreceli yol isimleri(relative path names)
– Üzerinde çalışılan dizine göre göreceli yol isimleri
verilebilir.
• John/presentation.ppt
• Üzerinde çalışılan directoryden bağımsız
olarak mutlak yol isimleri her zaman sonuç
verecektir.
• Her bir directoryde 2 özel yapı bulunmaktadır.
– .(nokta) : Şu anda üzerinde çalışılan directorye
işaret etmektedir.
– ..(iki nokta):Bir üst seviyedeki directorye (parent
directory) işaret etmektedir.
• ./John/presentation.ppt
Dosya Sitemi Düzeni(Layout)
Dosyalama
• Bir dosyanın bu yapı üzerinde nerede
bulunduğunun bilinmesi gerekir.
• Dosyalar bloklar halinde depolanırlar.
• Dosyaların bulundukları yerin izini sürmek için
pek çok yaklaşım kullanılmaktadır.
– Yayılan Dağılım (Contagious Allocation)
– Bağlı liste Dağılımı (Link List Allocation)
– Bellekteki bir tabloyu kullanan bağlı liste dağılımı
– I-nodes
Blok Boyutu (Block Size)
• Verileri kolay bir şekilde adresleyebilmek,
yazıp/okuyabilmek için sabit uzunluktaki
bloklar tercih edilir. (fixed sized blocks)
• Tek bir blok tek bir sektör boyutunda
olabileceği gibi birden fazla sektör boyutunda
da olabilir.
• Ne çok küçük ne de çok büyük boyutlu
olmalıdırlar.
• İdeal olarak 4K güzel bir seçim olabilir.
Block Size

Büyük Blok Boyutu  Yüksek Veri Hızı


Büyük Blok Boyutu  Düşük Kullanım Alanı
Küçük Blok Boyutu Düşük Veri Hızı
Küçük Blok Boyutu  Yüksek Kullanım Alanı
Yayılmacı Tahsis
(Contigous Allocation)
• En basit tahsis yöntemidir.
• Bir dosya diğerinden sonra saklanır.
• Avantajları:
– Uygulamak kolaydır.
– Okuma işlemi hızlı bir şekilde gerçekleşir.
• Dezavantajı:
– Disk parçalaması(Disk fragmentation)
• Ticari işletim sistemlerinde kullanılmaz. Gömülü
işletim sistemleri ve CD-ROM larda tercih edilir.
Bağlı Liste Tahsisi
(Link List Allocation)
• Avantajları:
– Her disk bloğu kullanılabilir.
– Parçalamadan dolayı herhangi bir yer kaybı söz
konusu değildir.
• Dezavantajları:
– Rastgele erişim oldukça yavaştır.
– Eğer link bilgisi kaybolursa dosyanın geri kalanına
konumlanamaz.
Dosya Yerleşim Tablosu (FAT)
• Bağlı liste yerleşim bilgileri belleğe yerleştirilir.
• Avantajları:
– Rastgele olarak hızlı bir şekilde erişilir.
– Disk üzerindeki bloklardan bir tanesi kaybolsa dahi
dosyanın geri kalanına konumlanılabilir.
– Tekli disk bloğunu tamamen kullanır.
• Dezavantajı
– FAT bellekte biraz yer kaplar.
I-Nodes
• Index düğümleri her bir dosya ile
ilişkilendirilir.(Dosyalara referans ederler)

• Index düğümü i node olarak adlandırılır.

• Verilen bir i-node ile dosyanın bütün bloklarını


bulmak mümkündür.
• UNIX, işletim sisteminde her şey bir dosya
olarak tutulmaktadır. Dosyaların
isimlendirmesi sadece kullanıcılar için anlamlı
iken, UNIX için bir anlam ifade etmemektedir.

• Dosya isimleri yerine, oluşturulan her dosyaya


o dosyaya ait olmak üzere bir numara verilir.
Bu numara da inode’dur.
• Dosya üzerindeki tüm işlemler inode numarası
kullanılarak yapılır.

• Super block için de bir blok inode tablosu için


ayrılmış durumdadır.
• Bir i-node’da
– Tip ve haklar
– Dosyanın sahibi
– Boyut bilgisi
– Son erişim zamanı
– Son değişiklik zamanı
– Sektör miktarı gibi bilgiler bulunur.
• İnode’ların boyutu sabittir.
• Avantajı:
– Bir dosya açıldığında sadece karşılık gelen i-node
belleğe getirilir.
Uygulamada Directory’ler
• Directory’nin temel amacı dosya ismi ile bu
dosyanın verisine olan haritalamayı
sağlamaktır.

• Doğru disk bloklarını bulmak için


– Yayılmacı tahsis (Contiguous Allocation)
– Bağlı liste tahsisi (Link List Allocation)
– INode kullanılır.
Dosya Niteliklerini Depolamak

• Sabit boyutlu girdiler, disk adresleri &


directory girdilerindeki nitelikler
• Her bir girdi ayrı bir inode’a işaret eder.
DOS Dosya Sistemi
• FAT’ı kullanılır.
• 8+3 karakterlik dosya isimlerini kullanırlar.
• Read-only, arşiv, gizli ve sistem niteliğine sahip
olabilirler. 2 versiyonu bulunmaktadır.
– FAT-12
• Maksimum partition genişliği 2 Mb’tır.
• 4 farklı partition olabilir.
– FAT16
• Maksimum partition genişliği 2GB’tır.
• 4 farklı partitionu olabilir.
Director Girdisi (MS-DOS)
Blok Genişliği(Block Size)
Windows 98 Dosya Sistemi
• Windwos 95’in ikinci sürümü ile gelmiştir.
• Aslında FAT-32’dir.
– Maksimum partition boyutu 2TB’dır.
– 4 partitiondan fazlasını destekler.
• Dosya isimleri 255 karaktere kadar olabilir.
• FAT-16 ile geriye doğru uyumludur.
Windows 2000 Dosya Sistemi
• NTFS(New Technology File System)’i kullanır.
• İlk olarak Windows NT’de kullanmıştır.
• Tek bir partition 264 byte’a kadar olabilir.
• Dosya isimleri 255 karakter olabilir (unicode).
• FAT-16 ve FAT-32 ile geriye doğru uyumlu
değildir.
UNIX/Linux Dosya Sistemi
• Inode’ları kullanır.
• İlk versiyonlarında 14 karakter sınırı
vardı.Fakat sonradan 255 karakteri destekler
hale gelmiştir.
• Dosya sistemi güvenliği varsayılan (built-in)
olarak gelmektedir.
• Bir çok dosya sistemini destekler.
– V7,ext,ext2,ext3
– NFS (Network File System)
– VFAT (Unix)
Ext Dosya Sistemi
• 14 karakter desteği vardır.
• Tek bir dosya boyutu maksimum 2 Gb olabilir.
• ext2 ,ext3 daha sonraki gelişmiş
versiyonlarıdır.
Linux Dosya Sistemi
Unix V7 Dosya Sistemi
• Bir directory girdisi şu şekildedir:

• Inode’ların sayısı 162 ile sınırlıdır.


/usr/ast/mbox yoluna erişim için
/usr için olan Blok 132 /usr/ast için olan Blok 406
Root directory
Inode6 /usr directory Inode26 /usr/ast directory
1 . Blok Bilgisi 6 . Blok Bilgisi 26 .
1 .. 1 .. 6 ..
132 406
4 bin 19 dex 64 grants
7 dev 30 erik 92 books
14 lib 6 numralı Inode 26 numralı Inode
51 jim 60 mbox
/usr nin 132 /usr/ast nin 406
9 etc numaralı blokta 26 ast numaralı blokta 81 minix
6 Usr olduğunu 45 bal olduğunu 17 src
8 tmp belirtmekte belirtmekte
/usr/ast için 26 /usr/ast/mbox için
6 numralı Inode’a numaralı Inode’a 60 numaralı
yönlendirecektir. yönlendirecektir. Inode’a
yönlendirecektir.
• Sabit diskler için temel depolama alanı bir
sektördür; her sektör 512 byte a kadar veri
depolar.
• Eğer bir OS bir sektörde 512 byte’dan daha az
bir dosya depolarsa sektörün geri kalanı boş
kalır. Bu boşluğu kabul ederiz çünkü çoğu
dosyalar 512 byte’dan çok daha büyüktürler.
• Peki bir OS 512 byte’dan daha büyük bir dosya
depoladığında ne olur? OS’nin bir sektörü
doldurmak için metoda ihtiyaç duyar,
kullanılmayan başka bir tane bulur ve onu
doldurur ta ki dosya tamamen depolanana
kadar sektörleri doldurmaya devam eder.
• OS bir dosyayı depoladığında dosyaya tekrar
erişmek için onun hangi sektörler tarafından
tutulduğunu hatırlamalıdır.
• MS-DOS sürüm 2.1 ilk olarak sabit disk
üzerinde depolanmış verinin izini tutmak için
özel bir veri yapısı kullanarak sabit diskleri
destekledi ve Microsoft bu yapıyı FAT, yani
dosya ayırma tablosu (file allocation table)
olarak adlandırdı.
• FAT’in bir dosyanın çeşitli parçalarını
depolayan sektörlerin izini tutan bir kart
kataloğundan başka bir şey olmadığını
düşünün
• . FAT’in resmi tanımlaması veri yapısıdır fakat
daha çok iki sütunlu elektronik çizelge gibidir.
Soldaki sütun her sektöre 0000 dan FFFF’ye
kadar (elbette ki hex formatında) bir sayı verir.
Bu 65.536 (64 K) sektör olduğu anlamına gelir.
• Sol sütundaki her bir değerin 16 bit
barındırdığına dikkat ediniz. Bu tür bir FAT’e biz
16-bitlik FAT veya FAT16 deriz. Yalnızca sabit
diskler FAT’e sahip değildirler. Bazı USB diskler
de FAT16 kullanır. Disket sürücüler FAT kullanır
fakat onların FAT’leri sadece 12 bit’dir. Çünkü
onlar daha az veri depolarlar.
• FAT’in sağ sütunu sektörlerin durumu
hakkında bilgi içerir.
• Tüm sabit diskler fabrikadan yeni çıkan yeni
diskler de olmak üzere veri depolayamayan
hatalı sektörler içerir çünkü disklerin
yapımında kusurlar vardır.
• OS bu kötü sektörleri kullanılmaz olarak
işaretleyip belirlemesi ve ardından onlara
herhangi bir dosya yazımını engellemesi
gerekir. Kötü sektörlerin bu haritalaması
yüksek seviyeli biçimlendirmenin
fonksiyonlarından biridir.
• Format programı, FAT oluşturduktan sonra
bütün bölme boyunca her bir sektöre sırasıyla
yazar ve okumaya çalışır. Eğer kötü bir sektör
bulursa sektörün FAT bölgesine özel bir durum
kodu (FFF7) yerleştirir ve bu sektörün
kullanılamaz olduğunu belirtir. Biçimlendirme
aynı zamanda iyi sektörleri 0000 olarak
işaretler.
• Bununla birlikte sektörlere iz bırakmak için FAT
kullanmak bir sorun oluşturur.
• 16 bitlik FAT maksimum 64 K (216) bölgeyi
adresleyebilir. Bu yüzden sabit disk bölmesinin
boyu sektör başına ya 64 K x 512 byte veya 32
MB ile sınırlı olmalıdır.
• Microsoft FAT16’yı göz önüne aldığında bu 32
MB sınırı sorun değildi. Çünkü çoğu sabit disk
sadece 5 MB ila 10 MB arasında idi. Sabit
disklerin boyutu arttığında onları çoklu
bölmelere ayırmak için FDISK kullanmanız
gerekiyordu.
• Örneğin 40 MB’lık bir sabit diski her bölmesi
32 MB’dan az olan iki bölmeye ayırmalıydınız.
Fakat sabit diskler çok fazla büyümeye
başladığında Microsoft 32 MB’lık disk sınırının
kabul edilemez olduğunu fark etti. 16 bit
FAT’in geliştirilmesi gerekiyordu. Bu sorun
FAT32 ile çözüldü.
DOSYA SİSTEMLERİ

• Dosya sistemi disk üzerindeki dosyaların


sistem tarafından kontrolüne olanak kılan
yönetim sistemidir. Bu sistemler tipik olarak
bir boot record (sistem açılış kaydı), dizinler
ve dosyaları içerir.
• Bir dosya sistemi üç temel işlemi
gerçekleştirir:
• Mevcut ve boş alanların yönetimi
• Dosya ve dizinlerin bakımı
• Her dosyanın disk üzerindeki fiziksel
adreslemesinin bilinmesi. Değişik
işletim sistemleri için değişik dosya sistemleri
yapılmıştır.
PARTITION NEDİR ?

• Diskin mantıksal bölümlerine partisyon


(partition) denir. Diski mantıksal bölümlere
ayırmaya da partitioning denir. Örnek
olarak diski C: D: E: gibi sürücü harflerine
göre bölümlemek ya da linuxta diski mount
pointlere göre bölümlemek gibi.
CLUSTER,SEKTÖR,SİLİNDİR
• Disklerin üzerindeki dairesel izlere Track
veya cylinder (silindir) denir. Birden fazla
disk kullanılırsa bunlar üzerindeki
okuyucu kafalara ise head, okudukları
yüze Side denmektedir.
• Bir dairesel iz açısal olarak eş bölümlere
ayrılmıştır. Bu bölümlere ise Sector
(sektör) denmektedir. Bütün bunlar göz
önüne alındığında bir bilginin adresini
vermek için kafa veya yüz numarası, izin
numarası ve sektor numarası verilmelidir.
• Genel olarak bir track üzerinde bir
sektörün belirlediği alan 512 byte’tır.
Ancak bazı SCSI disklerde bu boyut
değişebilmektedir.Disk erişimini
kolaylaştırmak için sektörler gruplanarak
CLUSTER lara bölünür.
Windows
dosya
sistemleri
nin
destekledi
ği boyutlar
ve cluster
boyutları
FAT 16 DOSYA SİSTEMİ
(File Allocation Table)

• FAT dosya sistemi ilk microsoft ürünleri


olan MS-DOS, Windows 3.1 ve Windows
95 te kullanılmıştır.2 GB a kadar
partisyonları desteklediği için günümüzde
kullanışsızdır.Fat dosya sistemi bir kök dizin
kullanır.Bu kök dizin tüm partisyonu temsil
eder.
FAT 32 DOSYA SİSTEMİ
(File Allocation Table)

• Windows 98, Windows 98 SE, Windows


ME, Windows NT 5.0 işletim sistemleri için
kullanılır. Windows xp Windows 2000 gibi
işletim sistemlerinde kullanılması
mümkündür. Bu dosya sistemi 32 bitlik
dosya erişimini destekler.
• Ayrıca yine 32 gigabyte (GB) a kadar diskleri
destekler. Windows XP yükleme işlemi
sırasında, boyutu 32 gigabytetan (GB) büyük
olan bir bölümü FAT32 dosya sistemini
kullanarak biçimlendirilemez. MS-DOS, Win
3.1, Windows 95 gibi microsoft işletim
sistemleri FAT32 dosya sistemini tanımaz.
NTFS DOSYA SİSTEMİ
(New Technology File System)

• NTFS Windows NT, Windows 2000,


Windows XP ve Windows Vista tarafından
kullanılabilen bir dosya sistemidir.Önceki
Windows sürümleri bu dosya sistemine
erişemez.NTFS dosya sisteminin merkezi
yapısında MFT (Master File Table - Ana
Dosya Tablosu) kullanılmaktadır.
TEŞEKKÜRLER

You might also like