eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaprocesory wewnętrzna konstrukcja
Ilość wypowiedzi w tym wątku: 7

  • 1. Data: 2013-07-16 12:06:42
    Temat: procesory wewnętrzna konstrukcja
    Od: Adam Górski <gorskiamalpa@wpkropkapl>

    Witam,

    Przeglądam sobie kolejne procesory ARM i zastanawia mnie jedna sprawa.
    Nigdzie nie widzę mechanizmów sprzętowego wspomagania przełączania
    procesów/wątków. Czy to ja źle patrzę czy to dalej odbywa się jak kiedyś
    - tzn zrzut wszystkich rejestrów do pamięci i pobranie nowego zestawu
    dla kolejnego procesu.
    Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w żadnym
    z armów tego nie widzę.

    Nie chodzi mi o MMU ani o MPU bo to dotyczy pamięci i izolacji procesów.
    Chodzi mi o mechanizmy sprzętowego wspomagania przełączania procesów.
    Jak to się może obecnie nazywać ?

    Pzdr

    Adam


  • 2. Data: 2013-07-16 12:20:56
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Michoo <m...@v...pl>

    On 16.07.2013 12:06, Adam Górski wrote:
    > Witam,
    >
    > Przeglądam sobie kolejne procesory ARM i zastanawia mnie jedna sprawa.
    > Nigdzie nie widzę mechanizmów sprzętowego wspomagania przełączania
    > procesów/wątków.

    http://infocenter.arm.com/help/index.jsp?topic=/com.
    arm.doc.dui0471c/Cjaebbeh.html


    > Czy to ja źle patrzę czy to dalej odbywa się jak kiedyś
    > - tzn zrzut wszystkich rejestrów do pamięci i pobranie nowego zestawu
    > dla kolejnego procesu.

    Tak i nie - masz instrukcje, które to upraszczają, ale nie jest to
    prosta podmiana indeksu w tablicy procesów(jak by to wyglądało przy
    całkowicie sprzętowej obsłudze kontekstu).

    > Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w żadnym
    > z armów tego nie widzę.

    Niezgodne z filozofią RISC.

    --
    Pozdrawiam
    Michoo


  • 3. Data: 2013-07-16 12:58:31
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Adam Górski <gorskiamalpa@wpkropkapl>


    >> Przeglądam sobie kolejne procesory ARM i zastanawia mnie jedna sprawa.
    >> Nigdzie nie widzę mechanizmów sprzętowego wspomagania przełączania
    >> procesów/wątków.
    >
    > http://infocenter.arm.com/help/index.jsp?topic=/com.
    arm.doc.dui0471c/Cjaebbeh.html
    >
    >
    >
    >> Czy to ja źle patrzę czy to dalej odbywa się jak kiedyś
    >> - tzn zrzut wszystkich rejestrów do pamięci i pobranie nowego zestawu
    >> dla kolejnego procesu.
    >
    > Tak i nie - masz instrukcje, które to upraszczają, ale nie jest to
    > prosta podmiana indeksu w tablicy procesów(jak by to wyglądało przy
    > całkowicie sprzętowej obsłudze kontekstu).
    >
    >> Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w żadnym
    >> z armów tego nie widzę.
    >
    > Niezgodne z filozofią RISC.
    >

    Idąc tym tropem nie ma takich mechanizmów w żadnym procesorze bo nawet
    x86 to dzisiaj RISC , o x64 nawet nie wspominając.

    Pzdr

    Adam


  • 4. Data: 2013-07-16 13:24:57
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Michoo <m...@v...pl>

    On 16.07.2013 12:58, Adam Górski wrote:
    >>
    >>> Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w żadnym
    >>> z armów tego nie widzę.
    >>
    >> Niezgodne z filozofią RISC.
    >>
    >
    > Idąc tym tropem nie ma takich mechanizmów w żadnym procesorze bo nawet
    > x86 to dzisiaj RISC , o x64 nawet nie wspominając.

    Ni. x86 to dzisiaj nadal CISC. To np. Sandy Bridge na którym amd64 jest
    uruchamiany/emulowany jest rzeczywiście RISC-like.



    A wracając do problemu - sprzętowe implementacja zmian kontekstu to
    zbędna komplikacja jeżeli można to zrobić RISC-like.

    Np na cortex-m3 całość sprowadza się do ustawienia wskaźnika na
    thread-control-block i wczytania rejestrów. Używasz instrukcji ogólnego
    przeznaczenia a całe wsparcie sprowadza się do projektu architektury,
    która to umożliwia.


    --
    Pozdrawiam
    Michoo


  • 5. Data: 2013-07-16 14:32:04
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Adam Górski <gorskiamalpa@wpkropkapl>

    W dniu 2013-07-16 13:24, Michoo pisze:
    > On 16.07.2013 12:58, Adam Górski wrote:
    >>>
    >>>> Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w żadnym
    >>>> z armów tego nie widzę.
    >>>
    >>> Niezgodne z filozofią RISC.
    >>>
    >>
    >> Idąc tym tropem nie ma takich mechanizmów w żadnym procesorze bo nawet
    >> x86 to dzisiaj RISC , o x64 nawet nie wspominając.
    >
    > Ni. x86 to dzisiaj nadal CISC. To np. Sandy Bridge na którym amd64 jest
    > uruchamiany/emulowany jest rzeczywiście RISC-like.

    Czy mógłby kolega zapodać kilka słów kluczowych lub sznurków ?
    Mając dziesiątki lub setki o ile nie tysiące różnych wątków/procesów
    ciągłe przeładowywanie rejestrów musi kosztować masę czasu jeżeli jest
    to czysto programowe

    > A wracając do problemu - sprzętowe implementacja zmian kontekstu to
    > zbędna komplikacja jeżeli można to zrobić RISC-like.

    Pewnie , tylko jest gdzieś granica opłacalności odnośnie minimalnego
    czasu przydziału dla wątku/procesu.
    >
    > Np na cortex-m3 całość sprowadza się do ustawienia wskaźnika na
    > thread-control-block i wczytania rejestrów. Używasz instrukcji ogólnego
    > przeznaczenia a całe wsparcie sprowadza się do projektu architektury,
    > która to umożliwia.

    A ma może kolega jakiś sznurek do tego opisu thread-control-block ?
    Pewnie google wie ale może kolega wie lepiej...

    Pzdr

    Adam


  • 6. Data: 2013-07-16 18:26:34
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Michoo <m...@v...pl>

    On 16.07.2013 14:32, Adam Górski wrote:
    > W dniu 2013-07-16 13:24, Michoo pisze:
    >> On 16.07.2013 12:58, Adam Górski wrote:
    >>>>
    >>>>> Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w
    >>>>> żadnym
    >>>>> z armów tego nie widzę.
    >>>>
    >>>> Niezgodne z filozofią RISC.
    >>>>
    >>>
    >>> Idąc tym tropem nie ma takich mechanizmów w żadnym procesorze bo nawet
    >>> x86 to dzisiaj RISC , o x64 nawet nie wspominając.
    >>
    >> Ni. x86 to dzisiaj nadal CISC. To np. Sandy Bridge na którym amd64 jest
    >> uruchamiany/emulowany jest rzeczywiście RISC-like.
    >
    > Czy mógłby kolega zapodać kilka słów kluczowych lub sznurków ?

    microcode, x86 context switch, TSS Descriptor, call gate


    > Mając dziesiątki lub setki o ile nie tysiące różnych wątków/procesów
    > ciągłe przeładowywanie rejestrów musi kosztować masę czasu jeżeli jest
    > to czysto programowe

    Jak masz tysiące różnych wątków próbujących działać _na raz_ to masz
    system który większość czasu jedyne co robi to marnuje zasoby na ich
    przełączanie - niezależnie od tego czy masz wsparcie sprzętowe czy nie.

    I tak najdroższe w całej zabawie w multi-tasking (nie dotyczy właśnie
    maleństw w rodzaju m-3 z wewnętrznym ramem - tam to frunie)jest
    zazwyczaj psucie cache, przeładowywanie MMU i tym podobne sprawy. Zmiana
    kontekstu ma główne znaczenie przy wywołaniach systemowych.

    >
    >> A wracając do problemu - sprzętowe implementacja zmian kontekstu to
    >> zbędna komplikacja jeżeli można to zrobić RISC-like.
    >
    > Pewnie , tylko jest gdzieś granica opłacalności odnośnie minimalnego
    > czasu przydziału dla wątku/procesu.

    Na x86 masz do tego instrukcję CISC, na m-3 robisz to 3 instrukcjami
    RISC. I tak limitujące będzie (jeżeli chodzi o samo działanie procka)
    odczytanie z pamięci czy to stanu (x86) lub rejestrów(arm).

    >>
    >> Np na cortex-m3 całość sprowadza się do ustawienia wskaźnika na
    >> thread-control-block i wczytania rejestrów. Używasz instrukcji ogólnego
    >> przeznaczenia a całe wsparcie sprowadza się do projektu architektury,
    >> która to umożliwia.
    >
    > A ma może kolega jakiś sznurek do tego opisu thread-control-block ?

    Ma. Wskazuje na Cortex-M3 Technical Reference Manual.

    --
    Pozdrawiam
    Michoo


  • 7. Data: 2013-07-17 12:38:37
    Temat: Re: procesory wewnętrzna konstrukcja
    Od: Adam Górski <gorskiamalpa@wpkropkapl>


    >>>>>> Pamiętam że było coś takiego bodajże w procesorach Ubicoma ale w
    >>>>>> żadnym
    >>>>>> z armów tego nie widzę.
    >>>>>
    >>>>> Niezgodne z filozofią RISC.
    >>>>>
    >>>>
    >>>> Idąc tym tropem nie ma takich mechanizmów w żadnym procesorze bo nawet
    >>>> x86 to dzisiaj RISC , o x64 nawet nie wspominając.
    >>>
    >>> Ni. x86 to dzisiaj nadal CISC. To np. Sandy Bridge na którym amd64 jest
    >>> uruchamiany/emulowany jest rzeczywiście RISC-like.
    >>
    >> Czy mógłby kolega zapodać kilka słów kluczowych lub sznurków ?
    >
    > microcode, x86 context switch, TSS Descriptor, call gate
    >
    >
    >> Mając dziesiątki lub setki o ile nie tysiące różnych wątków/procesów
    >> ciągłe przeładowywanie rejestrów musi kosztować masę czasu jeżeli jest
    >> to czysto programowe
    >
    > Jak masz tysiące różnych wątków próbujących działać _na raz_ to masz
    > system który większość czasu jedyne co robi to marnuje zasoby na ich
    > przełączanie - niezależnie od tego czy masz wsparcie sprzętowe czy nie.
    >
    > I tak najdroższe w całej zabawie w multi-tasking (nie dotyczy właśnie
    > maleństw w rodzaju m-3 z wewnętrznym ramem - tam to frunie)jest
    > zazwyczaj psucie cache, przeładowywanie MMU i tym podobne sprawy. Zmiana
    > kontekstu ma główne znaczenie przy wywołaniach systemowych.
    >
    >>
    >>> A wracając do problemu - sprzętowe implementacja zmian kontekstu to
    >>> zbędna komplikacja jeżeli można to zrobić RISC-like.
    >>
    >> Pewnie , tylko jest gdzieś granica opłacalności odnośnie minimalnego
    >> czasu przydziału dla wątku/procesu.
    >
    > Na x86 masz do tego instrukcję CISC, na m-3 robisz to 3 instrukcjami
    > RISC. I tak limitujące będzie (jeżeli chodzi o samo działanie procka)
    > odczytanie z pamięci czy to stanu (x86) lub rejestrów(arm).
    >
    >>>
    >>> Np na cortex-m3 całość sprowadza się do ustawienia wskaźnika na
    >>> thread-control-block i wczytania rejestrów. Używasz instrukcji ogólnego
    >>> przeznaczenia a całe wsparcie sprowadza się do projektu architektury,
    >>> która to umożliwia.
    >>
    >> A ma może kolega jakiś sznurek do tego opisu thread-control-block ?
    >
    > Ma. Wskazuje na Cortex-M3 Technical Reference Manual.
    >

    Wielkie dzięki za informacje. Dalej już będzie z górki.

    Adam

strony : [ 1 ]


Szukaj w grupach

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: