Wielowątkowość to cecha systemu operacyjnego, dzięki której w ramach jednego procesu może wykonywać kilka wątków lub jednostek wykonawczych. Nowe wątki to kolejne ciągi instrukcji wykonywane oddzielnie. Wszystkie wątki tego samego procesu współdzielą kod programu i dane. W systemach nie obsługujących wielowątkowości pojęcia procesu i wątku utożsamiają się.
Systemy wielowątkowe to m.in. BeOS, Microsoft Windows 95, Windows NT i niektóre z rodziny Unix.

Cechy wielowątkowości

  • wszystkie wątki wykonują się w ramach tylko jednego programu (procesu) - to znaczy, że wykonują ten sam kod wykonawczy (przykładowo: w systemach Unix/Linux każdemu wątkowi przydziela się konkretną funkcję do wykonania)
  • wątki zostały wprowadzone aby zwiększyć wydajność w programowaniu współbieżnym , gdzie zachodzi potrzeba wykonania wielu zadań jednocześnie;
  • wszystkie wątki procesu współdzielą tą samą wirtualną przestrzeń adresową (mają dostęp to tych samych "egzemplarzy" zmiennych, obiektów i struktur) i korzystają z tych samych zasobów systemowych;
  • komunikacja między wątkami w odróżnieniu od procesów jest bardzo łatwa do wykonania - w przypadku wątków wystarczy odwoływać się do tych samych zmiennych i obiektów - komunikacja między procesami wymaga zastosowania mechanizmów IPC (ang. InterProcess Communication);
  • współdzielenie wirtualnej przestrzeni adresowej niesie duże zagrożenie - jeden "wadliwy" wątek może zagrozić wykonaniu całego programu;
  • każdy wielowątkowy system operacyjny zapewnia specyficzne metody synchronizacji wątków, które z wyżej wym. przyczyn należy bezwzględnie zaimplementować.
Publikacja wraz ze zdjęciami jest udostępniona w Encyklopedii "Zgapedia" części portalu zgapa.pl. Treść objęta jest licencją GNU FDL Wolnej Dokumentacji w wersji 1.3 lub dowolnej pózniejszej opublikowanej przez Free Software Foundation i została ona opracowana na podstawie Wikipedii, tutaj możesz znaleźć artykuł źródłowy oraz autorów. Warunki użytkowania Encyklopedii znajdziesz na tej stronie.