Mis on nullbaidine fail?

Nullbaidine fail on andmefail arvutisüsteemis, kõvakettal või muul salvestusseadmel, mille tegelik pikkus on null baiti. Paljudel juhtudel luuakse nullbaidine fail faili loomise ajal tekkinud tõrke tõttu (nt katkenud võrguedastus, tarkvara krahh või valesti kirjutatud failitöötlusrutiin). Muul ajal luuakse nullbaidine fail tahtlikult, et saata sõnum failikataloogi vaatavale kasutajale, reserveerida kataloog või failinimi automaatsete protsesside juhtimiseks või näidata programmile mõnda vahetut olekut või teavet. Nullbaidisel failil, mille failimaht on tegelikult null baiti, ja failil, mis ei sisalda genereeritud andmeid (nt tekstilise sisuta dokumendifail, mis võib siiski sisaldada metaandmeid või muud teavet selle loonud programmist), on tehniline erinevus. Mõnikord, eriti kui nullpikkusega fail luuakse vea tõttu, võib nullbaidise faili kustutamine olla väga keeruline, kuna rikutud fail takistab operatsioonisüsteemil failiga otseselt manipuleerida.

Arvuti või muu seadme failisüsteemis on failidel teatud atribuudid (nt nimi, laiend ja juurdepääsu omadused), mida operatsioonisüsteem haldab. Teave, mida fail sisaldab peale selle, salvestatakse baitidena ja seda saab lugeda faili suuruse määramiseks. Enamik faile sisaldab teatud teavet, sest faili loomine ei ole alati tühine ülesanne. Siiski on võimalik, et faili luuakse operatsioonisüsteemis nii, et sellel on nimi ja atribuudid, kuid see ei sisalda andmeid, mistõttu on see nullbaidine fail.

Salvestusseadmes oleva faili teabe loomine ja kirjutamine on protsess, mille lõpuleviimiseks kulub mitu sammu. Mõnel juhul võib see protsess katkeda või jääda lõpuni viimata, jättes alles faili, mis ei sisalda andmeid. Selle üheks levinumaks põhjuseks on vahemällu salvestamine, protseduur, mida operatsioonisüsteemid kasutavad suure hulga andmete kogumiseks muutmällu (RAM) enne füüsilise salvestusseadme aktiveerimist, et täita teabe füüsilise kodeerimise ja salvestamise aeganõudvamat ülesannet. Andmete vahemälu ei kirjutata alati automaatselt faili – see on funktsioon, mida nimetatakse loputamiseks –, nii et saab luua faili ja seejärel vahemälu mitte tühjendada, nii et andmeid ei kirjutata kunagi füüsiliselt ja jäetakse tühi fail.

Sama kontseptsioon nagu vahemälu tühjendamine faili loomise ajal võib ilmneda ka siis, kui andmeid edastatakse võrgu kaudu, näiteks faili Internetist allalaadimisel. Kui andmeedastust ei lõpetata, ei pruugita teavet kunagi salvestusseadmesse kirjutada, jättes maha nullbaidise faili. Muud nullpikkusega faili põhjused on ketta füüsilised vead, mis takistavad andmete kirjutamist, ja rikutud failijaotustabeli teave, mis jätab nullpikkusega artefaktid, mis pole tegelikult failid.

Nullbaidise faili saab mõnikord luua tahtlikult. Seda saab teha kasutajale sõnumi jätmiseks, kasutades faili nime, mitte salvestades sellesse teavet. Neid kasutatakse ka kohahoidjatena, mis näitavad, et konkreetne protsess, näiteks installimine või registreerimine, on läbi viidud. Nullpikkusega faili võib mõnikord teha ka programm, mis kavatseb teavet kirjutada, kuid ei saa siis midagi kirjutatavat, jättes tühja faili.