PDA

Просмотр полной версии : PDP-11 и всё всё всё :)



Страницы : 1 [2]

Alex_K
20.05.2023, 14:24
Там идёт взаимодействие между CPU и FPP при передаче аргументов - приёме результов, если они на стороне CPU и есть некоторая зависимость от команда, когда в качестве одно или обоих из них выступает регистр. То есть на некоторых командых FPU понадобится или взять содержимое регистра CPU или сохранить туда что-то. И вот тут может быть как ошибка в микрокоде, так и не синхронность взаимодействия. Мне кажется, что в случае ошибки в микрокоде - оно бы вылезло на тестах, но.. именно, что кажется. А в принципе - листинги тестов скорее всего доступны - можно глянуть, есть ли в них тестирование DIVx на регистрах
Такое взаимодействие с CPU возможно, если методы адресации в FSRC или FDST отличаются от нуля. Там действительно идёт обмен с памятью и в качестве регистров используются РОН процессора. Также РОН сохраняются, т.к. например при методе адресации (Rx)+ для double надо делать увеличение регистра на 010. Но когда в команде DIVF/DIVD в качестве FSRC выступает один из акуумуляторов, то взаимодействия с CPU по идее не должно быть.

Hunta
20.05.2023, 14:54
Такое взаимодействие с CPU возможно, если методы адресации в FSRC или FDST отличаются от нуля.
В некоторых командах (с ходу не скажу, но на вскидку - команды конвертирования из int - источником будет регистр CPU или в int - приёмником будет регистр CPU) будут и регистры процессора


Но когда в команде DIVF/DIVD в качестве FSRC выступает один из акуумуляторов, то взаимодействия с CPU по идее не должно быть.
По идее - да. Но детали взаимодействия - надо смотреть исходники. Может, ошибка не микрокоде выполнения инстркция - а в части взаимодействия с процом. И ещё - меня сильно смущает, что тесты проходят - но тут надо листинги смотреть

т.к. например при методе адресации (Rx)+ для double надо делать увеличение регистра на 010.
Не всегда. Если метод 27 (то есть #чтото), то PC увеличится по прежнему на два.
Ну и при -(Rx) будет уменьшение - на 4, на 8 или на 2 для PC

Alex_K
20.05.2023, 17:56
В некоторых командах (с ходу не скажу, но на вскидку - команды конвертирования из int - источником будет регистр CPU или в int - приёмником будет регистр CPU) будут и регистры процессора
Это в командах формата F3 и F4. Собственно можно почитать документ на сайте Vslav - https://1801bm1.com/files/retro/DEC/F-11/EK-FPF11-TM-001_Jul81.pdf, страницы 4-3 и 4-4.

Hunta
20.05.2023, 18:09
Собственно можно почитать документ
Я могу сделать проще - открыть исходник "PLM" в PDP-11X и посмотреть, какие команды помечены нужным флажком.
Но какие именно команды такие - для вопроса не важно, так как DIVx - не из их списка

vva
20.05.2023, 18:10
Посмотрел, по диагонали, файл JKDCB0 - тесты 43-45 (тесты DIVF, DIVD).
Выполняется команда


174410 DIVF(D) (R0), AC0

Hunta
20.05.2023, 18:12
Выполняется команда
Не то, что интересно

vva
20.05.2023, 18:18
В файле JKDDB0 тестов DIVx нет, судя по содержанию.

- - - Добавлено - - -

Нужно качать файлы, распозновать, искать...

- - - Добавлено - - -

Из описания тестов с сайта https://www.pdp-11.nl/
The two programs JKDCB0 and JKDDB0 are designed to detect and report logic faults in the F-11 MMU and FPP chip set (because part of the FP microcode is in the MMU chip). The program prints the total number of passes completed and the total number of errors since the last end of pass message.

Hunta
20.05.2023, 18:23
Нужно качать файлы, распозновать, искать...
Я бы сказал, что всё это уже сделано - https://github.com/1801BM1/cpu11/tree/master/f11/tst/org


The two programs JKDCB0 and JKDDB0 are designed to detect and report logic faults in the F-11 MMU and FPP chip set (because part of the FP microcode is in the MMU chip)
И это тоже известно. И вот этот факт привел к путанице про 1801ВМ3, что типа у него часть MMU в ВМ4

vva
21.05.2023, 21:20
Удалось сгенерить в OMDAZZ 11/23 с MY. Прогнал тест, ошибки те же.

Hunta
21.05.2023, 21:29
Прогнал тест, ошибки те же.
Как я и писал - врят ли это Quartus, врят ли это плата, но - вполне возможно - результат синтеза не вытягивает то тактовой - то есть где-то всплывают слишком большие задержки. Теоретически, анализ времянки выдаст, если с задержками плохо, но, как показывает практика - в принципе - оно при плохих задержках может рабатать. А может и не работать. Как вариант - можно попробовать снизить тактовую.

vva
22.05.2023, 09:03
Как вариант - можно попробовать снизить тактовую.
Понизил в 2 раза (стало 25 МГц) - без изменений.

Hunta
22.05.2023, 09:05
Понизил в 2 раза (стало 25 МГц) - без изменений.
Ну, похоже какая-то внутренняя проблема (типа ошибки в микрокоде). Надо, что бы автор посмотрел...

vva
26.05.2023, 10:31
На сайте https://github.com/1801BM1 2 дня назад появилась информация об исправлении микрокода.
Результат


.run ftest
Enter first value (int dec): 2
Enter second value (int dec): 12

*** Float operations ***
*** ADD 14 007400
*** SUB 10 007400
*** MUL 24 007400
*** DIV 6 007400
*** NEG 65534 007410
*** ABS 2 007400

*** Double operations ***
*** ADD 14 007600
*** SUB 10 007600
*** MUL 24 007600
*** DIV 6 007600
*** NEG 65534 007610
*** ABS 2 007600

.run ftest
Enter first value (int dec): 12
Enter second value (int dec): 2

*** Float operations ***
*** ADD 14 007400
*** SUB 65526 007410
*** MUL 24 007400
*** DIV 0 007400
*** NEG 65524 007410
*** ABS 12 007400

*** Double operations ***
*** ADD 14 007600
*** SUB 65526 007610
*** MUL 24 007600
*** DIV 0 007600
*** NEG 65524 007610
*** ABS 12 007600

Ура!!!

- - - Добавлено - - -

Ошибки SQRT, TAN, ATAN (ранее считалось, что это глюк библиотек FORTRANа) также исчезли:


PROGRAM TF
PARAMETER (N=2000)
REAL*8 V1,V2,S,O
INTEGER I
C
S=0.0
DO 1 I=1,N
V1=I
V2=V1+1.0
O=(LOG(EXP(V2/V1)))*(V1/V2)
S=S+ATAN(TAN(ACOS(COS(ASIN(SIN(SQRT(O*O)))))))
TYPE *,S
1 CONTINUE
STOP
END

Результат:


.run tf
0.9999999999999999
2.000000000000000
3.000000000000000
4.000000000000000
.....
1997.000000000000
1998.000000000000
1999.000000000000
2000.000000000000
STOP

Hunta
26.05.2023, 11:11
появилась информация об исправлении микрокода.
Аха, всё таки микрокод...

- - - Добавлено - - -


2 дня назад появилась информация об исправлении микрокода
Исправление нашёл, а вот информацию о нём - что то не вижу..

vva
26.05.2023, 11:29
Исправление нашёл, а вот информацию о нём - что то не вижу..
Возможно неверно выразился:
f11: fix wrong next microinstruction address
It was found the "divf ACx, ACx" instruction caused the FPP
exception in double precision float mode (see the updated
test.mac for reproduction). The reason was in incorrect
next address bit reset on micro-address 0x008 in the dc303 CS=2.
...

Hunta
26.05.2023, 12:32
Возможно неверно выразился:
Да, теперь легко нашлось, спасибо!

Hunta
14.06.2023, 12:23
Time-bomb-ы были не только у Microsoft


.SbTtl ...CMY Verify that ...CMZ has not been altered
;+
; ...CMY
;
; The ...CMY checks that the user has not patched out the ...CMZ message.
; If the ...CMZ code or message has been altered, the ...CMY causes a trap to 10 from location -1.
;
;-

.SbTtl ...CMZ Field test / DECUS bomb
;+
; ...CMZ
;
; This macro is designed to be included in the startup code of each of the CUSPs and monitor images.
; It is designed to irritate users who are using field test software after the end of field test.
; During generation of field test baselevels, use the long definition of ...CMZ.
; When building the actual release software, use the "null" (2 line) definition of ...CMZ to remove the message.
;
; The macro has one argument which is to be set in each program:
;
; FUDGE -- Should be set to the edit level (.SL in SL) of each module.
; This will "randomize" the number of days after expiration that each component will start hassling the user.
; This will increase the irritation.
;
; The macro has 3 additional arguments which should be set in SYSMAC.MAC by the project leader
; at an arbitrary date following the end of field test:
;
; DAY -- day of the month 1-31
; MON -- three letter month name (in English)
; YEAR -- last 2 digits of the year.
;
; The L0, L1 and L2 arguments should be left to default.
;
; NOTE: The date comparison used is NOT exact, it is a +-1 day test since the low bit of the day is lost.
;-

Hunta
19.06.2023, 08:43
На vcfed промелькнула информации, что в Pro/380 проц работает на 10 МГц. Попробую поискать сам.

Hunta
19.06.2023, 16:45
Пишут, что плата (http://www.KpXX.Ru/DEC/Hardware/QSB-11A) эмулирует RX01 (половинчатой емкости) на пузырьковой памяти

dk_spb
19.06.2023, 17:10
Пишут, что плата (http://www.KpXX.Ru/DEC/Hardware/QSB-11A) эмулирует RX01 (половинчатой емкости) на пузырьковой памяти
У нас такое тоже было на цилиндрической (1605РЦ). Только не плата, а целый блок.
У меня только немножко фотографий есть

AlexG
19.06.2023, 17:35
Пишут, что плата (http://www.KpXX.Ru/DEC/Hardware/QSB-11A) эмулирует RX01 (половинчатой емкости) на пузырьковой памяти
Красивое...
Даже Z80 в наличии. Можно Синклер собирать. ;-)
ПС
http://www.st.rim.or.jp/~nkomatsu/evakit/BPK72.html

Hunta
19.06.2023, 17:53
ПС
На одном штатовском сайте, где продаются всякие заготовки электронные (адрес не помню, но могу восстановить) я видел похожий набор. Вот только какая там микруха использовалась - не помню...

AlexG
20.06.2023, 11:24
дока от интел
http://www.bitsavers.org/components/intel/bubbleMemory/AFN-01757B_Bubble_Storage_Data_Catalog_Feb81.pdf

Hunta
20.06.2023, 16:09
На vcfed промелькнула информации, что в Pro/380 проц работает на 10 МГц. Попробую поискать сам.
Из вики
"Later, the Professional 380 (PRO-380) was introduced using the much faster J-11 chip set (as used in 11/73 systems). However, due to clocking issues on the motherboard, the J-11 chip runs at 10 MHz instead of 16-18 MHz, thus making the PRO-380 slower than a stock 11/73 system."

Hunta
21.06.2023, 10:13
Интересные вещи открываешь, копаясь в исходниках :) Из RT-11


;+
; NOTE: The .PRINT must be followed by MOV R5,R5 to indicate to SL.SYS
; that the .PRINT is printing a prompt. This causes SL.SYS to not print
; the prompt for CSISPC/GEN/ GTLIN.
;-

Трансцендентное воздействие на SL :)

Alex_K
21.06.2023, 19:28
Интересные вещи открываешь, копаясь в исходниках :) Из RT-11


;+
; NOTE: The .PRINT must be followed by MOV R5,R5 to indicate to SL.SYS
; that the .PRINT is printing a prompt. This causes SL.SYS to not print
; the prompt for CSISPC/GEN/ GTLIN.
;-

Трансцендентное воздействие на SL :)
Я это давно знал. Использовал в своём драйвере AC, который в том числе позволяет менять промптер. Но чтобы это дело узнать пришлось дизассемблировать SL.SYS от Сторожевых. Увы, в 90-е у меня исходников RT-11 не было, да и интернета тоже.

Hunta
21.06.2023, 19:34
Но чтобы это дело узнать пришлось дизассемблировать SL.SYS от Сторожевых
Я наткнулся на это с другой стороны - из исходников RT

Alex_K
21.06.2023, 19:42
Я наткнулся на это с другой стороны - из исходников RT
Этот хук употребляется в нескольких местах. В KMON не только для вывода промптера, но и для вывода подсказок при вводе неполных команд. А также в USR при реализации запросов .CSISPC,.CSIGEN,.GTLIN.

Hunta
21.06.2023, 20:12
Этот хук употребляется в нескольких местах
Уже знаю - в SL подробно расписано

Hunta
22.06.2023, 18:48
Наткнулся. Тему заводить не хочется, поэтому здесь - так как и к PDP-11.. тоже относится :)

"Пишите так, чтобы ваш код больше не нужно было читать. Вообще никогда."

То есть, например, должна быть документация - что на вход, что делает и что на выходе :)

Hunta
15.07.2023, 16:56
По оказии заглянул в одну контору. Нашёл много интересного :)

В частности - некоторое количество плат от Э85 - основная только одна, куча контроллеров и развандаленные две платы памяти. Работоспособность, конечно, вызывает дикие сомнения, но как донор - пойдут :)

Ну и был сильный шок, когда попалась плата СМ1 (но без ПЗУшек)!

Помимо этого некоторе количество весьма любопытных плат незнамо от чего, правда, сомнительно, что от PDP-11 подобного :)

Самое интересное сфоткаю и выложу

Radon17
15.07.2023, 17:09
Ура, очень ждём фото!

Ian Komov
15.07.2023, 17:19
Интересно увидеть находку! Ждемс!

Hunta
15.07.2023, 17:49
Ну.. помимо ПЗУ - на СМ1 нету также ни одного конденсатора. Хотя это и не критично :)

dk_spb
15.07.2023, 19:36
Ждем фоточки.

Hunta
15.07.2023, 20:34
Завтра в течении дня сделаю - сегодня жена домой с фотоаппаратом приехала, когда света уже было мало

Hunta
16.07.2023, 16:41
Не могу обрадовать - весь день небо в тучах и дождь, фотографии даже на профессиональном фотоаппарате получились так себе. Откладывается до следующих выходных, когда жена вернётся (она с фотоаппаратами уезжает). Но если на неделе будут солнечные дни - попробую на телефон сына - вроде он прилично снимает - как предварительные фотки :)

Hunta
21.07.2023, 10:29
По мотивам игры DANGEON (или Colossal Cave Adventure или Пещера) :)

"Я мееееееедленно открываю золотым ключом стальную решёоооотку..."

Hunta
05.08.2023, 14:31
Давно обещанные фото найденного и спасенного (http://www.KpXX.Ru/Hardware/SomeFoto) от неправильной судьбы :) Внимание - фотки достаточно большие - от 2 до 6 мегов

Фото плат от Э85 делать пока не стал - вирусняк словил плюс у нас жарко - утек потом. Плюс - как закрепить фотоаппарат я придумал, но вылезла проблема с тенью - надо подумать - как её убрать.

Жена вернётся в Самара в конце августа - тогда вторую фотосессию проведу :)

Плюс ещё была спасена плата от Camac-а (индикатор магистрали 332001 ЭПМ ИМИ) - её надо бы с торца сфоткать - но перед этим придумать - как закрепить :)

Hunta
22.01.2024, 16:29
.run hd7:forth

***** FORTH-83 V 3.1 APRIL 1987 *****

Hunta
24.01.2024, 10:11
Кстати, если кому-то Forth нужен, могу выложить. Но с ним есть одна проблема - я его выдрал из какой-то программы, так что иногда он ведёт странно (а может просто из-за уровня знания Форта я делаю странное :) ) и выдаёт разное на экран, но вроде не падал окончатльно и бесповоротно до сих пор.

Hunta
24.01.2024, 14:46
Из занимательного. Нашлись первые исходники тестов - DZRFA и DZRFB. Сильно похоже, что от самой DEC, но.. уверенности нет

- - - Добавлено - - -

К предыдущему - DZRFBA.P11

И ещё один - DZQGAC.P11

Woxem
07.02.2024, 07:05
Кстати, если кому-то Forth нужен, могу выложить. Но с ним есть одна проблема - я его выдрал из какой-то программы, так что иногда он ведёт странно (а может просто из-за уровня знания Форта я делаю странное :) ) и выдаёт разное на экран, но вроде не падал окончатльно и бесповоротно до сих пор.

Выложите пожалуйста очень интересно

Hunta
07.02.2024, 09:46
Выложите
http://www.KpXX.Ru/FTP/eswdGFe4
Никакой технической информации предоставить не могу - не специалист по Форту, а программа была вырезана из какой-то игрушки - за давностью времени не скажу даже - откуда, хотя скорее всего она осталась в архиве, но искать (самому интересно) раньше выходных не буду

Woxem
09.02.2024, 18:36
Не работает ссылка

Hunta
09.02.2024, 20:03
Не работает ссылка
Прошу прощёния, криво отредактировал. Поправил

Hunta
27.06.2024, 15:48
PDP-11/73 в корпусе от спектрума(?) :)
https://i0.wp.com/avitech.com.au/wp-content/uploads/2019/10/IMG_20191006_194534.jpg

Woxem
02.07.2024, 11:24
Прошу прощёния, криво отредактировал. Поправил

Так и не работает ссылка

Hunta
02.07.2024, 12:26
Так и не работает ссылка
Ничего не могу сказать без подробностей - у меня и в Edge и в IE и открывается и сохраняется

Hunta
25.07.2024, 12:44
Из занимательного.

Документ "A UNIX™ Operating System for the DEC VAX-11/780 Computer"

Строчка оттуда

" Additionally, the VAX-11/780 is priced nearly the same as a PDP-11/70 and executes most programs somewhat faster than a PDP-11/780."

Hunta
15.09.2024, 10:52
Блуждая в поиске гугла, натыкаешься иногда на занимательное. Очередная находка

http://www.b67c.com/DEC1.html

Добавлю так же в первое сообщение

vva
24.09.2024, 14:32
Необходимо создать загрузочный DM диск с RSX11M.
Взял образ ленты rsx11m46.tpc (свежее не нашел), далее через simh:
b ts0, bad bru и в итоге:

BRU>/REW/INIT/BAC:DBSYS MS0: DB0:\:0B\m1:
BRU - Starting Tape 1 on MS0:

BRU - This disk will not contain a hardware bootable system

BRU - End of Tape 1 on MS0:

BRU - Completed

И как сделать DM загрузочным?

Hunta
24.09.2024, 17:23
Подключить его к системе (simh?), которая видет DM диски
Загрузиться в ней
Выполнить команды (предположим, он подключен в ней как DM1)


INS $VMR
ASN DM1:=SY:
ASN DM1:=LB:
SET /UIC=[1,54]
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ПРОВЕРИТЬ, ЧТО В SYSVMR.CMD ЗАГРУЖАЕТСЯ ДРАЙВЕР DM
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Если нет - в секции где грузятся другие драйвера дисков, добавить команду
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! LOA DM:
PIP RSX11M.SYS/UP=RSX11M.TSK
VMR @SYSVMR
BOO SY:[1,54]RSX11M
....
SAV /WB

Что-то типа такого

- - - Добавлено - - -


Взял образ ленты rsx11m46.tpc (свежее не нашел)
Как то странно нашлось, ибо

https://www.9track.net/bits/

BB-L974H-BC RSX11M V4.7 BIN MT:1600 1/1

Ну и где-то я находил 4.8, но в виде образа для DU

- - - Добавлено - - -

BB-L974H-BC RSX11M V4.7 BIN MT:1600 1/1 - там есть базовая система под DM
Сбрасывать двумя командами (вроде не ошибся)

BRU/INI/BACK:DMSYS <лентопротяг с лентой>: DM1:
MOU DM1:/OVR
BRU/NOINI/BACK:RSXBAS <лентопротяг с лентой>: DM1:

Ну а для генерации сбросить по аналогии последней команды бэкапсеты:
EXCPRV
PRVBLD
RLUTIL

Возможно, понадобятся ещё эти, но вроде для генерации не нужны
MCRSRC
HLPDCL
RMSV20

vva
24.09.2024, 23:10
>ALL DM1:
>MOU/FOR/VI DM1:
Volume Information
Class: Foreign
Device: DM01
Volume label:
>

SYSTEM CRASH AT LOCATION 027102
...


- - - Добавлено - - -



>ALL DM1:
>MOU/OVR/VI DM1:
MOU - no home block found or structure not supported
>

SYSTEM CRASH AT LOCATION 027102


Не судьба записать загрузчик.

Hunta
25.09.2024, 12:00
SYSTEM CRASH AT
Что-то не так с системой, откуда выполняются команды


MOU/FOR/VI DM1:


MOU/OVR/VI DM1:

Ну и


MOU - no home block found or structure not supported

на диске нет ФС от RSX

vva
25.09.2024, 12:33
Цель: на DM получить Baseline с ленты RSX11M для 11/23.
ОК, пошел другим путем:
- сменил процессор на 11/24, память 124KW;
- Baseline с ленты на db0: (загрузчик пишется);
- загрузка с другого диска, mou db0:, mou/for dm1:, ini dm1:, bru db0: dm1:.

Результат: на dm1: нет SYSVMR.CMD.
Вопрос открыт - как на dm1: записать загрузчик?

Hunta
25.09.2024, 13:16
Результат: на dm1: нет SYSVMR.CMD.
Если это взято с BB-L974H-BC RSX11M V4.7 BIN MT 1600 1 of 1.tap , то там система (DMSYS) уже по логике под DM (не проверял). То есть только две команды BRU


BRU/INI/BACK:DMSYS <лентопротяг с лентой>: DM1:
MOU DM1:/OVR
BRU/NOINI/BACK:RSXBAS <лентопротяг с лентой>: DM1:

И пробовать загружать.

vva
25.09.2024, 22:02
Сам лопух, не доглядел
BACK:DMSYS.

В пакете BB-L974H-BC RSX11M V4.7 BIN MT 1600 засада:


@TAPEKIT
...
>BRU/DENS:1600/NOINI/SUP/UFD/BAC:EXCPRV MS0: DM0:
BRU - Starting Tape 1

BRU -- *WARNING* -- Data was lost due to IO errors [012,007] C2C FAXB.CSL;102

File ID 000370 LBN 72.
...

и потоv во время sysgen


...AT. -- File read error
MOUPAR .IDENT /2516/
.ENABL LC;o6; COPYRIGHT (c

Разбираться не стал. С версией 4.6 все прокатило.

Hunta
25.09.2024, 22:45
В пакете BB-L974H-BC RSX11M V4.7 BIN MT 1600 засада:
Вообще странно. Потому что я снимал список файла, копируя бэкапсет с ленты на диск. И в файле никаких сообщений об ошибке

- - - Добавлено - - -

Скачал с сайта - совпадает с моим образом..

vva
25.09.2024, 23:09
Вообще странно...
Скачал файл повторно, завтра попробую повторить генерацию.

Hunta
26.09.2024, 09:31
Попробую выбрать время и проверить свой образ, но до выходных не гарантирую

- - - Добавлено - - -

Можно не проверять повторно, у меня тоже ошибка


>bru/ini/back:excprv mu: du1:
BRU - Starting Tape 1 on MU0:

BRU -- *WARNING* -- No bad block data file found

BRU - This disk will not contain a hardware bootable system

BRU -- *WARNING* -- Data was lost due to IO errors [200200] SGNPER.CMD;1

File ID 000212,000001 LBN 4814.

BRU - End of Tape 1 on MU0:

BRU - Completed

>

Хотя и несколько другая... Теперь точно до выходных

- - - Добавлено - - -

Прогнал восстановление всех бэкапсетов - только на этом ошибка..

vva
26.09.2024, 10:32
Скачал файл повторно, завтра попробую повторить генерацию.
Попробовал. Ошибки повторились.

Hunta
26.09.2024, 10:50
Что повторится - было понятно после моего эксперимента :)
Поскольку ImageUtils худо бедно, но работает с лентами - я на выходных попробую локализовать место плохого блока и восстановить его. Поскольку есть и предыдущая и последующие версии - шанс, думаю, неплохой на это

P.S. Руки пока не дошли, но напомнил себе :)

Hunta
28.10.2024, 12:05
"Для поддержки больших программ в относительно небольшом виртуальном адресном пространстве PDP-11 размером 64 КБ использовалась сложная полуавтоматическая система перекрытий; для любой программы перекрытия создавались программой-сборщиком задач RSX (называемой TKB). Если схема перекрытий была особенно сложной, сборка программы могла быть очень медленной. На двери комнаты инженера, отвечающего за текущее обслуживание TKB, висела доска с надписью «Список пожеланий TKB». В течение нескольких лет главным пунктом в списке пожеланий было «сборка в тот же день»."

Hunta
30.10.2024, 20:38
И в первом сообщении тоже :)
https://github.com/joelang/tu58v3

shattered
16.12.2024, 21:14
https://github.com/j-hoppe/tu58fs -- тоже прикольное изделие, но код на C слегка корявый.

Из него, кстати, легко получается загрузчик для УКНЦ по С2

Hunta
16.12.2024, 22:18
https://github.com/j-hoppe/tu58fs -- тоже прикольное изделие
Это прародитель ImageUtils. И технически - на основе кода от ImageUtils есть и эмулятор TU58fs, только я давно не проверял его работу

Hunta
22.12.2024, 15:37
Их исходников RSX


; ABO /FUBAR is not documented, and will leave a trace to indicate
; that it has been executed. If the system crashes after the execution
; of this command, neither Digital, or Mentec will be responsible for the
; subsequent I/O which completed. For anyone who is not familiar with the
; term "FUBAR", the generic meaning is "Fu&*ed Up Beyond All Recognition"
; and this command is quite capable of performing that function ...

vva
22.12.2024, 20:34
term "FUBAR", the generic meaning is "Fu&*ed Up Beyond All Recognition"
Мощно!!! Молодцы.

Hunta
22.05.2025, 23:09
Из красивого. (http://www.KpXX.Ru/Pics/j11_osprey.jpg)
Не помню - была ли здесь эта фотка, так что пусть будет :)

Vasily_A
24.05.2025, 23:25
это что за борьба противоположностей? интел с альтерой против дека с ксайлинксом?

Hunta
25.05.2025, 11:08
Да пусть хоть Tango туда поставят :)

Hunta
04.06.2025, 22:37
Экзотика (http://www.KpXX.Ru/DEC/PDP-11/Hardware/APT-LD Techmate)

Hunta
29.10.2025, 00:00
Почему многопроцессорные PDP-11 не были выпущены в продажу?

Об этом ходят слухи, и все они исходят от источников, не имеющих отношения к DEC и не имеющих непосредственного опыта работы с многопроцессорными системами. Самый распространённый слух связан с появлением VAX 11/780 примерно в то же время. Согласно ему, 11/74 превзошёл бы VAX в (2, 4, 8, 16 — выберите любое случайное число) раз, поэтому DEC сняла с производства PDP-11/74, чтобы начать продавать VAX.

Эмоционально заманчиво, но неверно. 780-я была быстрее 11/70, а 16-битный многопроцессорный компьютер нелогично сравнивать с 32-битным однопроцессорным. Кроме того, это неправдоподобно, учитывая известную любовь Кена Олсена к серии PDP.

Также высказывалось мнение, что плата KB11-CM была слишком дорогой в производстве и продаже с целью получения прибыли. Однако разница между платами KB11-C и KB11-CM была незначительной, и в любом случае платы DEC с накруткой производились на автоматизированных станках Gardner-Denver. Сложность изготовления этой конкретной детали не была проблемой.

Правда о том, что выпуск 11/74 не состоялся, заключается в том, что это было разочаровывающе простое бизнес-решение.

«Технически продукт был весьма успешным. Финансово он, вероятно, был бы успешным. Но в то время создание и настройка 11/74 требовали огромных ресурсов. Существовал комитет по конфигурации 11/74, который должен был рассматривать каждый заказ PDP-11/74, утверждать список устройств, которые в него входили, и так далее. Это было диаметрально противоположно философии линейки PDP-11 и скорее напоминало подход DECsystem-10 и DECsystem-20 к системам — индивидуальные системы, уникальные для каждого заказчика, требующие значительной поддержки DEC.

«Было ясно, что поставка систем потребует больших усилий. Было неясно, заработает ли DEC больше, поставляя 11/74 и используя имеющиеся ресурсы, чем, скажем, продавая 11/44, которые было легко настраивать.

Были также проблемы с выездным обслуживанием. Выездное обслуживание работает по принципу «предоставьте нам всю систему, мы проведем диагностику и исправим её». Это диаметрально противоположно философии многопроцессорной системы.

«Сложность 11/74 была высокой. Сотрудники RSX работали над оборудованием, потому что не доверяли никому, кто прикасался бы к их оборудованию. В системе было около 500 кабелей BC06R разной длины, которые время от времени выходили из строя, и их было трудно найти. Были проблемы с проходными разъёмами, выходящими из строя в местах, где BC06R проходили через переборку, и найти их было просто кошмаром.

«Было бы очень сложно поддерживать что-либо, кроме двухпроцессорной системы, в полевых условиях из-за особенностей выездного обслуживания».

Источник: Брайан С. Маккарти, группа DEC RSX

- - - Добавлено - - -

Была ли когда-либо построена версия с Qbus?

Да. Люди сообщают, что видели её во время экскурсий по Спит-Брук.

Официально DEC никогда ничем не занималась. Однако они...

"... изучали возможность создания мультипроцессора с Qbus на основе модифицированных процессоров KDJ11-B.

"Конечно, мы бы не стали комментировать, если бы построили прототип. Если бы мы собирались это сделать, то, вероятно, потребовалось бы модифицировать плату процессора и добавить внешнюю плату арбитра, которая заменит встроенный арбитр в KDJ11-B."

- - - Добавлено - - -

«Система на 83MP была завершена и действительно загрузила M+. Двухпроцессорная система была ненамного быстрее однопроцессорной из-за конкуренции за шину Qbus, поэтому мы так и не продвинулись дальше.

«Что касается местонахождения оборудования, нам понадобится Леонард Нимой или Джеральдо Ривера, чтобы разгадать эту загадку. Полагаю, модифицированные процессоры были разыграны в качестве одного из призов на викторине PDP-11, возможно, в Цинциннати?»

- - - Добавлено - - -

Какова была производительность многопроцессорной системы?

Для PDP-11/74, сконфигурированной с четырьмя процессорами, все из которых работали, производительность была примерно в три раза выше, чем у 11/70. (На самом деле, у 11/780 не было серьёзных конкурентов.) Какой показатель использовался, неизвестно.

Источник: The Big Book of RSX Applications, Том II, Приложение B

- - - Добавлено - - -

Как многопроцессорная система справлялась со сбоями ЦП?

Как ни странно, очень плохо. Когда один ЦП падал, все ЦП падали.

«Философия 11/74 заключалась в высокой доступности, а не в высокой надежности. Поэтому, с философской точки зрения, нам нужны были аварийные дампы всех ЦП для выявления проблем с программным обеспечением.

«С прагматической точки зрения, продолжать работу было бы сложно. Вызывающий сбой ЦП находится в ядре и, по всей вероятности, владеет как минимум $EXECL, а также, возможно, некоторыми другими спин-блокировками. Конечно, любая блокировка, которой он владел, была установлена ​​для защиты атомарной транзакции, и падение приводило к проблеме».

«Список Fork может быть поврежден, пул может быть поврежден, состояния устройств могут быть несогласованными, контекст выполняемой задачи на вызвавшем сбой ЦП (это может быть MCR или F11ACP) теряется в том, что могло быть атомарной транзакцией внутри компонента (помните $LOCKL?), и может существовать множество других проблем. [Они] навалятся друг на друга и ... крах».

Источник: Брайан С. Маккарти, группа DEC RSX (июль 2005 г.)

- - - Добавлено - - -

Сколько многопроцессорных систем было построено?

Всего шесть. Далеко не так много, как предполагали люди за пределами Digital.

Разработчики RSX в Спит-Брук (ZKO) в Нашуа, штат Нью-Гэмпшир, имели четырёхпроцессорную систему 11/74 с названиями DECnet CASTOR и POLLUX, в зависимости от конфигурации: один четырёхпроцессорный или два двухпроцессорных.

«Другие системы, о которых я знаю, которые когда-либо существовали, это:

1. Прототип четырёхпроцессорной системы в Тьюксбери. На передней панели было написано 11/70mp, а не 11/74. Прототип был хорош тем, что на задней панели имелась панель ввода ошибок с примерно 20 тумблерами. С их помощью можно было: отключить одну линию на тракте данных MASSBUS; отключить IIST и, мой любимый, самый коварный, вносимый сбой — выключить обход кэша на одном из процессоров. Позже он был заменён четырёхпроцессорной системой в Спит-Брук.

2. У группы аппаратного обеспечения был двухпроцессорный комплекс.

3. У группы DecNet, по-моему, был двухпроцессорный, но, возможно, четырёхпроцессорный комплекс.

4. В лаборатории производительности в Мерримаке был четырёхпроцессорный комплекс.

5. Система, предназначенная для первой поставки клиентам, произведенная для GTE в Лайле, штат Огайо. Насколько я помню, она была двухпроцессорной.

Были и другие системы, но, по-моему, только эти шесть систем хоть когда либо загружались.

Источник: Брайан С. Маккарти, группа DEC RSX (июль 2011 г.)

- - - Добавлено - - -

Я не верю, что такое когда-либо существовало.

Фотографии этих систем существуют, их демонстрировали на симпозиумах DECUS в США, и многие видели систему CASTOR группы разработчиков RSX «вживую» в Спит-Брук (ЗКО).

Брюс Митчелл (почётный редактор журнала Multi-Tasker, группа специалистов по RSX DECUS в США) получил специальное разрешение сфотографировать 11/74 во время встречи SIG в «Вудсе», и ему в качестве сувенира подарили лицевую панель PDP-11/74 и различные другие атрибуты 11/74.

Ещё в 1986 году существовало электронное письмо, свидетельствующее о том, что группа поддержки DECnet в Колорадо-Спрингс проводила общекорпоративный поиск процессоров 11/74 для создания собственной многопроцессорной системы.

Если это был заговор DEC, призванный запутать сообщество пользователей, то он оказался невероятно успешным. Многие видели в галлюцинациях 10-тонный четырёхпроцессорный 11/70 размером 12 на 18 футов в небесно-голубом «корпоративном шкафу» PDP-11 с панелями управления общей памятью MKA11, а рядом с ним — Брайана Маккарти. Теперь и вам это мерещится.

- - - Добавлено - - -

Что случилось с системой группы внедрения RSX?

Компьютер PDP-11/74 группы внедрения RSX находился в ZKO, центре разработки программного обеспечения DEC, расположенном в лесах Спит-Брук в Нашуа, штат Нью-Гэмпшир. В сети DECnet он имел название CASTOR.

После вывода из эксплуатации в ZKO он перешёл в CXO (Колорадо-Спрингс). Группа DECnet вновь ввела его в эксплуатацию под названием PHEANX, что стало единственным неиспользуемым вариантом написания слова «phoenix» в корпоративной сети DECnet.

«CASTOR, после того как мы вывели его из эксплуатации в ZKO, перешёл в CXO к Дэйву Кэрроллу. [...] Я понятия не имею, где сейчас находится ни он, ни Дэйв».

И никто другой тоже не знает. Ни CASTOR, ни другие процессоры 11/70mP, которые были произведены и в конечном итоге возвращены компании в качестве однопроцессорных 11/70.

Источник: Брайан С. Маккарти, группа DEC RSX [март 2002 г.]

- - - Добавлено - - -

Что представлял собой 11/68?

По слухам, ещё менее весомым чем слухи о 11/74, 11/68 проектом многопроцессорной системы, основанной, как сообщается, на архитектуре PDP-11/60. Это был бы не просто 11/60 с другим микрокодом. О нём мало что известно, за исключением тех немногих сотрудников DEC, которые участвовали в проекте или имели с ним контакт.

Если помните, 11/74 — это новый контроллер кэша и изменение инструкций ASRB по сравнению с 11/70. 11/68 (который назывался то ли Bluefish, то ли Dolphin, не помню точно) был процессором, разработанным для MP. Наиболее важной его особенностью была когерентность кэша между процессорами, что исключало необходимость очистки кэша и обхода его в ядре. Он также обладал микрокодом, доступным для записи пользователем, а-ля 11/60 (отсюда и название), но с тем улучшением, что к процессору с плавающей запятой можно было легко обращаться из микрокода.

«Не знаю, существовал ли когда-либо работающий 11/68. Это было бы потрясающе».

Источник: Брайан С. Маккарти, группа DEC RSX (июль 2011 г.)

- - - Добавлено - - -

Как XXDP работал на одном процессоре, не работая на всех процессорах?

Если один процессор или периферийное устройство на одном процессоре выходили из строя, как можно было запустить диагностику XXDP? Загрузка XXDP в общую память заставляла все процессоры запускать XXDP при следующем переключении контекста (если им невероятно повезло) или, что гораздо более вероятно, приводила к сбою с непредсказуемыми последствиями.

«Контроллер памяти MKA-11 позволял каждому процессору видеть или не видеть каждый из блоков памяти по заданному адресу.

«Таким образом, можно было отключить блок памяти и процессор и настроить его как автономный - для запуска диагностики или, если уж на то пошло, отдельной операционной системы. (У IIST было две отдельные шины, поэтому квадро-модуль можно было сконфигурировать как два сдвоенных.)

«Также можно было настроить блок памяти в верхней части памяти (в конфигурации mP) как блок 0 для автономного процессора. Это позволяло загрузить XXDP в блок памяти. Затем её можно было запустить с передней панели автономного процессора».

Источник: Брайан С. Маккарти, группа DEC RSX (май 2015 г.)

- - - Добавлено - - -

Как XXDP работал на одном процессоре, не работая на всех процессорах?

Если один процессор или периферийное устройство на одном процессоре выходили из строя, как можно было запустить диагностику XXDP? Загрузка XXDP в общую память заставляла все процессоры запускать XXDP при следующем переключении контекста (если им невероятно повезло) или, что гораздо более вероятно, приводила к сбою с непредсказуемыми последствиями.

«Контроллер памяти MKA-11 позволял каждому процессору видеть или не видеть каждый из блоков памяти по заданному адресу.

«Таким образом, можно было отключить блок памяти и процессор и настроить его как автономный - для запуска диагностики или, если уж на то пошло, отдельной операционной системы. (У IIST было две отдельные шины, поэтому квадро-модуль можно было сконфигурировать как два сдвоенных.)

«Также можно было настроить блок памяти в верхней части памяти (в конфигурации mP) как блок 0 для автономного процессора. Это позволяло загрузить XXDP в блок памяти. Затем её можно было запустить с передней панели автономного процессора».

Источник: Брайан С. Маккарти, группа DEC RSX (май 2015 г.)