Pull to refresh

Comments 39

А термин «файл откачки» это вы где взяли? Мне как-то более привычно видеть термин «подкачки», хотя по смыслу конечно можно употреблять оба. Ну и сегодня вроде второй вариант более широко распространен.
Это оригинальный термин, использованный в документации :)
Да, звучит забавно, не решился подменить.
Ну по логике вещей это именно что «файл откачки». Поскольку первичная операция — это сбросить неиспользуемые страницы. Подгрузка обратно в ОЗУ уже вторична.
Я тут совершенно не против, просто заметил, что «подкачки» все-таки как-то больше прижился. Причем еще с тех самых пор.
У меня от одного этого

180 Мб или 90 Кмикросхем. Всё это удалось для максимальной комплектации разместить в 8 шкафах (секциях ОП).

мурашки по спине. 90К микросхем РУ3! Неужели это могло работать?
Нормально работало, керамический корпус и 5 приемка.
На смену пришли РУ6 объем тот же но требования по питанию меньше.
При этом читал когда-то статью о том, что замена Эльбрус-2 на Эльбрус-90 в системе СПРН дала возможность достигнуть характеристик станций, которые были заложены в изначальном техзадании, но никогда не достигались из-за проблем с вычислительным комплексом.
> 90К микросхем РУ3! Неужели это могло работать?
Да, до тех пор, пока не пропадало напряжение смещения подложки +12В.
Я сам слушал лекцию Бабаяна, где он говорил про переименование регистров, то ли в Э-1, то ли в Э-2. А вы про который рассказываете?
Э-1 и Э-2 близки по архитектуре, элементная база разная.
Возможно слово переименование у него имело какой-то другой смысл,
чем общепринятый сейчас.
В некотором смысле регистры действительно переименовывались внутри, хотя прямого доступа к ним (к верхушке стека) именно как к регистрам не было.
Я учился в 1980-е годы в Одесском университете. И ходили слухи (передаю слухи, как слышал; как говорится, «почем купил, потом и продаю»), что, вроде бы какой-то «Эльбрус» из штаба Одесского военного округа передают ОГУ.
Потом кто-то нам говорил, что «эта штука» может работать «со 100 тыс. виртуальных машин». Цитирую дословно, я эту фразу хорошо запомнил. Она тогда звучала как-то диковато. Вроде бы имелось в виду, что, теоретически, поддерживается такое количество рабочих мест. Каждое со своей ОС, своим оператором и т. д. То есть, получалось, что «Эльбрус-2» — это ОЧЕНЬ многопользовательская система.
Помню, в компьютерном классе на столах стояли «зеленые» мониторы и клавиатуры. Провода от них уходили в пол. Системных блоков, естественно, не было.
При включении на экране выплывала большая звезда из псевдографики (кажется, из звездочек) и надпись «МЕРА КАМАК».
Потом предлагали выбрать операционную систему из пары десятков каких-то ОС. Не помню уже, что там было. Я далек был тогда от всей этой машинерии :) Кажется, из знакомого, были какие-то DOS.
Что-то мы там выбирали и, потом, работали с FORTRAN'ом.
Извиняюсь, если что-то напутал — давно это было, да и не вникал я тогда во всё это.
Мог это быть «Эльбрус»?
ДОС Примус (ЕС-1021, если не ошибаюсь), с которой удалось соприкоснуться, легко тянула 32 терминала на 64 килобайтах озу
Но 100К на Эльбрусе — это вряд ли.
Виртуальные машины были на поздних ЕС-ках.
МЕРА-КАМАК — это польские ЭВМ из линейки СМ.
Это то, на чём я сам начинал! На УПК была МЕРА за которой я проводил весь день раз в неделю.
(а в школе была Atari, кажется них было то ли два, то ли один урок в неделю)

PS я ещё потом получил некий документ с надписью «оператор ЭВМ» :)
Не по поводу Эльбруса, а скорее по поводу многопользовательской работы — у нас на ЕС-1061 с 8 мегабайтами RAM всего-то реально работало под 100 рабочих мест.

Это виртуальные ОС, VM/CMS (но можно было и выбрать, да).

Во многом благодаря тому, что а) ввод-вывод обеспечивали каналы, у которых были свои процессоры, б) терминалы не генерировали прерывание на каждое нажатие кнопки клавиатуры, а умели делать такие вещи, как вставка и удаление символов в пределах экрана.

Но надо честно сказать, что один пользователь с каким-нибудь Reduce (или любой расчетной задачей вообще) мог спокойно загрузить всего один или два процессора на все 100%. Так что многопользовательская работа все-таки была реально ограниченная ресурсами. Поэтому в 100К не верю, хотя смотря что делать, конечно.
В универе на ВЦ стояла не то ЕС-1033, не-то 1036. Скорее 1033. И да, там был том числе и ПРИМУС.
“И он уже не тот, что был в начале, Чужие судьбы, став его судьбой, Признав его, уводят за собой...” (Р.М.Рильке).
отличные для своего времени результаты


Взять и легким движением пера отнять хлеб у сектантов, злой вы.
Не продашь слона.(ц)
А сектанты — это кто?
Те кто моего сына научили, что в космос первым полетл Армстронг, причем сразу на луну.
Те кто моего сына научили

Кто же те злодеи, которые мешали вам учить своего сына?
Я лично встречал человека, уверенного, что Ленин сверг с престола «то ли Петра I, то ли III».
А разгадка проста — школу не надо было прогуливать, а историю надо было учить.
> Этот механизм в чем-то похож на уровень привилегий х86.
Этот массив дескрипторов называется Dijkstra display: http://cs-exhibitions.uni-klu.ac.at/index.php?id=4&uid=9.
Спасибо за ссылку. А когда Дийкстра предложил этот механизм? Навскидку я не нашел.
Но в Эльбрусе механизм Dijkstra display содержит зарезервированные индексы — 0 для ОС, 1 для программ, 2 для библиотек. Именно это я имел ввиду когда говорил о привилегиях.
Да, он его изобрел и использовал в компиляторе Алгола-60.
UFO just landed and posted this here
Суперскалярность Эльбруса похожа на Интел , но не очень.
Слово «контекст» употребляется в статье для указания на текущую выполняемую процедуру.
Контекст в смысле контекст потока, используемый ОС для переключения, конечно тоже существовал, но явного описания его я не нашел.
Не мудрено… Поищите «pentium эльбрус Пентковский», например www.koshcheev.ru/2012/08/27/intel-pentium-pentkovski/
Это что-то из области «американцы на луне не были» наоборот.
МКП и Э-3 реально существовали, также как и векторный сопроцессор к Э-2.
Эль-90 — разве что на бумаге.
Идеи и опыт, полученные при разработке Эльбрусов несомненно пригодились Интелу.
Но у Интела и своего опыта хватает а идеи… они ведь были описаны, достаточно иметь желание читать.
Его достоинства — одновременно и недостатки.
1) очень узок круг специалистов, способных понять куда всё это можно эффективно применить. Вот для того же Итаниума нормальный оптимизирующий компилятор так и не осилили написать. В общем, «каждая фича, это отдельная песня. Это почти шедевр. Даже чересчур шедевр, просто искусство ради искусства.» (ц)
2) через десять-двадцать лет после разработки программы стали требовать совсем иного набора данных и команд, а тут оно аппаратно прошито и не изменить.
3) стековые команды очень хреново совместимы с кешем и аппаратным предсказанием исполнения.
Итаниум появился на 20 лет позже и он совсем в другой парадигме живёт — явного параллелизма.
Сами по себе стековые процессоры появились задолго до Эльбруса и отлично себя показали.

Не знаю что там начали требовать программы через 20 лет, но фортран он и до сих пор фортран, например.
Компилятор С для него не написали, впрочем, в начале 80-х совсем неочевидно было, что тот выстрелит.
«МКП, как и Эльбрус-3, был убит „перестройкой“ — прекращением финансирования обронной тематики. Потому и резали „по живому“, закрывая темы, что финансирование упало многократно, пытались сохранить хоть что-то, при этом волей-неволей приходилось прикрывать почти все разработки.» (C)

Стековые команды отлично совместимы с кэшем.
Внутренний паралеллизм они тоже не исключают.
Внутренний паралеллизм они тоже не исключают.
Не исключают, но делают реализацию заметно тяжелее. Заметьте что Itanium тоже, в некотором смысле стековый (регистровое окно, фоновая откачка регистров в память, вот это вот всё), что делает и аппаратную реализацию тяжёлой, а эмуляцию — почти невозможной.

Всё хорошо в меру: архитектуры Элюбруса и Итаниума содержат вещи, которые сделали их использование сильно неудобным, но при этом распространённые архитектуры весьма небезопасны.

Их, грубо говоря, можно использовать в «плоском» режиме, когда всё быстро, но одна ошибка — и вся система скомпроментирована. Объёмы кода, которому ядро «доверяет» меряется в мегабайтах, а то и в десятках мегабайт — конечно это добром не кончается!

А можно — в безопасном. С микроядром и постоянным переключением контекстов. Но это медленно, а потому выбирают ускорее на 10 процентов вместо безопасности. Эльбрус был доказательством того, что безопасность не обязана приводить к катастрофическому замедлению как у Intelа
Это всё стоит рассматривать на фоне технологического ландшафта.
Если Эльбрусы были порождены появлением интегральных схем, то к моменту их постановки в серию уже возникли СБИС (VLSI) которые позволили разместить процессор на небольом к-ве микросхем.
Что дешевле, меньше расстояния, можно поднять частоту, меньше ест, надёжнее…

Соответственно было и встречное движение — чтобы разместить процессор на меньшем к-ве микросхем приходится упрощать логику, 32-разрядные системам проще чем 64-разрядным, неожиданный шанс получили 16-разрядные. В очередной раз эволюция прорвалась там, где мало кто ждал.

А в это время на просторах бывшей 1/6 разработчики были больше озабочены вопросом «как прокормить семью».
А вот будет ли кому-нибудь интересна скажем история про VM/SP и советские машины серии ЕС? Не с точки зрения железа, тут разве что характеристики можно будет вспомнить, а с точки зрения ОС, средств разработки и пр.
про виртуализацию было бы интересно IMHO
Не ошибусь, если скажу, что интересна будет многим.
Любые инженерные решения в условиях ограниченных ресурсов всегда интересны.
Есть книги (в djvu):
  • Пентковский В. М. Автокод Эльбрус. Эль-76. Принципы построения языка и руководство к использованию / под редакцией Ершова А. П. — М.: Наука, 1982. — 352 с.
  • Пентковский В. М. Язык программирования Эль-76. Принципы построения языка и руководство к пользованию. — 2-е изд, испр. и доп. — М.: Наука, 1989. — 364 с. — ISBN 5-02-013982-3.

Потрясающе. Половины не понял, но того что понял достаточно для пробуждения серьёзного интереса к теме. Большое спасибо так же за коллекцию ссылок.

Only those users with full accounts are able to leave comments. Log in, please.

Articles