LINUX.ORG.RU

Расскажите в свободной форме об основных отличиях между windows и linux в плане набора разновидностей нитей выполнения, синхронизации, IPC.


1

3

То есть, примерно вот такие вопросы: 1) Какие разновидности нитей выполнения (потоки, процессы, зелёные потоки, синие, фиолетовые..., в чём разница между ними) есть под линуксом, какие есть пол виндоусом (тоже - разница между ними, особенности)

2) Какие примитивы синхронизации существуют там и там, какая разница, особенности. Можно кратко, не надо разжовывать, многое я, наверное, юзал в жизни.

3) Какие способы межпроцессного взаимодействия есть там и сям.

Можно приводить отсылки к разным библиотекам - например, типа под виндой boost::mutex реализован так, а под линуксом сяк.

Что-то я юзал, что-то знаю, о чём-то догадываюсь, но никогда не читал изложение по сабжу всеохватывающее и краткое.

Можно прочитать каких-то умных книг стопку, но мне не нужны детали, которые я уже могу знать, хочется просто сверить своё представление и знания на уровне «в общем и целом».

Спасибо.

man 7 pthreads, man 7 unix, man 2 ipc. Почти везде смотри see also.

Ещё забыл дыбас. Его настолько часто везде пихают, что наверное можно считать его ipc.

nanoolinux ★★★★
()
Последнее исправление: nanoolinux (всего исправлений: 1)
Ответ на: комментарий от kiverattes

В Linux как таковой нет цветных потоков, это удел ВМ которые их придумали.

А из интересного, например, мьютекс захваченный одним процессом будет освобожден в случае падения в Windows и не будет освобожден в Linux. Для таких блокировок лучше использовать flock. (с robast mutex в Linux тоже можно сделать, хоть и сложнее)

По поводу первого вопроса очень просто гуглится это: http://fkn.ktu10.com/?q=node/4865

и да, лучше посмотреть у Стивенса книгу Взаимодействие процессов, хотя бы содержание:D

также у Боровского цикл статей есть по программированию в Linux, просто и по делу

pulo
()
Ответ на: комментарий от pulo

Проблема в том, что когда читаешь Стивенсона, то оказывается, что 70% всего я и так знаю. Поэтому и хочется выжимку.

kiverattes ★☆
() автор топика
Ответ на: комментарий от kiverattes

Комментаторы ниасилили вопросы.

Да это у тебя вопросы странные. Ты хочешь спросить как оно в общем, в винде и юниксах? Ну, приблизительно одинаково, очевидно же. А мелких отличий слишком много чтобы садиться и их расписывать.

Сейчас обычному прикладному программисту это вообще слабо интересно. Бери себе boost/pthreads/любимый_тулкит и программируй, скорее всего будет работать везде одинаково

anonymous
()
Ответ на: комментарий от anonymous

Это понятно, но всё равно любопытно как там внутри устроено, ибо есть сферы деятельности, где эти детали важны и где люди до сих пор юзают ассемблер.

kiverattes ★☆
() автор топика
Ответ на: комментарий от kiverattes

неумеющие выжимку из книги туда же :)

pylin ★★★★★
()
Ответ на: комментарий от kiverattes

Твоё субъективное видение ситуации ничего не меняет. Ты не умеешь пользоваться знаками пунктуации, а требуешь ответов на вопросы, которые даже не задал. Иди проспись.

nanoolinux ★★★★
()

Развели тут срач... Отписался.

NeverLoved ★★★★★
()

Этого тебе на лоре никто не скажет. Самое главное отличие тут то что Билл Гейтс не показывал палец нвидии ☝

anonymous
()
Ответ на: комментарий от nanoolinux

Молодец, молодец, но по сабжу было бы круче.

kiverattes ★☆
() автор топика
Ответ на: комментарий от prischeyadro

Это не про меня, а про граммарназнутых.

kiverattes ★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.