Hlavní navigace

Názor ke článku Mazání dat uprostřed souboru od Josef Pavlik - Tahle funkce by byla VELMI uzitecna pro editaci...

  • 15. 9. 2014 11:55

    Josef Pavlik (neregistrovaný) 77.108.35.---

    Tahle funkce by byla VELMI uzitecna pro editaci videi nebo muziky. Ve videu se ti stane velmi casto, ze potrebujes vystrihnout kus (treba reklamu). Ovsem v aktualnim stavu veci se vystrizeni jedne sekundy z prostredka rovna zkopirovani nekolika giga z jednoho mista disku na druhe.
    Fragmentace neni problem, protoze mpeg podporuje vyplnovani mezer, takze kdyby bylo potreba vystrihnout napriklad 66000 bytes, tak 64kilo (65536) se vystrihne fyzicky a zbytek (464) se vyplni podle standardu mpegu.
    Samozrejme zustava problem s atomicnosti teto operace, ale to by se dalo resit prehazovani bloku v souboru a hardlinkama = ve smyslu sdileni inodu mezi vice soubory.

    Nejak takhle:
    Mam file tvoreny inodama 10 11 12 13 14 15 16. Chci vystrihnout kus kolem bloku 13. Vyrobim novy file s inodama 10 11 20 15 16 - v inode 20 je zkopirovany zacatek inode 12 a konec inode 14 a vypln toho co zbylo do velikosti bloku. Az je to hotovo, prejmenuju puvodni file na ten novy. Tim se zrusi puvodni file a bloky 12 13 14 se uvolni, protoze je uz zadny dalsi file nepouziva. ostatni bloky zustanou alokovane.

    Netusim, jestli tyhle operace nektery filesystem podporuje, ale predpokladam, ze jo. Vicemene staci, abych mel moznost zjistit ktere inody tvori muj puvodni file a abych mohl vyrobit novy file, kteremu ja reknu ze kterych inodu ma byt slozeny.
    Ostatni operace ktere potrebuju jsou jenom seek, read a write, abych mohl vyrobit obsah toho meho inode 20 z minuleho prikladu.