Eftersom mina inlägg oftast skrivs här då jag sitter med i telefonkonferenser eller har tid över får jag komplettera här nu, när jag har tid över och hade lite dåligt samvete över mitt dåligt formulerade och att jag faktiskt inte svarade på din fråga.
Anledningen att jag skrev ett svar första gången var för att ovanstående svar är fel (sorry "lolight" och "celebmir")...
Din outnyttjade yta kommer INTE bli 50% av filstorleken, den kommer bli "´klusterstorlek´-(´filstorlek´ mod(´klusterstorlek´))" och inget annat (vet inte hur mycket matte du läst men modulo är nåt du även bör kunna för krypto...).
För att jag inte vill ge dig svaret på "42" skriver jag bara ett fulhack här i det antika språket VB-script format så du får forska vidare själv (den funkar bara på småfiler som den är skriven så även där får du söka hjälp via lämplig sökmotor).
Starta notepad -> klistra in innehåller mellan "<-klipp->" -> spara som "blablabla.vbs" -> kör...
<-klipp->
Dim Waste, ClusterZise, Folder
Folder = "C:\whatever\"
ClusterZise = "4096"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(Folder)
Set colFiles = objFolder.Files
For Each objFile in colFiles
waste = cint(ClusterZise)-(cint(objfile.size) Mod cint(clusterzise))
Wscript.Echo ("namn: " &objfile.name & vbcrlf & "verklig storlek: "& objFile.Size & vbcrlf & "outnyttjad diskyta: " & waste)
Next
<-klipp->
innan du kör modda "Folder" och "ClusterZise" variablerna till något som passar dig,
och se resultatet med olika kluster storlekar, skrev in det som en variabel så du slipper formatera om hårdisken för att testa
(annars är det bara fyra rader extra kod för att läsa ut det och använda istället för ClusterZise med automagi...).
Jämförelse program finns inte (av förklarliga skäl, då en disk inte går att göra om identisk med olika kluster storlekar rakt av),
prestanda skillnaden går förmodligen att härleda till alignment fel och fragments (och även här är det enkel "jämnt delbar med"-matte alternativt antal läsoperationer-per-segement eller worst-case både och...).
// bC