Миф: как IBM победил БЭСМ
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:
https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
-
- Уже с Приветом
- Posts: 38016
- Joined: 14 Dec 2006 20:13
- Location: USA
Re: Миф: как IBM победил БЭСМ
Ну так в конце кучу всего поподключали. Из за копирования ИБМ другой переферии попросту не было. При этом подключавшие матерились как грузчики, продираясь через ненужные ИБМ овские навороты и не находя привычных и нужных фич (вроде поблоковой организации лент). Но АЦПУ так и подключили, выкинув нафиг весь канал и напрямую управляя молоточками (и ничего, нормально печатало).zVlad wrote:Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:
https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
StrangerR wrote:Ну так в конце кучу всего поподключали. Из за копирования ИБМ другой переферии попросту не было. При этом подключавшие матерились как грузчики, продираясь через ненужные ИБМ овские навороты и не находя привычных и нужных фич (вроде поблоковой организации лент). Но АЦПУ так и подключили, выкинув нафиг весь канал и напрямую управляя молоточками (и ничего, нормально печатало).zVlad wrote:Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:
https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
Ненужные для БЭСМ 6 Вам бы следовало сказать для бОльшей корректности. Канал кстати не в устройствах находился, так что из устройств вы канал выбрасывать не могли - не было его там. Более того, между устройством и каналом имелось устройство управления (в случае печати интегрированное, а в случае лент и дисков отдельное устройство). Так что устройства сами по себе были достаточно "голенькие" что ли.
Материться - это и вовсе не метод решения проблем в технике. Это на стройке только помогает.
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
Раз уж Вы говорите об ИБМ то почитайте вот про эту модель, 1967 года выпуска, на год раньше начала выпуска БЭСМ 6:StrangerR wrote:...А в организации виртуальной памяти ИБМ отставала тогда лет на 10 от других.
http://en.m.wikipedia.org/wiki/IBM_System/360_Model_67
Вот в этой модели как раз и была имплементирована виртуальная память в современном понимании как память бОльшего размера чем реальная, и с возможностью виртуальных машин по началу даже не понятой ИБМ.
Last edited by zVlad on 16 Oct 2014 00:27, edited 2 times in total.
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
Интересно было узнать про ленты на БЭСМ. Ленты на ЕС ЭВМ были принципиально последовательного доступа, собственно их физическая сущность представляла последовательный способ доступа. То, что Вы, StrangeR, рассказываете это форматирование с последующим обращением к нужным блокам по их номеру. Не совсем это прямой доступ, для прямого нужен индекс или ключ, которые где тогда должны бы храниться? Да и вообще это не прямой доступ потому что достать нужный блок можно только прочитав (пропустив) предыдущие блоки. Кроме надо еще отслеживать текущую позицию на ленте. Вообщем попытка получить то, что сама лента в себе не имеет. Ну да ладно, всё равно интересно.
Что касаемо обработки сбоев, коррекции ошибок то все это было, и программные на системном уровне и аппаратные - в устройстве управления лентами. То, что вы матерясь выбрасывали было в том числе оно - коррекция сбоев.
P. S. Вот нашел интересный источник по БЭСМ 6 и в том числе по их лентам:
http://www.ipmce.ru/about/history/remembrance/laut_6/
Что касаемо обработки сбоев, коррекции ошибок то все это было, и программные на системном уровне и аппаратные - в устройстве управления лентами. То, что вы матерясь выбрасывали было в том числе оно - коррекция сбоев.
P. S. Вот нашел интересный источник по БЭСМ 6 и в том числе по их лентам:
http://www.ipmce.ru/about/history/remembrance/laut_6/
В годы разработки БЭСМ-б магнитных дисков еще не было, поэтому большое значение придавалось надежности работы с магнитной лентой. Ю.В.Никишиным был разработан лентопротяжный механизм для ленты шириной 19,05 мм с вакуумными карманами, обеспечивающими малый выбег ленты при останове, что необходимо для старт-стопного режима. Раздельные головки для записи и считывания делали возможным контроль качества записи в процессе выполнения команды записи. Большое участие в этой работе, особенно на завершающем этапе — доводке конструкции, принимал М.В.Тяпкин.
Выпускавшаяся в то время магнитная пленка была неважного качества, множество дефектов магнитного покрытия приводило к большому количеству ошибок при считывании. Практически в каждой зоне (массив на ленте информационным объемом в одну страницу) возникало несколько ошибок. Помочь могло только введение избыточности в записываемую информацию. Наиболее просто это можно было бы осуществить дублированием зоны, то есть дважды записывать каждую зону, теряя, естественно, в емкости бобины. Алгоритм исправления ошибок заключался в наложении в оперативной памяти кодов, считанных из двух зон, при этом вместо байтов с неправильной четностью писались нули. В систему команд была введена операция «запись с наложением». Конечно, выбран был не лучший способ повышения надежности, но «заплаты» были и, по-видимому, будут во всех разработках.
-
- Уже с Приветом
- Posts: 38016
- Joined: 14 Dec 2006 20:13
- Location: USA
Re: Миф: как IBM победил БЭСМ
Блин, только сейчас прочел
И это было одной из причин, почему люди с Бэсм плевались при виде ЕС. (ХОтя люди с ЕС ровно так же имели право плеваться, узнав что на бэсм не было толком строковых операций, да и адресация была коротковатой, авторы безусловно сильно промахнулись, взяли бы они 64 бита - и жили бы долго и счастливо).
В общем, по организации памяти, работы с переферией, простоте и удобству виртуальной памяти и системы прерываний, кстати и индикации на пульте, БЭСМ была заметно впереди ИБМ (по крайней мере 360-й). По возможностям обработки текстовых данных, создания баз данных, и созданию нескоростной версии (там бы вылезли проблемы в необходимости быстро работать с прерываниями) компьюеера - позади. Но главная беда была нерыночность экономики, создав удачный компьютер, он не развивался, а следующий создавала другая команда. В итоге из Бэсмы так ничего и не вышло, а когда спохватились, начался уже полу-рынок и сделали таки Эльбрус-1КБ, было уже поздно (даже при наличии там Юникса, причем оцените - запихать полноценный Юникс на комьютер без побайтовой адресации надо еще было умудриться, как и сделать эмуляцию нормальных терминалов на ИБМовских).
Так это как раз на IBM-360 программы крутились в ОДНОМ адресном пространстве. А у Бэсм-6 у каждой программы было СВОЕ адресное пространство, 32К слов, начиная с адреса 0. В этом и суть виртуальной памяти - юзер спейсы - имеют полностью независимые адресная пространства. И этого очень долго не было у IBM. Хотя сегодня это аксиома любого CPU.Так это само собой когда в одном адресном пространстве выполняется несколько программ.
И это было одной из причин, почему люди с Бэсм плевались при виде ЕС. (ХОтя люди с ЕС ровно так же имели право плеваться, узнав что на бэсм не было толком строковых операций, да и адресация была коротковатой, авторы безусловно сильно промахнулись, взяли бы они 64 бита - и жили бы долго и счастливо).
Да нет, не прочитав а промотав. Промотка там была, помнится, весьма быстрой, и лента довольно быстро добегала до нужной информации. Причем у зон на ленте были заголовки и лента могла быстро промотаться а потом уточнить свою позицию. Ошибок да, помнится было много, но случаев потери информации на лентах - очень мало.Да и вообще это не прямой доступ потому что достать нужный блок можно только прочитав (пропустив) предыдущие блоки.
В общем, по организации памяти, работы с переферией, простоте и удобству виртуальной памяти и системы прерываний, кстати и индикации на пульте, БЭСМ была заметно впереди ИБМ (по крайней мере 360-й). По возможностям обработки текстовых данных, создания баз данных, и созданию нескоростной версии (там бы вылезли проблемы в необходимости быстро работать с прерываниями) компьюеера - позади. Но главная беда была нерыночность экономики, создав удачный компьютер, он не развивался, а следующий создавала другая команда. В итоге из Бэсмы так ничего и не вышло, а когда спохватились, начался уже полу-рынок и сделали таки Эльбрус-1КБ, было уже поздно (даже при наличии там Юникса, причем оцените - запихать полноценный Юникс на комьютер без побайтовой адресации надо еще было умудриться, как и сделать эмуляцию нормальных терминалов на ИБМовских).
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: Миф: как IBM победил БЭСМ
В PDP были свои адресные пространства, preemptive multitasking, а вот виртуальной памяти не было...StrangerR wrote:Все это в БЭСМах было, это же было в Ваксах и в PDP 11/70 /тут я не уверен но кажется там тоже оно было/, и насмерть отсутствовало в архитектуре IBM/360.
Кстати, ленты там тоже были примитивные, без прямого доступа
Справедливости ради, ленты с прямым доступом оказались тупиком. Кесарю кесарево, ленты для одного, диски для другого
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: Миф: как IBM победил БЭСМ
Вы оба правыzVlad wrote:Раз уж Вы говорите об ИБМ то почитайте вот про эту модель, 1967 года выпуска, на год раньше начала выпуска БЭСМ 6:StrangerR wrote:...А в организации виртуальной памяти ИБМ отставала тогда лет на 10 от других.
http://en.m.wikipedia.org/wiki/IBM_System/360_Model_67
Вот в этой модели как раз и была имплементирована виртуальная память в современном понимании как память бОльшего размера чем реальная, и с возможностью виртуальных машин по началу даже не понятой ИБМ.

Верно, это была первая и единственная машина 360, где это появилось
Можно сказать проба для того что сделали в 370
Но она появилась "announced in August 1965" - даже на три года раньше БЭСМ. То есть и тут БЭСМ уже отсавала
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: Миф: как IBM победил БЭСМ
Читая статьи на вики я вот что нашел
"The Scientific Instruction Set feature, if installed, provided access to four floating point registers that could be programmed for either 32-bit or 64-bit floating point operations."
то есть IBM была в общем то логической машиной с байтовой адресацией, где мог ставиться FPU.
Советские машины НАОБОРОТ, были в первую очередь СЧЕТНЫМИ машинами, где FPU мог изображать еще и целую арифметику, а со строками работать было ужасно
Откуда это пошло?
Ведь этот момент где подходы прямо противоположны
Кстати, PDP тоже работала с целыми, FPU либо реализовывался программно (Фортраном), либо, если FPU unit был не установлен то он эмулировался.
Снова подход от чистой логики
А машина Стрела - пажалуйста, команды для синусов и логарифмов (правда они вызывали переход на подпрограмму, а сама машина умела только + - * /)
"The Scientific Instruction Set feature, if installed, provided access to four floating point registers that could be programmed for either 32-bit or 64-bit floating point operations."
то есть IBM была в общем то логической машиной с байтовой адресацией, где мог ставиться FPU.
Советские машины НАОБОРОТ, были в первую очередь СЧЕТНЫМИ машинами, где FPU мог изображать еще и целую арифметику, а со строками работать было ужасно
Откуда это пошло?
Ведь этот момент где подходы прямо противоположны
Кстати, PDP тоже работала с целыми, FPU либо реализовывался программно (Фортраном), либо, если FPU unit был не установлен то он эмулировался.
Снова подход от чистой логики
А машина Стрела - пажалуйста, команды для синусов и логарифмов (правда они вызывали переход на подпрограмму, а сама машина умела только + - * /)
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
У IBM/360-67 было несколько конфигураций мощности и памяти, в том числи двухпроцессорные конфигурации. Это была не одна машина.Dmitry67 wrote:...
Верно, это была первая и единственная машина 360, где это появилось
...
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: Миф: как IBM победил БЭСМ
Это было несколько конфигураций одной машины 

Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 784
- Joined: 06 Jul 2001 09:01
- Location: SF, CA
Re: Миф: как IBM победил БЭСМ
Я вот задумался - а как были подключены у нас (ВЦ СО АН) магнитофоны для графопостроителей Benson?
Сделано это было в конце 70-х, т.е. до того, как было организовано подключений обычных ЕС-овских магнитофонов. Бенсоновские магнитофоны были маленькие, на полудюймовой ленте.
Сделано это было в конце 70-х, т.е. до того, как было организовано подключений обычных ЕС-овских магнитофонов. Бенсоновские магнитофоны были маленькие, на полудюймовой ленте.
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
Я почти бы готов был здаться вчера и согласиться с Вами по поводу виртуальной памяти, но что-то мне для этого все таки не хватало. Я пытался найти толковое описание принципов работы хотя бы одной ОЦ для БЭСМ 6, но не нашел. Вы тоже обясняете "по верхам" и Ваших обяснений явно не хватает. Мне также кажутся недостаточными обяснения тех авторов кто утверждает что на БЕ"СМ 6 виртуальной памяти не было. Но их обяснения для меня недостаточны, особенно в свете того что я услышал от Вас, в первую очередь о прерывании по отсутствию страницы и по их подкачке и вытеснении. Это все здорово, но, как известно в современных системах виртуальная память поддерживается совокупностью аппаратных и программных средств, причем программные - это службы ОС. Про такую службы в ОС для БЭСМ 6 я к сожалению ничего не знаю и не могу найти, и Вы ничего от этом внятно не проговаривали (вот лучше бы помогли разобраться умерив свои эмоции).StrangerR wrote:.... Главным признаком виртуальной памяти является наличие таблицы приписки виртуальной памяти на физическую, страничная организация памяти, прерывание по обращению в недоступную _сейчас_ страницу, механизмы page in и page out. Они были в Бэсм, они есть в современных ОС. Их не было в IMB/360. Программу нужно было грузить всю сразу и в последовательную память, приписки то нету... на бэсме в 128К слов памяти могло висеть задач с суммарной памятью в 2 - 3 раза больше, страницы были довольно стохастически размазаны по физической памяти, интерактивная программа если ничего не делала - вытеснялась, если не делала какая то функция - её страницу откачивали, когда понадобится подкачивали. Все это на довольно таки шустрых барабанах (позже на мини дисках) работало.
Тут ИБМ ловить нечего. Вот байтный доступ к памяти, отдельная работа с целыми числами - тут ИБМ кроет Бэсм. А в организации виртуальной памяти ИБМ отставала тогда лет на 10 от других.
Следующее Ваше утверждение тоже навевает смутные сомнения:
Память начиная с адреса 0 обычно нужна виртуальной машине чтобы в нее загрузилась система. В тоже время программы в виртуальных машинах (по крайней мере те что на МФ) могут обращаться за сервисом Hypervisor явно и неявно Hypervisor, например, предоставляет ВМ виртуальную память, процессор и другие ресурсы ЭВМ.StrangerR wrote:В Бэсм-6 же все процессы получали юзер аддресс спейс, начиная с адреса 0, и были насмерть изолированы друг от друга, как и в любом современном процессоре.
.
Что значит на БЭСМ 6 что процессы получают " юзер аддресс спейс, начиная с адреса 0"? Значит ли это что эти адрес спэс находятся под управлением Hypervisor, который и предоставляет юзер процессу ресурсы и другие системных функции (ввода-вывода, и т.п.)? Или это значит что юзерная программа подготавливается так что в нее включаются все системные погпрограммы и функции и что программа (с системой внутри, или наобород внутри системы) выполняется как одно целое и между такими процессарами действуют определенные договоренности (cooperative style)?
Мне кажется (я не могу найти ничего на инете про этом) что в БЭСМ 6 имело место быть что-то вроде второго (cooperative style) с системой добавленной в каждый юзер процесс выполняюшхейся как одно целое, плюс у операторов имелось средство вмешаться в этот кооператив и вывести его из нежаемого состояния.
Так что же там было на самом деле?
-
- Уже с Приветом
- Posts: 15420
- Joined: 30 Apr 2003 16:43
- Has thanked: 1 time
Re: Миф: как IBM победил БЭСМ
Я бы сказал одной архитектуры все таки, а не машины.Dmitry67 wrote:Это было несколько конфигураций одной машины
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: Миф: как IBM победил БЭСМ
Это в том случае, если мы имеем систему виртуальных машинzVlad wrote:Память начиная с адреса 0 обычно нужна виртуальной машине чтобы в нее загрузилась система. В тоже время программы в виртуальных машинах (по крайней мере те что на МФ) могут обращаться за сервисом Hypervisor явно и неявно Hypervisor, например, предоставляет ВМ виртуальную память, процессор и другие ресурсы ЭВМ.
Что значит на БЭСМ 6 что процессы получают " юзер аддресс спейс, начиная с адреса 0"?
В обычных системах (скажу по RSX-11M, которая работала на PDP-11), в пользовательском адресном пространстве с адреса 0 располагалась именно программа. Обычная пользовательская программа без какого либо намека на ОС. Адреса с 0 были обычной памятью (тогда как в физической памяти на младших адресах находились обработчики прерываний)
Как же осуществлялся ввод вывод в пользовательских процессах, так как они никак не видят устройства ввода вывода? в RSX-11M выполнялась команда EMT 377, которая вызывала прерывание. Данные подготавливались в стеке. ОС смотрела что от нее требовалось и делала это (или отвергала). То есть каждый процесс работал, как принято говорить сейчас, в своей "песочнице". Многопользовательскость была строго preemptive, а не cooperative (как на ранних Windows)
Но давайте заслушаем начальника транпортного цеха про БЭСМ. Просто в том что юзерское пространство начиналось с 0 я не вижу ничего странного, наоборот, это самое естественное
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014