Я только начинаю изучать приемы создания модуля ядра на ядре Linux 2.6. Что я хочу сделать, так это иметь 3 потока ядра, называемых ведомыми, которые должны отправлять данные в 4-й поток ядра, называемый master, и получать их соответствующие ответы. Подчиненные устройства могут запрашивать в любое время, а это значит, что мне понадобится какая-то структура очереди и способ перенаправления ответов в правильный поток.
Сначала я посмотрел на реализацию своей собственной структуры очереди, чтобы ставить в очередь входящие запросы - но как мне сообщить об этом мастеру? Я не хочу, чтобы мастер продолжал опрашивать (как в случае спинлоков / семафоров). У меня есть ощущение, что есть лучший способ общения между потоками.
Из-за отсутствия документации (и, по общему признанию, слабых навыков поиска), я не знаю, как это реализовать. Можете ли вы указать мне правильное направление?