QUOTE (Hoodwin @ Dec 24 2013, 20:23)

FIFO, в отличие от связанных списков
Ну-ну. FIFO и есть связанный список. Какие отличия???
QUOTE (Hoodwin @ Dec 24 2013, 20:23)

FIFO [...] гарантируют корректную работу очередей при асинхронном взаимодействии ядер, без спец. команд
Ничего FIFO не гарантирует, синхронизацию доступа надо аппаратными средствами осуществлять, причем в 667х эти средства есть.
QUOTE (Hoodwin @ Dec 24 2013, 20:23)

операции с FIFO атомарные, O(1)
Экие у вас странные представления о необходимых и достаточных условиях. Из О(1) вовсе не следует атомарность, этот термин для других целей используется.
QUOTE (Hoodwin @ Dec 25 2013, 21:08)

Формально двусвязный список тоже можно считать очередью (FIFO)
Формально никакая это не очередь, а именно двусвязный список. Очереди вторая связь совершенна не нужна. В
n-арном дереве тоже можно найти подграфы, которые можно очередями считать.
QUOTE (jcxz @ Dec 26 2013, 20:40)

Для взаимодействия ядер я вообще не использовал критических секций. Да, с помощью прерываний и общей памяти их можно организовать, но я не использовал их.
Просто повезло. Не вляпались в ситуацию, когда оба процесса одновременно искалечат индексы первого и последнего элементов очереди. Это же элементарно и называется оверран.
QUOTE (Digi @ Dec 23 2013, 15:12)

Не могу понять, как в один *.out файл поместить програмные модули, которые должны работать в разных ядрах.
Что бы долго не думать, я собираю несколько исполняемых файлов. В максимуме - восемь.