-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
e.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!eternal-september.or
g!reader02.eternal-september.org!.POSTED!not-for-mail
From: heby <h...@p...onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Przenośny, uproszczony filesystem
Date: Tue, 6 Apr 2021 10:58:17 +0200
Organization: A noiseless patient Spider
Lines: 122
Message-ID: <s4h7rd$n3v$1@dont-email.me>
References: <rtpdik$cge$1@dont-email.me> <606a6d41$0$522$65785112@news.neostrada.pl>
<s4elb8$cni$3@dont-email.me> <606b5698$0$542$65785112@news.neostrada.pl>
<s4fu13$s6b$1@dont-email.me> <606b876c$0$517$65785112@news.neostrada.pl>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 6 Apr 2021 08:58:21 -0000 (UTC)
Injection-Info: reader02.eternal-september.org;
posting-host="76ac3790277d741921ae0d316a6d6019";
logging-data="23679";
mail-complaints-to="a...@e...org";
posting-account="U2FsdGVkX1+mR+UgFx4OIdU2ZbmYWGqX"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.9.0
Cancel-Lock: sha1:7Ptl2kaDu/yFG/P40M+TdDVM5xg=
In-Reply-To: <606b876c$0$517$65785112@news.neostrada.pl>
Content-Language: en-US
Xref: news-archive.icm.edu.pl pl.comp.programming:215429
[ ukryj nagłówki ]On 05/04/2021 23:55, J-23 wrote:
>> Zostało to wyjaśnione.
> Nie zostało
Więc jeszcze raz: chciałbym kilka plików, któe generuje apliakcja,
zawszeć w jednym. W przewieństwie do pakowania a'la zip, to ma być
dostepne jak normalne pliki, czyli mogę do niczh coś dopisać, trimować,
tworzyć i kasować.
Unikam wtedy bałaganu w postaci katalogu z plikami, w których user może
coś uszkodzić. Praktyka pokazała że to *krytyczne*.
>> Więc jak?
> Możesz to zrobić na co najmniej dwa sposoby
> 1. Korzystając ze strumieni i pliku binarnego
Omijasz podstawowy problem. Strukturę tego pliki "binarnego". Skupiasz
się na trzecirzędnych duprelach.
> 2. Wykorzystując formaty tj VDI
> https://www.arysontechnologies.com/blog/how-to-open-
vdi-file/#:~:text=VDI%20or%20Virtual%20Drive%20Forma
t,Windows%20and%20other%20operating%20systems.
To bardzo milutkie, ale to tylko 1/10 sukcesu. Co z filesystemem? Mam
sobie skombinować skądś ext4 w wersji bez kernela?
> Dostęp do źrodeł masz opisy formatu znajdziesz też w sieci
Ale to nie jest format zapisu plików, tylko format zapisu *dysku*.
Brakuje tej warstwy o której mowa w temacie.
>> *DOSKONALE* wiem co.
> Bez szyderstwa. Napisz więcej co to ma robić bo mam wrażenie że
> strzelasz z armaty do wróbla
Napisałem wyżej.
>>> Chcesz budować Filesystem to pochwal się jak masz to ogarnięte do tej
>>> pory
> Bo to co chcesz zbudować jest formatem pliku emulującym działanie
> systemu plików a to różnica
Nie, to nie jest róznica, dokładnie to chce uzyskać od samego początku.
> Napisałem już w pierwszym moim poście że musisz zbudować odpowiedni
> format pliku
Świetnie:
Pacjet: Panie doktorze co dalej?
Doktur: Powinien pan wyzdrowieć, od tego proszę zacząć.
> Nawet przywołane przeze mnie VDI jest formatem pliku a nie systemem plików
No własnie, dlatego jest poza tematem. Ogólnie jeśli mam już bloki, to
abstrakcja zapisująca je do pliku jest mało istotną duperelą. Skupiasz
się na nieistotnym technicznie detalu.
>> Poczytaj wątek. Mam możliwosć schowania tego za abstrackją i aktualnie
>> używam database. Ale database jest marną emulacją.
> Po co ci Database?
Aby emulować filesystem w pliku na potrzeby unit testów.
>> Bardzo dobra rada. Problem w tym, że kod do większości filesystemów
>> jest przesadnie zagmatwany aby można było wyłuskać z niego sensowne
>> abstrakcje. A wiele oglądałem. Najzwyczajniej, produkcyjne filesystemy
>> są optymalizowane a nie pisane po to aby je podziwiać.
> Teraz jak wiem o co ci chodzi to odpowiem tak. Przejrzyj formaty które
> to umożliwiają przechowywać obraz dysku np wspomniany przeze mnie VDI
Formaty maszyn wirtualnych służa tylko do tego aby gołe sektory trzymać
w jakiś mniej-wiecej optymalny sposób w jednym pliku.
Niejak nie pomagają mi w wyższej warstwie abstrackji typu "jak trzymać
pliki w tym pliku".
> bo
> System plików będzie faktycznie mocno zagmatwany bo ty potrzebujesz 20%
> tego co w systemie plików jest zawarte
Raczej 80%. Poza katalogami i atrybutami, ale oba to chyba jakieś mało
istotne rzeczy.
>> Ma pracować na 1 pliku, a w środku ma pozwalać na operowanie nieznaną
>> iloscią plikó wirtualnych, dynamicznie je tworząc, kasując,
>> powiększając, nadpisując. Mniej więcej to co robi normalny filesystem
>> na normalnym dysku.
> Kluczowe pytanie do czego ci to potrzebne bo nadal przy tej "dawce
> wiedzy" będę sie upierał że wystarczą ci strumienie by to napisać
Nie, nie wystarczą. Aplikacja jest komercyjna.
> Strumienie nie dadzą rady w momencie gdy potrzebujesz z tego wycisnąć
> max wydajności
Dalej nie pojmuje co niby te strymienie mają mi dopomóc w problemie?
std::fstream i co dalej? jest jakis std::filesystem?
> Zasugerowałem format VDI lub zbuduj własny format co nie jest takie
> trudne jak zglebisz temat formatu plików pozwalający przechowywać obraz
> dysku.
Ale to są tylko trywialne translatory blok wirtualny->pozycja w pliku +
trim.
> Moim zdaniem błędnie się zasugerowałeś że to ma być FileSystem
To ma być filesystem, bo w API mowa o plikach a bie blokach na dysku.
> Moja rada poczytaj o tym jak się konstruję formaty plików
A jak się konstruuje formaty plików? Jest jakiś poradnik do tego?
> Pytanie czy da się strumieniami twoim zdaniem zapakować kilka plików do
> jednego pliku?
Da się, ale nie da się potem na tym pracować. Zwiększ rozmiar środkowego.
> Zadaje to pytanie nie po by się z Ciebie nabijać tylko po to by
> zrozumieć czemu sądzisz ze pliki typu qcow2/vdi są systemami plików.
Nie sądzę tak.
Następne wpisy z tego wątku
- 06.04.21 11:06 heby
- 06.04.21 11:22 Mateusz Viste
- 06.04.21 12:03 heby
- 06.04.21 16:54 J-23
- 06.04.21 17:08 J-23
- 06.04.21 18:01 heby
- 06.04.21 18:12 heby
- 06.04.21 19:41 J-23
- 06.04.21 19:57 J-23
- 06.04.21 20:08 heby
- 06.04.21 20:17 heby
- 06.04.21 21:01 J-23
- 06.04.21 21:32 J-23
- 07.04.21 08:43 heby
- 07.04.21 08:48 heby
Najnowsze wątki z tej grupy
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
Najnowsze wątki
- 2025-03-20 Grubość socketa AM4+procesor
- 2025-03-20 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-20 Warszawa => Senior Programmer C <=
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-20 Greenpeace została zobowiązana do zapłaty niemal 667 mln dolarów [USA,wyrok sądu]
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-19 Brak ograniczeń dla chińskiego kapitału - wam nie do rządu, tylko na zmywak do chińskiej knajpy!!!
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 szal-Unia == federacja policyjna
- 2025-03-19 Polsza == państwo policyjne
- 2025-03-19 Grzegorz Płaczek o programie szczepień dzieci. ,,Stworzono eldorado dla firm farmaceutycznych"
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 Gemini
- 2025-03-19 Mokry sen Zenka :)
- 2025-03-19 Re: Dlaczego tak odstają od Tesli?