2021-07 [cvičenie] vlákna - otázky a odpovede

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Cvičenie je venované konzultácii k zadaniu o vláknach, konkrétne užívateľským vláknam (uthread), zamykaniu vedierok v hašovacej tabuľke a implementácii bariéry. Vysvetľuje sa rozdiel medzi vláknami implementovanými v užívateľskom priestore a vláknami jadra na príklade systému XV6, kde platí mapovanie 1:1 medzi vláknom procesu a vláknom jadra. Diskutuje sa, prečo pri viacerých vláknach v jednom procese nemôže dôjsť k paralelnému behu bez viacerých jadier procesora a prečo blokovanie jedného vlákna v takomto prípade zastaví celý proces. Vysvetľuje sa aj pojem kriadenie (vlákno vykonávania) cez inštrukcie, dáta, zásobník a stav registrov procesora, najmä ukazateľ na inštrukciu a ukazateľ na zásobník. Na záver sa riešia organizačné otázky ohľadom harmonogramu semestra, odovzdávania úloh a jazyka odpovedí v súbore answers.

  • - Rekapitulácia úloh: dokončenie zamykania baketov v hašovacej tabuľke, dopísanie bariéry a súboru answers_thread.txt
  • - V XV6 platí mapovanie vlákien 1:1 medzi užívateľským priestorom a jadrom
  • - Plánovač jadra nevidí vlákna implementované v užívateľskom priestore, preto ich nevie plánovať
  • - Blokovanie jedného vlákna procesu zastaví celý proces, ak jadro obsluhuje len jedno vlákno na proces
  • - Súčasný beh viacerých vlákien vyžaduje viacero jadier procesora
  • - Kriadenie = inštrukcie, dáta, zásobník a stav registrov procesora (najmä ukazovateľ na inštrukciu a na zásobník)
  • - Organizačné pokyny: zmena harmonogramu semestra, termíny odovzdávania labov a povolené jazyky (slovenčina, angličtina) pre answers.txt

Zhrnutie pripravené s pomocou AI z prepisu videa.