eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.telefonia.gsmW teście szybkości iPhone6s+puszcza z dymem Galaxy Note 5Re: W teście szybkości iPhone6s+puszcza z dymem Galaxy Note 5
  • Data: 2015-11-16 20:48:21
    Temat: Re: W teście szybkości iPhone6s+puszcza z dymem Galaxy Note 5
    Od: "J.F." <j...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Użytkownik "Sebastian Biały" napisał w wiadomości grup
    dyskusyjnych:n2d563$2aa$...@n...news.atman.pl...
    On 2015-11-15 22:55, J.F. wrote:
    >>> Pewnie tak samo jak twórcy mikrokerneli. Tam drivery nie banglają
    >>> w
    >>> trybie kernela. Moga sobie banglać ja jednej z wyższych warstw.
    >>> Nie wiem
    >>> czy user space, warstw może być wiele.
    >>> https://en.wikipedia.org/wiki/Microkernel
    >>> " [...] Device drivers frequently perform direct memory access
    >>> (DMA),
    >> Takze zwykle in/out czy dostep do pamieci innego procesu wymagaja
    >> wyzszych uprawnien.

    >Nieprawda że dłubanie po hardware wymaga jakiś mitycznych wysokich
    >uprawnień. Od wieków stosujemy IOMMU:
    >https://en.wikipedia.org/wiki/Input%E2%80%93output_
    memory_management_unit

    A dostepne w telefonach ?

    >Pozwala to za *przyzwoleniem* kernela przemapować wszelą przestrzeń
    >adresową gfx dowolnemu procesowi i od tej pory może on sobie dlubać
    >wprost po rejestrach gfx. Na przykład procesowi sterownika karty
    >grafiki.

    Czekaj czekaj - bo na ile rozumiem, to dziala odwrotnie - pozwala
    zwirtualizowac adresy uzywane przez urzadzenie IO, np gfx.
    Urzadzenie siega do pamieci pod adres np C2000000, a IOMMU podmienia
    mu go np na A8000000.

    Do rejestrow urzadzenia/gfx nadal trzeba sie dostawac, ale jesli to
    ARM, to nie ma wydzielonych instrukcji, sa mapowane do pamieci, i tu
    zwykle MMU/protekcja pamieci wystarczy.

    >>Jeśli piszesz ekstremalnie szybki system operacyjny to możesz
    >>przydzielić wszystkim procesom uprawnienia i kazdy sobie może
    >>grzebać. Twój (kernela) wybór.

    No ale z reguly nie chcesz, bo ani te procesy nie wiedza jak tam
    grzebac, ani nie chca grzebac sie w szczegoly roznych GFX, a namieszac
    moga, jak zaczna ustawiac urzadzenie w sposob niezsynchronizowany z
    innymi.

    >>> Ponadto nic nie przeszkadza aby MV puscic w trybie kernela.
    >> A Dalvik czy inny Java VM ma w ogole funkcje niskopoziomowe ?

    >Nie musi. Ewentualnie zdefiniuj co masz na myśli. Obecnie w
    >zupelnosci wystarczy zapis pod wskazany adres pamięci (IOMMU) i
    >obsluga przerwań. Obie rzeczy zaaltwia mikrokernel.

    >> In, out, zapis pod dowolny adres w pamieci ?
    >Może. Kwestia MMU. Tak, potrafi to każdy procesor z MMU. Głównie
    >dlatego że w normalnym swiecie (a więc poza x86) procesory nie mają
    >separowanej przestrzeni IO.

    Ale mi chodzi o to, czy Dalvik w ogole przewiduje operacje np "zapisz
    pod adres C2000000 w pamieci".
    W pamieci rzeczywistej, albo wirtualnej ale procesora, a nie pamieci
    przewidzianej przez Dalvik dla procesu w javie.

    Tudziez np funkcje poproszenia kernela o odpowiednie zamapowanie tego
    C20000xxx.

    >W przypadku mikrokernela każdy sterownik posiada własny proces i w
    >nim przemapowany swój IO. Koszt przełaczenia się między userem a
    >driverem jest identyczny jak w monolitach między userem a kernelem.

    Jeszcze jakies inne rozkazy zostaja, typu np zablokowanie przerwan,
    sterowanie nimi, operacje atomowe itp.

    J.


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: