eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingpytanie z mutexówRe: pytanie z mutexów
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!news.supermedia.pl!news.nask.pl!news.nask.org.pl!news.internetia.pl!no
    t-for-mail
    From: Edek <e...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: pytanie z mutexów
    Date: Fri, 21 Jun 2013 16:33:03 +0000 (UTC)
    Organization: Netia S.A.
    Lines: 62
    Message-ID: <kq1v7v$as6$2@mx1.internetia.pl>
    References: <5...@g...com>
    NNTP-Posting-Host: 87-205-33-79.adsl.inetia.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: mx1.internetia.pl 1371832383 11142 87.205.33.79 (21 Jun 2013 16:33:03 GMT)
    X-Complaints-To: a...@i...pl
    NNTP-Posting-Date: Fri, 21 Jun 2013 16:33:03 +0000 (UTC)
    X-Tech-Contact: u...@i...pl
    User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2)
    X-Server-Info: http://www.internetia.pl/
    Xref: news-archive.icm.edu.pl pl.comp.programming:203786
    [ ukryj nagłówki ]

    Dnia Thu, 20 Jun 2013 03:35:33 -0700 po głębokim namyśle firr kenobi
    rzekł:

    > nie zmam sie za bardzo na rozmaitych prymitywach sluzacych do lockowania
    > kawałków ramu (a jest tego kilkanascie z tego co kojarze) stad pytanie :
    > czy najbardziej podstawowy z tych elementali (jak mniemam mutex) pozwala
    > zapisac jakies informacje przy lokowamiiu jakiegos kawalka ramu (tak by
    > inny watek ktory sie na to natkanł mogl to przeczytac) czy tez nie jest
    > to praktykowane?

    Mutex jest rozwiązaniem abstrakcyjnym, nie sprzętowym. W tym sensie,
    że programista w każdej chwili może zapomnieć o mutexie i sprzęt
    na to pozwoli.

    Metainformacje w RAM istniały w starych Sunach, tagged data,
    ale dotyczyły typu danych a nie wielodostępu. Technicznie
    wykonalne, ale nie praktykowane. Nowe procesory mają mieć
    wsparcie TM - specyfikacje i użycie już istnieją, tylko
    samego sprzęta niet.

    > drugie pytanie czy jest jakias (chocby zwyczajowa)
    > hierarchia tych prymitywow i czy ich nazewnictwo juz sie jakos ulozylo
    > czy tez panuja rozne nazewnictwa i jaki to jest ten standardowy set?

    Mutex i lock to dwie nazwy tego samego pomijając może niuanse. Condition
    variable jest praktycznie uniwersalną nazwą. W Win nazwy są takie same
    jak nazwy ich metod - nie wiem. Są też praktyczne implementacje
    tychże, takie jak Futex (na linuksie praktycznie w userspace
    wszystkie mutexy są zaimplementowane przez futex, w kernelu
    częściej jako spinlock)

    Z podstawowych są też inne bestie: CAS, semafor, monitor (obudowany
    cukrem mutex, odrobinę co innego), atomic sth, bariera, spinlock
    i parę innych, w tym odmiany mutexów: rekursywne, RWLock.

    Istnieje też abstrakcyjny Model Pamięci, bez którego wszystkie
    powyższe nie mają najmniejszego sensu, oraz sprzętowy Model
    Pamięci, bez którego nie dałoby się ich poprawnie zaimplementować.

    Potem jest wiele elementów używających powyższych, jakby wyższego
    poziomu: future, promise, continuation, asynchroniczność,
    kontynuacje, egzekutory, Thread Pools, kolejki, struktury
    danych lock-free, emulowane atomics (dla obiektów zbyt dużych
    aby istniało sprzętowe wsparcie emuluje się na różne sposoby
    semantycznie to samo używając innych operacji sprzętowych),
    dzielone smart pointery, thread cancelation (aka ThreadDeath,
    dziwna i himeryczna bestia), przekazywanie wyjątków pomiędzy
    wątkami, once, jednorazowa statyczna inicjalizacja (wraz z
    obleśnym double-checked locking), thread local storage,
    same wątki i ich wszystkie odmiany - kompletna lista
    byłaby znacznie dłuższa.

    Wielowątkowość nie jest nowa, tylko relatywnie nowa w codziennym
    masowym życiu programistów. Weszła masowo, gdy procesory
    zaczęły mieć masowo najpierw HT a potem wiele rdzeni na
    desktopie - co się stało niedawno, tylko kilka lat temu.

    Powyższe są standardowym zestawem, natomiast większej hierarchii
    w nich nie widzę.

    --
    Edek

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: