Информация об изменениях

Сообщение Re[4]: А зачем потоки в mono плодят процессы в htop? от 24.10.2015 21:06

Изменено 24.10.2015 21:06 VladCore

Здравствуйте, smeeld, Вы писали:

S>Здравствуйте, VladCore, Вы писали:



VC>>я вот что нарыл. давным давно в линаксе что-то можно было распараралелить только форкнув себя.


S>Не только, во всех юниксах был clone.


VC>>Потом, непонятно когда, появился революционный pthread, но не тот что сейчас.


S>Он бородатый, какой он революционный? И NPTL, и предыдущие Linux Threads используют clone, отличия

S>только в плане управления потоками, для чего в kernel были добавлены дополнительные сисколы.

>>Назывался LinuxThreads. у каждого потока был свой пид.


S>Тут немного фишки из ядра линукс: треды в линуксе ничем не отличаются от процессов, в смысле, каждый тред в линуксе

S>есть процесс, то есть в ядре представлен всем набором структур, описывающем сущность процесс, но некоторые подструктуры
S>нескольких потоков, объединённых в процесс, одинаковы для всех, то есть указатели в их task_struct, указывают на одни и те
S>же структуры. В Solaris уже не так, там есть только треды ядра, а пользовательский процесс и пользовательский поток есть чисто
S>абстрактные сущности, которые обслуживаются разными потоками ядра.

Напишите еще.

Например, зачем придумали группы потоков с общим пидом в одной группе и разными пидами в разных группах потоков? Сейчас же все потоки по прежнему имеют разные пиды в свежих релизах 2015-го года. я про ffmpeg и mono. Похоже группы потоков не прижились чего-то.

не нашол в каких годах все это появилось? я про LinuxThreads и NPTL
Здравствуйте, smeeld, Вы писали:

VC>>я вот что нарыл. давным давно в линаксе что-то можно было распараралелить только форкнув себя.


S>Не только, во всех юниксах был clone.


VC>>Потом, непонятно когда, появился революционный pthread, но не тот что сейчас.


S>Он бородатый, какой он революционный? И NPTL, и предыдущие Linux Threads используют clone, отличия

S>только в плане управления потоками, для чего в kernel были добавлены дополнительные сисколы.

>>Назывался LinuxThreads. у каждого потока был свой пид.


S>Тут немного фишки из ядра линукс: треды в линуксе ничем не отличаются от процессов, в смысле, каждый тред в линуксе

S>есть процесс, то есть в ядре представлен всем набором структур, описывающем сущность процесс, но некоторые подструктуры
S>нескольких потоков, объединённых в процесс, одинаковы для всех, то есть указатели в их task_struct, указывают на одни и те
S>же структуры. В Solaris уже не так, там есть только треды ядра, а пользовательский процесс и пользовательский поток есть чисто
S>абстрактные сущности, которые обслуживаются разными потоками ядра.

Напишите еще.

Например, зачем придумали группы потоков с общим пидом в одной группе и разными пидами в разных группах потоков? Сейчас же все потоки по прежнему имеют разные пиды в свежих релизах 2015-го года. я про ffmpeg и mono. Похоже группы потоков не прижились чего-то.

не нашол в каких годах все это появилось? я про LinuxThreads и NPTL