Кіріспе

Pluribus мультипроцессоры – ARPANET желісінде пакеттік коммутатор ретінде пайдалану үшін BBN компаниясымен жасалған алғашқы көппроцессорлы компьютер. Оның құрылымы кейін BBN Butterfly компьютеріне әсер етті. Pluribus 1972 жылы екінші буын интерфейстік хабарлама процессорының (IMP) қажеттілігі туған кезде пайда болды. Ол кезде BBN компаниясы ARPANET желісінің отыз бестен астам нүктесіне IMP орнатқан болатын. Бұл IMP-лер Honeywell 316 және 516 мини-компьютерлері еді. Желі бірнеше жағынан қарқынды өсіп жатты: түйіндердің, хосттардың және терминалдардың саны; трафик көлемі; және географиялық аумақ (Еуропа мен Гавайиге спутниктік байланыс желілерін құру жоспарлары іске асырылды). Мақсат – модульдік құрылымы бар машинаны жасау болды, ол ең төменгі деңгейде 316 және 516-дан кішірек және арзан болып, сыйымдылығын он есеге дейін арттыруға және 516-ға қарағанда бес есе көп кіріс-шығыс (I/O) құрылғыларын қолдауға қабілетті болу керек еді. Сонымен қатар, жадты мекендеу мүмкіндігін арттыру және сенімділікті жоғарылату да мақсаттардың қатарында болды. Дизайнерлер көппроцессорлық тәсілді таңдады, себебі ол модульдік құрылымға, өнімділікке қатысты шығындарды азайтуға, сенімділікке ие болатын және IMP пакеттік коммутаторларының алгоритмдері тәуелсіз процессорлармен параллель өңдеуге толыққанды жарайтын еді.

Жабдық

Плурибус екі немесе одан көп стандартты 19 дюймдік электронды жабдық тіректерінен тұрады, олардың әрқайсысы төрт бөлікке бөлінген. Әр бөлікте артқы жақтағы шина және тәуелсіз қуат көзі болған. Бөлікте процессорлық шина, ортақ жад шинасы немесе кіріс-шығыс шинасы орналасуы мүмкін. Арнайы жасалған шина жалғастырғыштары бөліктерді бір-бірімен байланыстырып, процессорлардың ортақ жадқа және кіріс-шығыс құрылғыларына қол жеткізуін қамтамасыз еткен. 6 процессорлы Pluribus BBN-нің бес Tenex/"Twenex" уақытты бөлісу жүйелерін, сондай-ақ тікелей желілік және модем арқылы қосылған 378 терминалды желілік коммутатор ретінде пайдаланылды. Pluribus процессор ретінде Lockheed SUE-ді қолданды. SUE DEC-тің PDP 11-іне ұқсас болды.

Бағдарламалық жасақтама

Pluribus бағдарламалық жасақтамасы MIMD симметриялық мультипроцессорлық жүйені іске асырды. Бағдарламалық процестер үзіліссіз мультипрограммалау арқылы іске асырылды. Процестерді жоспарлауда псевдо-үзіліс құрылғысы немесе PID деп аталатын аппараттық құрылғы қолданылды, ол бағдарламалар мен I/O құрылғыларының қолжетімділігінде болды. Әрбір процессор процесті жоспарлаушының жеке көшірмесін іске қосты, ол PID-ден бүтін сандық мәнді оқитын. Бұл мән іске қосылатын процесті таңдау үшін пайдаланылды. Егер бағдарлама немесе құрылғы басқа процеске іске қосылу сигналын беру қажет болса, ол PID-ге осы процестің нөмірін жазатын. PID кез келген сұраныс бойынша ең жоғары басымдықты процесті анықтап, оны барлық процессорларға жіберетін. Pluribus бағдарламалық жасақтамасының маңызды ерекшелігі – "STAGE" жүйесі, ол жүйелік қателерді анықтап, олардан қалпына келтіру шараларын жүзеге асырды. Процессор сағаттары барлық процессорларда бақылау таймерлерін іске қосқан үзіліс басқарушыларына ие болды. Егер процессор жұмысын тоқтатса, басқа процессор оны анықтап, қалпына келтіруді бастайтын. Қалпына келтіру процесі ортақ ресурстарға қойылған барлық құлыптарды ашып, бөлінген жадты босатып, барлық процессорлардағы барлық өңдеуді қайта іске қосатын. Бұл ARPANET маршрутизациялық түйіні үшін қабылданатын болды, себебі жоғалған пакеттердің барлығы қайта жіберілетін.