Кіріспе

Параллель есептеуді мүмкін ететін орындау моделі. Компьютерлік техникада POSIX желілері, көбінесе pthreads деп аталады, бағдарламалау тілінен тәуелсіз және параллель орындау моделі болып табылады. Бұл бағдарламаға уақыт бойынша бір-бірімен қабаттасатын бірнеше жұмыс ағындарын басқаруға мүмкіндік береді. Әрбір жұмыс ағыны – желі деп аталады, ал осы желілерді құру және басқару POSIX Threads API шақырулары арқылы жүзеге асырылады. POSIX Threads – Электр және электроника инженерлері институтының (IEEE) POSIX.1c стандарты, Threads extensions (IEEE Std 1003.1c 1995) анықтаған API. API-нің іске асырылымдары көптеген Unix-қа ұқсас, POSIX стандартына сәйкес келетін операциялық жүйелерде қолжетімді, мысалы FreeBSD, NetBSD, OpenBSD, Linux, macOS, Android, Solaris, Redox және AUTOSAR Adaptive, әдетте libpthread кітапханасы ретінде жинақталады. DR DOS және Microsoft Windows үшін де іске асырылымдар бар: SFU/SUA кіші жүйесінде, ол бірқатар POSIX API-нің түпкілікті іске асырылуын қамтамасыз етеді, сондай-ақ pthreads w32 сияқты үшінші тараптың пакеттерінде, ол pthreads-ті қолданыстағы Windows API-нің үстіне іске асырады.

Windows үшін POSIX желілері

Windows жүйесі pthreads стандартын түпнұсқада қолдамайды, сондықтан Pthreads4w жобасы портативті және ашық кодты орауыш іске асыруды ұсынуға бағытталған. Бұл, Unix бағдарламалық қамтамасының (pthreads қолданатын) Windows платформасына аз немесе еш өзгеріссіз көшірілуіне де мүмкіндік береді. Apache Public License v2.0 лицензиясымен шығарылған Pthreads4w 3.0.0 нұсқасы немесе одан кейінгі нұсқалары 64 биттік немесе 32 биттік Windows жүйелерімен үйлесімді. LGPLv3 лицензиясымен шығарылған 2.11.0 нұсқасы да 64 биттік немесе 32 биттік жүйелермен үйлесімді. Mingw w64 жобасында Pthreads4w жобасына қарағанда көбірек түпнұсқа жүйелік шақыруларды пайдалануға тырысатын 'pthreads, winpthreads' орауышы бар. Windows Services for UNIX/Subsystem for UNIX based Applications жинағында қолжетімді Interix ортасының ішкі жүйесі pthreads API-нің түпнұсқалық портын ұсынады, яғни ол Win32 API-ге шағылыстырылмайды, бірақ тікелей операциялық жүйенің syscall интерфейсіне негізделген.