The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Два интервью с участниками FreeBSD Core Team из бывшего CCCР, opennews (ok), 29-Авг-11, (0) [смотреть все] –1

Сообщения [Сортировка по времени | RSS]


68. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от xxx (??), 29-Авг-11, 16:07 
а что не так с SMP в OpenBSD?? он же есть http://www.openbsd.org/smp.html
Ответить | Правка | Наверх | Cообщить модератору

77. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +2 +/
Сообщение от Sergey (??), 29-Авг-11, 16:34 
Я думаю в этом вопросе можно просто поверить kib.
То что smp просто есть, явно не достаточно для того чтобы система работала эффективно.
Ответить | Правка | Наверх | Cообщить модератору

326. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от www2 (??), 31-Авг-11, 09:54 
Видимо этот SMP распространяется только на usermode. Вроде как все программы работают параллельно, но стоит одной из них обратиться к ядру, как ядро блокируется и становится недоступным для всех остальных процессов. Все процессы, которым нужно обратиться к ядру, встают в очередь в ожидании снятия блокировки с ядра.
Ответить | Правка | К родителю #68 | Наверх | Cообщить модератору

327. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от PereresusNeVlezaetBuggy (ok), 31-Авг-11, 10:08 
> Видимо этот SMP распространяется только на usermode. Вроде как все программы работают
> параллельно, но стоит одной из них обратиться к ядру, как ядро
> блокируется и становится недоступным для всех остальных процессов. Все процессы, которым
> нужно обратиться к ядру, встают в очередь в ожидании снятия блокировки
> с ядра.

Вы явно плохо вообще знакомы с SMP, и явно путаете Giant lock (BKL в Linux) с системными вызовами. :) Несколько программ совершенно спокойно могут делать одновременно системные вызовы. Более того, часть работы системных вызовов в OpenBSD вполне может производиться раздельно по процессорам.

На одном процессоре работает обработка ввода-вывода, например. И это в известной степени минус: снижает потолок производительности на некоторых конфигурациях железа. Но не более.

Также по умолчанию для реализации тредов используется библиотека libpthread, в которой все треды создаются в рамках одного реального потока выполнения. Есть и librthread, которая использует треды на уровне ядра (соотношение 1:1), но по умолчанию её не используют из-за проблем с софтом. Причём проблемы бывают как из-за недоработок в библиотеке, так и из-за недоработок в стороннем ПО. Я у себя на ноутбуке (2 ядра  + HyperThreading) её иногда включаю, иногда выключаю: разница в стабильности не заметна. Впрочем, я и не тестирую каждый день десятки разных программ. :)

Ответить | Правка | Наверх | Cообщить модератору

334. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от www2 (??), 31-Авг-11, 13:44 
> Вы явно плохо вообще знакомы с SMP, и явно путаете Giant lock
> (BKL в Linux) с системными вызовами.

Я их не путаю. Я пытаюсь доходчиво объяснить одно через другое.

> Более того, часть работы системных вызовов в OpenBSD вполне может производиться раздельно по процессорам.

Ключевое слово в вашем предложении - "часть". Именно это я и пытался объяснить.

Программы могут делать системные вызовы параллельно, только ядро может оказаться неспособным обрабатывать их все параллельно. Ядро будет ставить такие процессы в очередь, блокируя их не из-за того, что они обратились к одному и тому же ресурсу, а потому, что они обратились к какой-то подсистеме, которая в принципе могла бы обслуживать системные вызовы к разным ресурсам параллельно, но так устроена, что умеет обслуживать системные вызовы к ресурсам одного типа только последовательно. В результате программы стоят в очереди не потому что ресурс занят, а потому что занята та подсистема ядра, которая может обслужить  запрос к этому ресурсу.

Ответить | Правка | Наверх | Cообщить модератору

336. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от PereresusNeVlezaetBuggy (ok), 31-Авг-11, 15:39 
>> Вы явно плохо вообще знакомы с SMP, и явно путаете Giant lock
>> (BKL в Linux) с системными вызовами.
> Я их не путаю. Я пытаюсь доходчиво объяснить одно через другое.

Кому?

>> Более того, часть работы системных вызовов в OpenBSD вполне может производиться раздельно по процессорам.
> Ключевое слово в вашем предложении - "часть". Именно это я и пытался
> объяснить.

Кому?

> Программы могут делать системные вызовы параллельно, только ядро может оказаться неспособным
> обрабатывать их все параллельно. Ядро будет ставить такие процессы в очередь,
> блокируя их не из-за того, что они обратились к одному и
> тому же ресурсу, а потому, что они обратились к какой-то подсистеме,
> которая в принципе могла бы обслуживать системные вызовы к разным ресурсам
> параллельно, но так устроена, что умеет обслуживать системные вызовы к ресурсам
> одного типа только последовательно. В результате программы стоят в очереди не
> потому что ресурс занят, а потому что занята та подсистема ядра,
> которая может обслужить  запрос к этому ресурсу.

Спасибо, кэп. Скоро вас повысят, обещаю.

Ответить | Правка | Наверх | Cообщить модератору

464. "Два интервью с участниками FreeBSD Core Team из бывшего CCCР"  +/
Сообщение от Аноним (-), 06-Сен-11, 22:07 
> Спасибо, кэп. Скоро вас повысят, обещаю.

Капитан в данном случае - это не звание а имя. Фэйлишь, Перерезус!  ;)

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру