eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPrzenośny, uproszczony filesystem › Re: Przenośny, uproszczony filesystem
  • Data: 2021-02-08 12:12:26
    Temat: Re: Przenośny, uproszczony filesystem
    Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 08/02/2021 11:08, M.M. wrote:
    >> Wyobraź sobie dwa wątki: jeden dopisuje coś do wirtualnego pliku, a
    >> drugi kasuje go.
    > To jeszcze nic nie oznacza, może programista tak chciał?

    To dopuszczalna sytuacja. fs ma być na nia gotowy.

    > Ale generalnie
    > na tym właśnie polega problem: kilka wątków pracuje na tych samych
    > danych, zakładają że dane mają określoną wartość. Gdy jeden wątek dane
    > zmodyfikuje, to pozostałe już pracują na błędnym założeniu. Dlatego
    > robi się to co napisałem: jeśli jeden wątek zapisuje dane, to może
    > pracować tylko ten jeden wątek, ale do odczytu może być dowolnie wiele.

    Nieprawda. Jeśli jeden watek zapisuje jakas częśc pliku, inny może
    zapisuwać inną część tego samego pliku. DB często tak robią.

    Granulacja jest więc dokładniejsza niż 1 plik. Co oznacza w naiwnym
    podejściu bardzo dużo muteksów na każdy kawałek pliku lub skomplikowany
    mutex z emulacją submutexów.

    Przypuszcam że w ogóle sytuacja że zapisujemy ten sam kawałek pliku
    równolegle z dwóch wątków jest jak najbardziej dopuszczalna. Co najwyżej
    będzie race condition na dane, ale sam plik będzie dalej poprawny z
    punktu widzenia fs.

    >> bo to wiem. Interesuje mnie jak działa zapewnianie spójności danych w fs
    >> które dla usera wygląda jak typowy zasób krytyczny pilnowany przez mutex.
    > Ale kto powiedział że jest takie zapewnienie?

    W fs jest. Wątek A kasuje plik, wątek B czyta ten sam plik, wątek C
    właśnie go otwiera. I nie ma race conditions na poziomie fs, tam dane są
    spójne i stan jest atomowy.

    > Jeśli dwa wątki zaczną
    > czytać i pisać dane, to zepsują spójność danych w pliku, chyba że OS
    > nie pozwoli otworzyć pliku do zapisu gdy jest może to spowodować
    > utratę spójnośći.

    To tak nie działa. POnadto rozróznijmy: race condition w aplikacji to
    coś innego niż race condition w fs. W tym drugim przypadku masz taką
    sytuację setki razy na sekundę w swoim PC.

    >> Potrzebuje literatury z teorii działania systemów plików. Wygdybać mogę
    >> sobie cokolwiek, ale konkuruje z dziesięcioleciami eksperymentów ludzi
    >> mądrzejszych ode mnie.
    > Może jest coś wartościowego?
    > https://www.google.com/search?channel=fs&client=ubun
    tu&q=systemy+plik%C3%B3w+literatura

    Obawiam się czy aby nie jest tylko od strony użytkowej. Ogólnie
    obejrzałem spisy kilkunastu książek z tego tematu i jak na razie nie
    widzę nic o budowie wewnętrznej. Być może coś przeoczyłem.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: