У меня есть несколько старых мобов, и мне было интересно, возможно ли создать пару карт заголовков pci с соединительными проводами и написать какое-нибудь программное обеспечение для управления картами межсоединений, чтобы один из мобов мог получить доступ к процессоруа баран на другой?я уверен, что это было бы утомительным занятием, включающим написание драйвера устройства для плат заголовков, а затем написание приложения для использования межсоединения;возможно, простая демонстрация, демонстрирующая поток, работающий на каждом процессоре, и использование обоих наборов оперативной памяти, возможно создание мини-виртуальной машины, которая отображает оперативную память 2x3 ГБ на 32-разрядных мобильных устройствах в одно адресное пространство 6 ГБ.микроконтроллер может понадобиться на каждой плате заголовка pci, чтобы выступать в качестве переводчика.
, учитывая, что у мобов почти всегда есть несколько слотов pci, интересно, можно ли использовать эти пары взаимосвязанных карт для последовательного подключения мобов в некотором роде?speed кластер beowulf.
Я бы использовал debian для каждого mobo и, вероятно, просто atmega128 для каждой карты с парой ленточных кабелей для соединения.
pci - это в основном просто шина io, поэтому яне понимаю, почему это не должно быть возможным (но это будет довольно сложно).
есть ли у кого-нибудь какие-либо советы или подобные вещи делались раньше?
Обновление:
Спасибо, Мартин.То, что вы говорите, имеет смысл, и также может показаться, что если бы было возможно, что это уже было бы сделано раньше.
Вместо этого, было бы возможно косвенно контролировать подчиненный процессор, загрузив его, используя «притворство»"загрузочное устройство хранения (жесткий диск, флешка и т. д.)?Пока подчиненный mobo думает, что он работает под управлением операционной системы на реальном устройстве, он должен работать.
Это может потенциально распространяться на любой интерфейс (sata, ide, usb и т. Д.);если вы подключили два устройства вместе с помощью кабеля sata / ide / usb (подключите один конец ленты ide к одному mobo, а другой к другому mobo), это будет все необходимое оборудование.ключ заключается в создании нового драйвера для этого интерфейса на главном компьютере, поэтому вместо того, чтобы мастер-компьютер рассматривал этот интерфейс как устройство хранения на нем, он был бы использован как фиктивный загрузочный жесткий диск для подчиненного компьютера.для меня это все еще будет довольно трудной задачей, потому что я никогда раньше не занимался драйверами устройств, но, по крайней мере, мне не понадобился бы паяльник (который был бы гораздо дальше меня).Я мог бы взять драйвер Ide с открытым исходным кодом для Linux, изучить его, а затем разделить его, чтобы создать что-то вроде обратного (вместо того, чтобы извлекать из него данные, приложение помещает на него данные, чтобы подчиненный компьютер могжесткий диск).Затем я мог бы взять базовое ядро Linux и попытаться загрузить подчиненный компьютер из приложения на главном компьютере (через зарезервированный драйвер устройства master pc ide / sata / usb).в целях безопасности я, вероятно, попытался бы максимально изолировать свой настроенный драйвер, ориентируясь на интерфейс, который не используется ни для чего другого на главном компьютере (мастерский компьютер может использовать все жесткие диски sata с обычно неиспользуемой шиной ide, поэтому, если яСоздавая собственный драйвер ide, он может вызвать меньше проблем с хост-системой - потому что он управляется sata).
Кто-нибудь знает, когда-нибудь было пробовано что-либо подобное (подделка загрузочного жесткого диска с другого компьютера)??Это сделало бы довольно крутой хакдей на youtube, но также серьезно это могло бы добавить новое измерение к параллельным вычислениям, если бы оно оказалось многообещающим.