Proszę o ocenę "projektu" w asemblerze związanego z wielowątkowością - GitHub
Ocena zarządcy/silnika wielowątkowości
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Warszawa
- Postów: 2255
Fajne dla polaka, kiepskie dla reszty świata [polskie komentarze]
- Rejestracja: dni
- Ostatnio: dni
- Postów: 1134
Manna5 napisał(a):
Proszę o ocenę "projektu" w asemblerze związanego z wielowątkowością - GitHub
Spoko, sensu to za dużo nie ma, ale na pewno ma to wartość edukacyjną. Komentarze są dobre i idzie szybko ogarnąć o co chodzi
Sama nazwa jest na pewno myląca widząc Multithreading-8086 myślę, że będą:
- thready fizyczne
- 8086 i ASM mi mówią, że to będą jakieś niskopoziomowe harce jak np. pisanie własnego przełączania threadów
- dalej natrafiam na informację, że to DOS i głupieję, bo tam przecież nie ma wątków
- po czym się okazuje, że te thready to tak naprawdę green thready
- Rejestracja: dni
- Ostatnio: dni
- Postów: 358
MTPAUSE sugeruje, że to green thready zwykłe, bo normalnie po prostu interrupt przerwie działanie i można zapisać context.
Zapisujesz instruction pointer, ale też jakby funkcje były zagnieżdżone czy używały by lokalnych zmiennych to też więcej danych kontekstu musisz zapamiętać poza samym RIP adresem, np. RSP bo wewnątrz funkcja będzie obliczać położenie zmiennych lokalnych za pomocą wierzchołka stosu, który dla każdej funkcji będzie inny, chyba że wszystko będziesz miał zapisywane globalnie, też zawsze po takiej instrukcji musisz na nowo dane wczytać do rejestrów bo inne thready mogą te wartości nadpisać, chyba że po prostu cały kontekst zapamiętasz.
Tak w miarę czytelne, bez debuggera czy odpalania szło zrozumieć, dużo komentarzy.