Кіріспе

Эрлангте компьютерлік көп тапсырмалылыққа жеңіл процестерді қол жеткізу құралдары. Компьютерлік операциялық жүйелерде жеңіл процесс (ЖЖП) – көп тапсырмалылыққа қол жеткізудің бір жолы. Терминнің дәстүрлі мағынасында, Unix System V және Solaris жүйелерінде қолданылғандай, ЖЖП бір ядролық жіп үстінде пайдаланушы кеңістігінде жұмыс істейді және бір процестегі басқа ЖЖП-мен адрестік кеңістігі мен жүйелік ресурстарын бөліседі. Жіп кітапханасымен басқарылатын бірнеше пайдаланушы деңгейіндегі жіптер, бір немесе бірнеше ЖЖП-нің үстіне орналастырылуы мүмкін, бұл пайдаланушы деңгейінде көп тапсырмалылықты жүзеге асыруға мүмкіндік береді, бұл кейбір өнімділік артықшылықтарын ұсынуы мүмкін. Кейбір операциялық жүйелерде ядролық жіптер мен пайдаланушы жіптері арасында жеке ЖЖП қабаты болмайды. Бұл пайдаланушы жіптері тікелей ядролық жіптер үстінде іске асырылады дегенді білдіреді. Мұндай жағдайларда "жеңіл процесс" термині көбінесе ядролық жіптерге қатысты қолданылады, ал "жіптер" термині пайдаланушы жіптерін білдіруі мүмкін. Linux-та пайдаланушы жіптері ресурстарды бөлісуге рұқсат беру арқылы іске асырылады, бұл кейде осы процестерді "жеңіл процестер" деп атауға себеп болады. Сол сияқты, SunOS 4 нұсқасынан бастап (Solaris-ке дейін) "жеңіл процесс" пайдаланушы жіптерін білдірді.

Қолдайтын операциялық жүйелер

Solaris 2.2 нұсқасынан бастап жеке LWP қабатын енгізді. 9 нұсқаға дейін Solaris LWP және пайдаланушы жіптері арасында көпке көптей шамаланған сәйкестікке мүмкіндік берді. Бірақ, ол күрделілікті күшейткендігі және ядроның жоспарлаушысының өнімділігін арттыру қажеттігіне байланысты тоқтатылды. UNIX System V және оның қазіргі туындылары IRIX, SCO OpenServer, HP UX және IBM AIX пайдаланушы жіптері мен LWP арасында көпке көптей шамаланған сәйкестікке мүмкіндік береді. NetBSD 5.0 жаңа, кеңейтілген 1:1 жіптік модельді енгізді. Әрбір пайдаланушы жібі (pthread) жеңіл салмақты процесс (LWP) деп аталатын ядро жібіне ие. Ядро ішінде процестер мен жіптер LWP ретінде жүзеге асырылады және жоспарлаушы оларды бірдей қамтиды.