
English: 
One of our loyal viewers sent in a question the other day.
He was asking why, when he creates an empty text document
on his computer, does it have a file size of zero bytes.
Well, there's no text in it, so that sort of makes sense,
but he realized - well, actually, there's some information
associated with it, this thing - it's got a file name,
there's how big a size it is, there's a time it was created, and so on.
Where's all that information stored?
Why does it have zero bytes, and yet we know there's some information stored alongside it?
So we can demonstrate what this actually means if we use the computer.
So let's just create a simple text document.
This document's got nothing in it, so let's save this out to disk...
...and we'll call it "Empty.txt".
So we've created an empty text file,
and if we look on our system, we can see that we have created a file called "Empty.txt"
with zero bytes in it. It's an empty file, there's nothing in there,
and if we have a look at all the data that's in there...

Turkish: 
Sadık izleyicilerimizden biri geçen gün bir soru gönderdi.
Neden boş bir metin belgesi oluşturduğunu soruyordu.
Bilgisayarında, sıfır bayt dosya boyutuna sahip.
İçinde metin yok, bu yüzden mantıklı.
ama fark etti - aslında, bazı bilgiler var
onunla ilişkili, bu şey - bir dosya adı var,
büyüklüğü ne kadar büyük, yaratıldığı zaman var, vb.
Bütün bu bilgiler nerede saklanıyor?
Neden sıfır bayt var ve hala yanında depolanan bazı bilgiler olduğunu biliyoruz?
Böylece, bilgisayarı kullanırsak bunun ne anlama geldiğini gösterebiliriz.
Öyleyse sadece basit bir metin belgesi oluşturalım.
Bu belgenin içinde hiçbir şey yok, hadi bunu diske kaydedelim ...
... ve biz buna "Empty.txt" diyoruz.
Böylece boş bir metin dosyası yarattık.
ve eğer sistemimize bakarsak, "Empty.txt" adlı bir dosya yarattığımızı görebiliriz.
İçinde sıfır bayt ile. Boş bir dosya, içinde hiçbir şey yok.
ve eğer oradaki tüm verilere bakarsak ...

Turkish: 
Dosyayı deniyoruz ve kedimize bakıyoruz - orada hiçbir şey yok.
Bu boş bir belge.
Sadece gerçek bir metin belgesinin sahip olacağını kanıtlamak için
İçindeki bazı bilgiler, "Merhaba, Computerphile!" yazan bir tane oluşturalım.
ve bunu kaydedin, biz bunu "NotEmpty.txt" olarak adlandırırız.
Ve şimdi şuna bakarsak, iki dosyamızın olduğunu görüyoruz - "Boş", bununla ilişkili 0 bayt var,
ve bununla ilişkili 21 baytlık "NotEmpty".
"NotEmpty" nin içinde ne olduğuna bakarsak,
Bu 21 baytın ASCII kodlarını "Merhaba, Computerphile!" şeklinde oluşturduğunu görüyoruz.
Yani bu iki dosyamız var - biri "Boş", içinde hiçbir şey yok,
ve bunlardan birinde 21 karakter var ve satırın sonunda "Merhaba, Computerphile!"
Ancak hiçbirinde aslında dosya adı saklı değil.
Oradaki randevuları yok, dosyanın büyüklüğü yok.
Peki tüm bunlar nerede saklanıyor? Orada neler oluyor?
Aslında, bu bilgi parçalarını iki şey olarak düşünmemiz gerekiyor.
Belge olan bir bit bilgiye sahibiz.

English: 
We try and cat the file - there's nothing in there.
That's an empty document.
Just to prove that a real text document would have
some information in it, let's create one that says "Hello, Computerphile!"
and save that out, we'll call this as "NotEmpty.txt".
And if we look at that one now, we see we've got two files - "Empty", which has got 0 bytes associated with it,
and "NotEmpty", which has 21 bytes associated with it.
If we just look at what's inside "NotEmpty",
we see that those 21 bytes form the ASCII codes for "Hello, Computerphile!"
So we have these two files - one's "Empty", which has nothing in it,
and one of them has 21 characters in it and the line feed at the end for "Hello, Computerphile!"
But neither of them actually have the filename stored in them,
they don't have the date there, they don't have how big the file is.
So where is all that stored? What's going on there?
Well, actually, we need to think about these bits of information as being two things.
We have one bit of information, which is the document.

English: 
In this case, it's either empty or it's got some ASCII characters in it.
But the other information isn't really part of the document.
It's describing that document.
So it's information which tells us what we want to call the document,
how big it is, when we edited it, and so on.
It isn't actually about the document.
And the easiest way to think about that is to think about it -
if you rename a document, you don't change a document.
So if I rename the file "NotEmpty.txt" to be "StillNotEmpty.txt"...
We've changed the filename, but the file is still the same,
even though we've given it a longer filename.
So if we hexdump this one, the bytes match between the two different ones.
The thing we have to think about first is that we have our document,
and if we draw that out, so we have computer icon for the document,
and we also have alongside that the information about what we called that.
In this case, "Empty.txt".

Turkish: 
Bu durumda ya boş ya da içinde ASCII karakterleri var.
Ancak diğer bilgiler belgenin bir parçası değil.
Bu belgeyi açıklıyor.
Yani bize belgeyi ne demek istediğimizi söyleyen bilgi,
ne kadar büyük, düzenlediğimizde vb.
Aslında belge ile ilgili değil.
Ve bunu düşünmenin en kolay yolu, onu düşünmektir -
Bir belgeyi yeniden adlandırırsanız, belgeyi değiştirmezsiniz.
Yani "NotEmpty.txt" dosyasını "StillNotEmpty.txt" olacak şekilde yeniden adlandırırsam ...
Dosya adını değiştirdik, ancak dosya hala aynı.
daha uzun bir dosya adı vermiş olsak da.
Yani bunu attığımızda, baytlar iki farklı olanla eşleşir.
İlk önce düşünmemiz gereken şey, belgemizin olması.
ve eğer bunu çıkarırsak, belge için bilgisayar simgesine sahibiz,
ve buna ne dediğimizle ilgili bilgilerin yanında.
Bu durumda, "Empty.txt".

Turkish: 
Yani bu belgeye "Empty.txt" denir ve sıfır bayt olan bir boyuta sahiptir.
ve bizim yarattığımız bir tarihe sahip olacak.
Bununla ilgili şeyleri değiştirdikçe, hareket ettikçe bu bilgi değişecektir.
Böylece dosya adını değiştirebiliriz, bu yüzden buna "StillEmpty.txt" diyoruz,
eski dosya adından kurtulduk, ancak belgeyi gerçekten değiştirmedik. Bu aynı kaldı.
Çünkü bu şeyleri ayrı olarak düşündüğümüz gibi,
belgeyi tanımlayan ancak belgenin bir parçası olmayan bir isme sahibiz,
bilgisayardaki dosya sistemi tamamen aynıdır.
Yani, videoların tekrar kaydedildiğini hatırlarsanız, verilerin bir diskte nasıl depolandığına baktık,
diski bir dizi parçaya böldük,
ve bu izleri tek sektörlere ayırıyoruz.
Sistemdeki raylara ve sektörlere ait belgeleri saklamanın yanı sıra,
SSD olsa bile, çoğu zaman taklit ediyor,
Bu eski sistemde sabit disk kullanma eğilimindedir.
Verileri saklamanın yanı sıra bir dizin veya katalog da saklıyoruz.
Bu, bilgilerin saklandığı yeri temsil eder.
FAT dosya sistemini burada örnek olarak kullanacağım.
çünkü anlaşılması oldukça kolay.

English: 
So this document is called "Empty.txt", and it has a size, which is zero bytes,
and it'll have a date we created it.
And as we change things about this, as we move it around, this information will change.
So we might change the filename, so we call it "StillEmpty.txt",
we get rid of the old filename, but we haven't actually changed the document. That stayed the same.
Cause just as we think about these things as being separate,
we have the name which describes the document, but isn't part of the document,
the file system in the computer does exactly the same.
So if you remember back to the videos we did on how data is stored on a disk,
we divide the disk up into a set of tracks,
and we break those tracks up into single sectors.
So as well as storing the documents on the tracks and sectors on the system,
even if it's an SSD, it's still emulating a lot of the time,
this old system the hard disks tend to use.
As well as storing the data, we also store a directory, or catalog,
that represents where that information is stored.
I'm going to use the FAT file system as an example here,
because it's relatively straightforward to understand.

Turkish: 
NTFS, ext2 vb. Sistemler - ZFS - hepsi farklı değişkenler kullanacaktır,
ancak kataloğu temsil etmenin daha etkili yollarını kullanan benzer kavramlara sahiptirler.
Yani düz bir dosya sisteminde, dizin gerçekten sadece özel bir dosya türüdür.
"Kök" dizini adında özel bir dizin var.
Sistem nerede bulacağını bildiği şey.
Ancak bunun içinde diğer dizinlere ve ayrıca dosyalara işaret eden girişler bulacaksınız.
Orijinal FAT sistemindeki bu girişlerin her biri 32 baytlık veriden oluşur.
Bunlar birbiri ardına ardı ardına depolanır, eğer başka bir tane olsaydı,
hemen bu 32 baytı takip ederdi.
Bu nedenle, örneğin ilk 8 bayt, dosya adının ilk bölümünü depolamak için kullanılır.
Yani eğer bir dosyamız olsaydı - hadi buna "Boş" diyelim,
Bu bizim kullandığımız şeydi, bizde boş, bu yüzden beş karakter.
ve diğer üç varlık alanı depolarız.
Sonraki üç bayt uzantıyı saklar, yani TXT.

English: 
Systems like NTFS, ext2, etc. - ZFS - will all use different variations,
but they have similar concepts that use more efficient ways of representing the catalog.
So in a flat file system, the directory is really just a special type of file.
So there's a special directory called the "root" directory,
which is the one that the system knows about where to find.
But inside that you'll find entries that point to other directories, and also point to files.
And each of those entries in the original FAT system is made up of 32 bytes of data.
And these are stored consecutively after each other, so if we had another one,
it would immediately follow these 32 bytes.
So the first 8 bytes, for example, are used to store the first part of the filename.
So if we had a file named - let's call it "Empty",
which is what we used, we have E-M-P-T-Y, so that's five characters,
and we store the other three being spaces.
The next three bytes store the extension, so T-X-T.

Turkish: 
Noktayı kaydetmiyoruz, bu yüzden adı boşlukla doldurulmuş bir isme sahibiz.
o zaman orada bu uzantı var.
Daha sonra çeşitli bayraklarımız var.
bazıları bunun bir dizin mi yoksa özel bir dosya mı olduğunu söyler.
Ve sonra sona doğru, büyüklüğümüz var ve dört bayt var.
bunun için belirtilen, FAT dosya sisteminde dört gigabayttan daha büyük bir dosyaya sahip olamayacağınız anlamına gelir.
Ayrıca dosyanın nerede başladığını söyleyen iki bayt var.
Yani başlangıçta, bir diskin başında, dosyayı tanımlayan bu bilgilere sahibiz.
En önemlisi, bize diskte nerede bulacağımızı söyler.
nerede başladığı ve ne kadar büyük olduğu.
Şimdi, ne kadar büyük olduğunu bilmemiz gerek.
çünkü sadece çok sayıda sektör tahsis edebiliriz,
veya teknik olarak, bu dosyayı depolamak için bir araya getirilen birden fazla sektör olan kümeleri kullanıyoruz.
İlk önce nerede olduğunu ve sistemin başka bir bölümünün olduğunu biliyoruz.
hangisinin, birlikte kullanacağımız dosyaların bağlantılı bir listesini oluşturmak için oluşturulduğunu söyler,
daha ayrıntılı olarak başka bir videoda buna gireceğiz.
Böylece boyutumuz var, bu yüzden kullandığımız son kümede tam olarak nereye duracağımızı biliyoruz.

English: 
We don't store the dot, so we have the name padded up with spaces,
then we have that extension there.
We then have various other flags and so on,
some of which tell it whether it's a directory or a special file, and so on.
And then towards the end, we have the size, and there's four bytes
which are specified for that, which means you can't have a file bigger than four gigabytes on the FAT file system.
And there's also two bytes which say where the file starts.
So in the start, at the beginning of a disk, we have this information which describes the file.
Most importantly, it tells us where on the disk to find it,
where it starts, and how big it is.
Now, we need to know how big it is,
because we can only allocate a whole number of sectors,
or technically we use clusters, which is multiple sectors joined together, to store this file.
So we know where the first one is, and that there's another section of the system
which tells you which of the ones are formed together to form a linked list of the files that we'll use,
we'll go into that in another video in some more detail.
So we have the size, so we know exactly where to stop in the last cluster that we're using.

Turkish: 
Yani bu durumda, bu sıfır olacak
çünkü dosya boş ve burada kayıtlı adı var.
İlginç bir şekilde, eğer dosya sıfırsa, başlangıç ​​kümesinin de sıfır olduğunu söyleyebilirsiniz,
yani aslında hiçbir şeyi saklamayan bütün bir kümeyi almak zorunda değilsiniz.
Yani gerçek disk alanı açısından,
bu boş dosya hala hiç disk alanı kaplamaz.
Çünkü ihtiyaç duyduğu tüm bilgiler dizinin bir parçası.
Şimdi buna bir uyarı var. Söylediğimiz gibi
bu dosyaların her biri 32 bayt alır,
ve sonunda o dizini saklamak için kullanılan kümeyi dolduracaksınız.
Bunu yaptığınızda, bir sonraki dosyanın başka bir küme kullanmaya başlaması gerekir.
ve böylece bir kilobayt disk alacaktır.
veya 512 bayt disk veya ne olursa olsun, dosya sisteminin nasıl kurulduğuna bağlı olarak.
Yani bir noktada, biraz disk alanı kullanacak bir dosya oluşturacaksınız.
Dolayısıyla, bu marj, sahip olduğunuz başka kaç dosyaya bağlı.
Bir sonraki dosyanızın daha fazla yer kaplayıp saklamadığı konusunda?
Evet.
Yani tam olarak buna bağlı. Bir dizine daha fazla dosya eklediğimizde,

English: 
So in this case, this will be zero,
because the file is empty, and we have the name of it stored here.
Interestingly, if the file is zero, you can say that the start cluster is also zero,
so you don't actually have to take up a whole cluster storing nothing.
So in terms of actual disk space,
this empty file will still take up no disk space at all,
because all the information it needs is part of the directory.
Now there's one caveat to that. As we've said,
each of these files take up 32 bytes,
and eventually you'll fill up the cluster that is being used to store that directory.
When you do that, the next file will need to start using another cluster,
and so that will take up a whole kilobyte of disk,
or 512 bytes of disk, or whatever it is, depending on how the file system is set up.
So at some point, you will create a file that will use some disk space.
So that margin is dependent on how many other files you've got,
as to whether your next file takes any space up or not?
Yes.
So it depends on it, exactly. So as we add more files into a directory,

English: 
more empty files, they won't take up any space,
and then suddenly you'll add an empty file and it will take up a whole kilobyte of space on disk.
And then you'll keep adding more, and they won't take up any extra space,
then you'll add another one and it'll take up a whole kilobyte.
So you could, theoretically, fill up your whole hard disk with empty files and have no space on that.
If you want to try it, do so, but don't blame me if you suddenly find your computer doesn't work properly.
You'll have to find some way of deleting the empty files,
but your computer probably wouldn't boot properly.
And no one uses FAT these days anyway.
He created the empty .txt file and it didn't have anything in it.
and it took up zero bytes.
Now we discussed why they actually take up some space,
but he also created a rich text file, an RTF document.

Turkish: 
daha boş dosyalar, hiç yer kaplamazlar,
ve sonra aniden boş bir dosya eklersiniz ve diskte bir kilo kilo alan kaplar.
Ve sonra daha fazlasını eklemeye devam edersiniz ve fazladan yer kaplamazlar,
o zaman bir tane daha ekleyeceksiniz ve bu bir kilobaytı alacaktır.
Böylece, teorik olarak tüm sabit diskinizi boş dosyalarla doldurabilir ve bu konuda boş alan bırakabilirsiniz.
Denemek istiyorsanız, bunu yapın, ancak aniden bilgisayarınızın düzgün çalışmadığını tespit ederseniz beni suçlamayın.
Boş dosyaları silmenin bir yolunu bulmanız gerekecek,
ancak bilgisayarınız muhtemelen doğru önyükleme yapmaz.
Ve bugünlerde kimse FAT kullanmıyor.
Boş .txt dosyasını yarattı ve içinde hiçbir şey yoktu.
ve sıfır bayt aldı.
Şimdi neden biraz yer kapladıklarını tartıştık.
ama aynı zamanda bir RTF belgesi olan zengin bir metin dosyası yarattı.
