The OpenNET Project / Index page

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



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

Оглавление

Для Linux представлен планировщик задач BLD (Barbershop Load..., opennews (ok), 13-Фев-12, (0) [смотреть все]

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


97. "Для Linux представлен планировщик задач BLD (Barbershop Load..."  +/
Сообщение от Аноним (-), 14-Фев-12, 04:06 
cli ; eat this, nut!
Ответить | Правка | Наверх | Cообщить модератору

101. "Для Linux представлен планировщик задач BLD (Barbershop Load..."  +/
Сообщение от Ваня (ok), 14-Фев-12, 14:58 
Зачем? Проблема не в прерывании, которое вмешается, а в том что мутекс один на 2+ одновременно (реально одновременно) работающих ядер.

@@:
lock btc [mutex] ; пытаемся захватить мутекс; "lock" чтобы запретить другим ядрам доступ к ОП на время выполнения операции
jnc @b ; не получилось - пробуем пока не получится; ВАЖНО: здесь ядро по сути встало в непрекращающийся цикл пока мутекс не будет освобождён другим ядром

; получаем следующий поток; мутекс всё ещё захвачен, текущее ядро мешает всем остальным

lock btr [mutex] ; освобождаем; "lock" чтобы освободить, т.к. иначе выполнение "lock btc" на другом ядре помешает выполнению нашей операции

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

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

107. "Для Linux представлен планировщик задач BLD (Barbershop Load..."  +/
Сообщение от Аноним (-), 18-Фев-12, 02:13 
> Зачем? Проблема не в прерывании, которое вмешается,

Специально для Вани лучше сразу делать как-то так:
cli
hlt

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

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

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




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

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