• サぺルOPM
    link
    fedilink
    Polski
    arrow-up
    1
    ·
    11 days ago

    Co daje ten argument o 99% softu? Tyle samo nie używa pewnie AVX, SMP i RT. Wprowadził to ktoś od Chromium. Na tym chyba polega wolne/otwarte oprogramowanie. Oczywiście musiał zderzyć się z komisją, żeby nie musieć tego samemu utrzymywać.

    Możesz mieć pledge, jeśli udasz się drogą Filistyna.

    Mnie ten art zainspirował przemyśleniami o tym, czy dzisiaj musi istnieć kernel i user space. Czy można oprzeć system na samych atrybutach obszarów pamięci w tej samej przestrzeni adresowej. To by dawało dużo nowych, ciekawych możliwości. Oczywiście poszedłem w jakieś ekstremum w stylu system jako corewars. Ale można pokusić się nawet o system o wielu procesach zarządzających, konkurujących ze sobą.

    • naur
      link
      fedilink
      Polski
      arrow-up
      1
      ·
      edit-2
      11 days ago

      Z tego co widzę, nie da się wyłączyć tego syscalla, więc kernel znowu się powiększył, a skorzysta na tym tylko kilka projektów.

      AVX skaluje się lepiej, bo może go użyć biblioteka (chociażby kodek audio/video), o czym nie muszą nawet wiedzieć linkujące z nią programy.
      Nie można tego powiedzieć o mseal, bo biblioteka wtedy powodowałaby albo wyciek pamięci, albo nie dałoby się jej zamknąć.
      SMP można wyłączyć w biosie i kernelu. W praktyce zarządza tym transparentnie kernel (eksponując dodatkowe rdzenie logiczne).

      Taki system bez kernela na pewno byłby mniej wydajny. Procesy musiałyby ustalać między sobą dostęp do każdego zasobu.

      • サぺルOPM
        link
        fedilink
        Polski
        arrow-up
        1
        ·
        10 days ago

        Mi nie chodziło o to czy da się coś wyłączyć. Tylko, że jest dużo niszowych rozwiązań. Zgodnie z teorią, że bogatego oprogramowania nikt nie używa w 100%. Każdy używa swojego 10%. Dla każdego jest to inne 10%.

        Tego syscalla może używać też jakaś biblioteka. W tym prawdziwy system operacyjny - przeglądarka.

        Poszedłeś jeszcze dalej niż ja. Myślałem, że musiałby istnieć jakiś nanokernel obsługujący przerwania i wyjątki, który zdejmuje ograniczenia i przekazuje je do procesu zarządzającego.

        Jednak twoje obawy przypominają obawy ludzi od Multicsa wobec *nixa.

        W przemyśleniach mam jeszcze zamiast kolejek procesów to łańcuchy procesów. W sumie już coś takiego robiłem ze dwa razy.