Миф: как IBM победил БЭСМ

User avatar
Vladimir1440
Уже с Приветом
Posts: 2085
Joined: 14 Sep 2013 13:07

Re: Миф: как IBM победил БЭСМ

Post by Vladimir1440 »

StrangerR wrote:И так было почти во всем. Вспомните, кстати, какую сетку очень долго толкала ИБМ, пока она наконец не подохла (токен ринг, однако!)
Да там как раз просто. У IBM есть знаменитая болезнь: "не думать о будущем" (работать на "рынок дня сегодняшнего"). Ну как например когда-то они PC-шный рынок "прозевали", выпустив вперед из какогото гаража какойто Эппл (нашли себе конкурента тогда - это ж еще додуматься надо: несопоставимые же были "весовые категории" этиx фирм).

Токен Ринг - то же самое. Он работал на 16мбпс когда Езернет работал на 10мбпс. И бакбоне Езернетовское тогда было либо коакс-кабель, либо xабы (не "свичи"). В результате тогдашний Езернет имел проблемму т.н. "коллижн": все машины слышали всеx на нетворк-сегменте, т.е. полезный траффик был достижим где-то в процентов 40 наверное от капасити езернет-канала в реальной жизни (т.е. 4мбпс). А Tокен Ринг - честно молотил вчетверо быстрее, и никакиx коллижн: просто по арxитектуре сети они исключены же.

Но Езернет изначально делался с потенциалом дальнейшего апгрейда: 100мбпс, 1000мбпс, 10Гпс уже же есть. И с коллижнами справляется нынешний навороченный бакбоне, деля общую сеть на VLAN-ы. Токен Ринг же - потенциала для роста не имел: он банально ограничен "длинной проводов" (сотни метров кабелей по которым идет весь траффик сегмента). A Езернет мог иметь там где "быстрые" карты (серверa в стойкаx) - короткую проводку, а юзерам - помедленнее, но длинную. И, во вторыx, каждая нетворк-карта токенринг-сегмента - учавствует во всём траффике сегмента (т.е. появись карты побыстрее - надо апгрейдать на ниx все без исключения машины, а не только серверa, например).
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:.....
Если бы копировали IBM/370 да еще и VM/370, да был бы проще ввод вывод и нормальные терминалы - может компьютеру сноса бы не было. НО копировали именно IBM/360 и именно OS/360 (в конце да, я даже поработал на копии IBM/370 и на оной VM/370, но это было уже на закате СССР).
...
Начали работу над ОКР "Ряд" в 1966-ом, приняли окончательно решение что "ряд" будет на основе архитектуры IBM S/360 в конце 1969-го. Первая отечественная S/360 появилась в 1971-м году, a S/370 была аннонсирована в 1972 году. Немножно не реально было то что Вы говорите, согласитесь?

Я начал работать с VM/370 (СВМ по нашей системе названий) в 1984 году, т.е. за долго до заката СССР. А к закату и после него мы вовсю работали с VM/SP.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

Vladimir1440 wrote:
StrangerR wrote:И так было почти во всем. Вспомните, кстати, какую сетку очень долго толкала ИБМ, пока она наконец не подохла (токен ринг, однако!)
Да там как раз просто. У IBM есть знаменитая болезнь: "не думать о будущем" (работать на "рынок дня сегодняшнего"). Ну как например когда-то они PC-шный рынок "прозевали", выпустив вперед из какогото гаража какойто Эппл (нашли себе конкурента тогда - это ж еще додуматься надо: несопоставимые же были "весовые категории" этиx фирм).

Токен Ринг - то же самое. Он работал на 16мбпс когда Езернет работал на 10мбпс. И бакбоне Езернетовское тогда было либо коакс-кабель, либо xабы (не "свичи"). В результате тогдашний Езернет имел проблемму т.н. "коллижн": все машины слышали всеx на нетворк-сегменте, т.е. полезный траффик был достижим где-то в процентов 40 наверное от капасити езернет-канала в реальной жизни (т.е. 4мбпс). А Tокен Ринг - честно молотил вчетверо быстрее, и никакиx коллижн: просто по арxитектуре сети они исключены же.

Но Езернет изначально делался с потенциалом дальнейшего апгрейда: 100мбпс, 1000мбпс, 10Гпс уже же есть. И с коллижнами справляется нынешний навороченный бакбоне, деля общую сеть на VLAN-ы. Токен Ринг же - потенциала для роста не имел: он банально ограничен "длинной проводов" (сотни метров кабелей по которым идет весь траффик сегмента). A Езернет мог иметь там где "быстрые" карты (серверa в стойкаx) - короткую проводку, а юзерам - помедленнее, но длинную. И, во вторыx, каждая нетворк-карта токенринг-сегмента - учавствует во всём траффике сегмента (т.е. появись карты побыстрее - надо апгрейдать на ниx все без исключения машины, а не только серверa, например).

Token-Ring-ом сети IBM не ограничивались. Так что про не думать о будущем Вы немножко пролетели. Сеть ИБМ была очень даже для будущего и многие ее идеи фактичаски воплощены в современных сетях. А вообще это с легкой руки StrangeR мы перекинулись на сети, хотя на самом деле речь шла о сетке (такой термин у Пржиялковского использован) значений разрядности (или величин слова) 8-16-32-64 идущей от стандарта восьмибитового байта принятого впервые в IBM S/360 и применяемого до сих пор.
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

zVlad wrote:
StrangerR wrote:.....
Если бы копировали IBM/370 да еще и VM/370, да был бы проще ввод вывод и нормальные терминалы - может компьютеру сноса бы не было. НО копировали именно IBM/360 и именно OS/360 (в конце да, я даже поработал на копии IBM/370 и на оной VM/370, но это было уже на закате СССР).
...
Начали работу над ОКР "Ряд" в 1966-ом, приняли окончательно решение что "ряд" будет на основе архитектуры IBM S/360 в конце 1969-го. Первая отечественная S/360 появилась в 1971-м году, a S/370 была аннонсирована в 1972 году. Немножно не реально было то что Вы говорите, согласитесь?

Я начал работать с VM/370 (СВМ по нашей системе названий) в 1984 году, т.е. за долго до заката СССР. А к закату и после него мы вовсю работали с VM/SP.
Ну так про то и речь. Что когда принимали решение про РЯД, ИБМ была абсолютно дерьмовой платформой. И именно её и скопировали, убив тем самым свой собственный вычтех.

И уж не знаю что там впервые придумала ИБМ для байта, но перфолента на БЭСМ-6 была вполне себе 8-битная. Как впрочем и на МИР-1. И откуда взялась байка, что там байт задумывался 6 битным, никому из работавших с бэсмами неизвестно. (Вот про Бэсм-4 не помню, я на ней очень немного работал и в режиме студента - чайника).
Last edited by StrangerR on 14 Oct 2014 23:15, edited 1 time in total.
helg
Уже с Приветом
Posts: 4827
Joined: 15 May 2001 09:01

Re: Миф: как IBM победил БЭСМ

Post by helg »

zVlad wrote: Token-Ring-ом сети IBM не ограничивались. Так что про не думать о будущем Вы немножко пролетели. Сеть ИБМ была очень даже для будущего и многие ее идеи фактичаски воплощены в современных сетях. А вообще это с легкой руки StrangeR мы перекинулись на сети, хотя на самом деле речь шла о сетке (такой термин у Пржиялковского использован) значений разрядности (или величин слова) 8-16-32-64 идущей от стандарта восьмибитового байта принятого впервые в IBM S/360 и применяемого до сих пор.
А, IBM придумала двоичную систему. Это они молодцы, конечно.

Ещё они придумали сегмент-смещение в 8086. Не поняли, что это тупик, - и перевели это лоскутное одеяло в "защищённый режим" по имени 80286. За сколько лет до этого был БЭСМ6 с непрерывной виртуальной адресацией, какая появилась только в 386?
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

Ну да, вот интересно, если бы мы работали в троичной системе (помните Сетунь?) , что бы ИБМ писала сегодня?

Кошмар адресации в ИБМ-360 я вспоминаю иногда до сих пор. Вообще она уже тогда напоминала лоскутное одеяло.
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

zVlad wrote:
StrangerR wrote:..... Чего стоит один только бред про байты - ну какая связь 48 битового слово (которое срисовали похоже с CDC) и размера байта - 48 на 8 делится вполне сносно... ....
Делиться то делится вот только байт у БЭСМ 6 был шестибитовый. Т.е. 48 битовое слово представляло 8 байтов со всеми вытекающими последствиями о которых Вы судя по всему не знали.
Да в жизни у бэсм-6 не было 6 битового байта. Вы хоть на регистры то посмотрите ввода вывода, где там 6 битов?

Да, а то что в стране не было работающей ИБМ-360 - это вообще из области анекдота. Тем паче в странах СЭВ.
User avatar
Vladimir1440
Уже с Приветом
Posts: 2085
Joined: 14 Sep 2013 13:07

Re: Миф: как IBM победил БЭСМ

Post by Vladimir1440 »

zVlad wrote:Token-Ring-ом сети IBM не ограничивались. Так что про не думать о будущем Вы немножко пролетели. Сеть ИБМ была очень даже для будущего и многие ее идеи фактичаски воплощены в современных сетях.
Не спора для, но не согласен. Токен Ринг просто при мне умирал своей смертью: я еще застал его на PC-шныx сетяx (у заказчиков, у которыx чего-то IBM-ское "уже было до PC-шек": они его ставили, чтобы существующими кабелями воспользоваться).

Чисто "IBM-овский" подxод (концептуально): пусть будет дорого, громоздко, и нестандартно - зато быстро и надежно.

В Езернет сети - вы можете иметь Wi-Fi например. Или какой-нибудь оптоволоконный экстендер. Или вайрлесс Т1. В нее вы можете сунуть чего угодно: принтер от неведомого производителя (не от IBM), какой-нибудь китайский сканер с Eзернет-портом, IP телефонный аппарат, xоть "рекламное панно с тач-скрином в фойе билдинга" (список компаний в здании и номера комнат на этажаx: где они), xоть вообще какую дешевую релей-боард или пауэр-стрип с Езернет-портом (чтобы чего ребутать ремоутли).

На токен-ринге это - принципиально невозможно: отправить куда-то по радио с Wi-Fi-аксесс-пойнта токен и ждать ответа (и пока токен не вернется - весь сегмент стоит, либо - сегмент генерирует новый токен а тут ответ придёт по радио через помеxи, со старым токеном).

И, второе: весь траффик сегмента - идёт через все машины сегмента. Такое возможно (просто из секьюрити соображений), только если все машины - внутри некоегого помещения куда посторонним xода нет. Ну немыслимо же пропускать траффик буxгалтерии через рекламное панно на вxоде: невозможно просто проконтролировать, не залезет ли туда кто с траффик-аналайзером каким, а залезши - не увидит ли он чего лишнего. С Езернетом как раз - можно: буxгалтерия - на отдельном (от всеx остальныx) VLAN-е, т.е. даже если кто и залезет - нифига не услышит.

Да и вообще: почему каждый несчастный IP телефон на столаx фирмы и каждая вайрлесс-аксесс-пойнт - должна учавствовать в работе всей внутрифирменной сети (пропуская через себя все токены)? Неправильно это.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:Ну да, вот интересно, если бы мы работали в троичной системе (помните Сетунь?) , что бы ИБМ писала сегодня?

Кошмар адресации в ИБМ-360 я вспоминаю иногда до сих пор. Вообще она уже тогда напоминала лоскутное одеяло.
Интересно, Вы хоть раз сможете проиллюстрировать свои кошмары и эмоции, которых уж слишком много для технического разделе форума, хотя бы одним примером.
Мне уже порядком надоели Ваши истерики по поводу IBM S/360.
User avatar
tengiz
Уже с Приветом
Posts: 4468
Joined: 21 Sep 2000 09:01
Location: Sammamish, WA

Re: Миф: как IBM победил БЭСМ

Post by tengiz »

zVlad wrote:Интересно, Вы хоть раз сможете проиллюстрировать свои кошмары и эмоции, которых уж слишком много для технического разделе форума, хотя бы одним примером.
Мне уже порядком надоели Ваши истерики по поводу IBM S/360.
Так как даже на нашей делянке очень многое оказывается делом вкуса, я бы не стал вкладывать глубокий смысл в неприятие того или иного технического решения по причинам нетехнического характера. У нас у всех разное понимание простоты/красоты против сложности/кошмара и пр. Если по фактам нет разногласий (а красиво/некрасиво - это не факт, это - оценка), то и ладно. Вклад ИБМ в индустрию переоценить сложно, от фундаментальной физики твердого тела до сложных протоколов блокирования на распределенных дисков, игры в шахматы и Jeopardy. Красиво или кошмарно - это уже вторично и субъективно
Cheers
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

Dmitry67 wrote:Где это одноадресный? Все бэсм имели трехадресный, начиная с предка бэсм, машины "стрела"

Что касается истории развития, то предком бэсм 6 является бэсм 4. До нее, игнорируя редкие 3 и переходные модели идут ламповые м220, а до нее м20. Наконец, самой ранней является Стрела, интересная тем что имела память на лучевых трубках. Но.структура команд у нее такая же
Истории ради, Бэсм-4 и М-220 одна и та же машина разных заводов, я на М-220 работал немного. М-20 вероятно ламповая, а Бэсм-4 и М-220 транзисторные. Системы команд ничего общего с Бэсм-6 не имели.

Отвечая Владу - IBM/360 не имела вообще нормальной виртуальной памяти, программы получали смещение и видели реальный адрес физической памяти, защита друг от друга была примитивнейшей, про уродливый ввод вывод я уже писал, ленты были без прямого доступа и исправления ошибок, выполнение нескольких программ одновременно работало с большим скрипом. И только /370 стали на что то уже похожи. В Бэсм-6 же все процессы получали юзер аддресс спейс, начиная с адреса 0, и были насмерть изолированы друг от друга, как и в любом современном процессоре.

В шахматы играла еще CDC в Дубне - операторы сидели за пультом с двумя круглыми дисплеями, если для них не было работы - играли в шахматы с компьютером, если появлялась работа для операторов - на место шахмат высвечивалось задание, они его выполняли, и шахматы возвращались обратно.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:
Dmitry67 wrote:Где это одноадресный? Все бэсм имели трехадресный, начиная с предка бэсм, машины "стрела"

Что касается истории развития, то предком бэсм 6 является бэсм 4. До нее, игнорируя редкие 3 и переходные модели идут ламповые м220, а до нее м20. Наконец, самой ранней является Стрела, интересная тем что имела память на лучевых трубках. Но.структура команд у нее такая же
Истории ради, Бэсм-4 и М-220 одна и та же машина разных заводов, я на М-220 работал немного. М-20 вероятно ламповая, а Бэсм-4 и М-220 транзисторные. Системы команд ничего общего с Бэсм-6 не имели.

Отвечая Владу - IBM/360 не имела вообще нормальной виртуальной памяти, программы получали смещение и видели реальный адрес физической памяти, защита друг от друга была примитивнейшей, про уродливый ввод вывод я уже писал, ленты были без прямого доступа и исправления ошибок, выполнение нескольких программ одновременно работало с большим скрипом. И только /370 стали на что то уже похожи. В Бэсм-6 же все процессы получали юзер аддресс спейс, начиная с адреса 0, и были насмерть изолированы друг от друга, как и в любом современном процессоре.

В шахматы играла еще CDC в Дубне - операторы сидели за пультом с двумя круглыми дисплеями, если для них не было работы - играли в шахматы с компьютером, если появлялась работа для операторов - на место шахмат высвечивалось задание, они его выполняли, и шахматы возвращались обратно.
Снова эмоции и ругательства. Интересно Вам нормальный технический язык ведом?
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:В Бэсм-6 же все процессы получали юзер аддресс спейс, начиная с адреса 0, и были насмерть изолированы друг от друга, как и в любом современном процессоре.
.
Поясните публике чем память некоторого размера выделенная "начиная с адреса 0" лучше чем памяти того же размера но выделенная с не нулевого адреса.
Изолированная насмерть это как?
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Re: Миф: как IBM победил БЭСМ

Post by Dmitry67 »

http://en.m.wikipedia.org/wiki/IBM_System/360

Virtual memory was not available in most IBM mainframes until the System/370 series.
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote: Отвечая Владу - IBM/360 не имела вообще нормальной виртуальной памяти, программы получали смещение и видели реальный адрес физической памяти, защита друг от друга была примитивнейшей,
Тоже самое было и в БЭСМ 6 - первые 5 разрядов адреса указывали на страницу, а остальные 10 были смещением в странице. Это и была вся виртуальность в БЭСМ 6, виртуальная адресация в нормальном техническом языке.
А еще, когда реальная память стала больше чем могли адресовать 15-ти битовые адреса БЭСМ 6 были придуманы подтяжки в виде регистра(ов) "привязки".
Виртуальная память в современном понимании это нечто довольно далекое от того что в БЭСМ 6 называлось "виртуальная память". Один автор' ссылку на которого давал Tengiz на первой страницы, это назвал "виртуальная память наизнанку".

Защита памяти в IBM/360 исключала доступ программ разных пользователей другу к другу. Это было необходимо и достаточно для многопользовательской системы.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

Dmitry67 wrote:http://en.m.wikipedia.org/wiki/IBM_System/360

Virtual memory was not available in most IBM mainframes until the System/370 series.
В том смысле который имелся в виду она была также недоступна и на БЭСМ 6. Учите матчасть, Дима .
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

zVlad wrote:
StrangerR wrote:В Бэсм-6 же все процессы получали юзер аддресс спейс, начиная с адреса 0, и были насмерть изолированы друг от друга, как и в любом современном процессоре.
.
Поясните публике чем память некоторого размера выделенная "начиная с адреса 0" лучше чем памяти того же размера но выделенная с не нулевого адреса.
Изолированная насмерть это как?
Тем что при каждом запуске программы она разная. Программу нужно делать реентрабельной. Это гемморой. Но главное, это признак того, что виртуальной памяти в ОС нету (да и не могло её быть, сама архитектура IBM/360 её не имела, виртуальная память началась с IBM/370).

Убожище и есть убожище. И это не мое личное мнение, это мнение всех, кто видел ЕС ЭВМ (а это и была IBM/360) имея уже опыт бэсм-6. Что то сравнимое с Бэсмом стало появляться с появлением клонов IBM/370, не раньше. А терминалы нормальные вообще никогда так и не появились. Тот уродец что там был - он был дико сложным, дорогим и крайне негибким для использования (хорош был только для работы с формами, собственно на оную он и был заточен).

Да, а вот тут форум по Бэсм-6, кому интересно, могут много всего там найти.

https://groups.google.com/forum/#!forum/besm6

Есть эмулятор, есть куча софта который туда перенесли уже. Есть даже мини вариант на микро компьютере, кажется.
В том смысле который имелся в виду она была также недоступна и на БЭСМ 6. Учите матчасть, Дима .
В том смысле который имелся она была доступна на БЭСМ-6. Программы реально получали меньше страниц памяти, чем было логической адресации.

А сравним просто метод запуска программы? Бэсм-6, операционка делала следующее
- выделяем логическую память
- выделяем страничку под стек, грузим данные в стек
- закрываем на чтение в таблице приписки остальную память.
- запускаемся. Программа естественно тут же лезет в закрытую страницу. Грузим её с барабана, диска или ленты (не забываем, ленты там - устройства с прямым доступом), продолжаем
- следующая - аналогично
- в принципе ОС могла заранее загрузить часть страниц но не обязательно. Страницы в физической памяти оказывались размещенными произвольным образом (операторы на самом деле по миганию таблиц приписки на табло слева могли неплохо угадать, сколько разных программ сейчас обсчитывается).
- весь ввод вывод аналогично - учитывал таблицу приписки страниц.

Все это - типичная виртуальная память. Которой абсолютно не было у IBM до появления IBM/370.
первые 5 разрядов адреса указывали на страницу,
Вот именно. Страница указывалась в таблице приписки, регистры высвечивались на пульте слева. Страницу можно быол закрыть на доступ, разрешить только чтение, разрешить и чтение и запись. При сбросе на барабан страница классически могла закрываться на запись - были понятия dirty pages и все прочее. Все это азы, аксиомы работы с виртуальной памятью, учите мат часть. Главный признак оный - меппинг логичкеской памяти на физическую по страницам с возможностью получать прерывание от обращения в закрытую страницу, возможности учитывать обновлялись ли данные, наличием подкачки и откачки (то что называется paging в современных ОС). Все это в БЭСМах было, это же было в Ваксах и в PDP 11/70 /тут я не уверен но кажется там тоже оно было/, и насмерть отсутствовало в архитектуре IBM/360.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:
В том смысле который имелся она была доступна на БЭСМ-6. Программы реально получали меньше страниц памяти, чем было логической адресации.

А сравним просто метод запуска программы? Бэсм-6, операционка делала следующее
- выделяем логическую память
- выделяем страничку под стек, грузим данные в стек
- закрываем на чтение в таблице приписки остальную память.
- запускаемся. Программа естественно тут же лезет в закрытую страницу. Грузим её с барабана, диска или ленты (не забываем, ленты там - устройства с прямым доступом), продолжаем
- следующая - аналогично
- в принципе ОС могла заранее загрузить часть страниц но не обязательно. Страницы в физической памяти оказывались размещенными произвольным образом (операторы на самом деле по миганию таблиц приписки на табло слева могли неплохо угадать, сколько разных программ сейчас обсчитывается).
- весь ввод вывод аналогично - учитывал таблицу приписки страниц.

Все это - типичная виртуальная память. Которой абсолютно не было у IBM до появления IBM/370.
Вы имеет в виду что каждая программа на БЭСМ 6 получала меньше памяти чем могло быть адресованно 15 Битовым адресом? Так это само собой когда в одном адресном пространстве выполняется несколько программ. В IBM/360 каждый раздел был меньше чем размер физической памяти, а последняя была меньше чем позволял адресовать 24 битный адрес т.е. 16 МВ( хотя может ИБМ и успела выпустить модель S/360 с 16 МВ физической памяти).

Такого описания виртуальной памяти что привели Вы мне никогда не встречалось и должен Вас огорчить в IBM S/370 обладала виртуальной памятью в ином смысле.

Я так понял, может я не прав, что готовые к выполнению программы на БЭСМ 6 хранились в виде образов страниц на внешних устройствах.

А что значит "ленты - устройства с прямым доступом"?
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote: Вот именно. Страница указывалась в таблице приписки, регистры высвечивались на пульте слева. Страницу можно быол закрыть на доступ, разрешить только чтение, разрешить и чтение и запись. При сбросе на барабан страница классически могла закрываться на запись - были понятия dirty pages и все прочее. Все это азы, аксиомы работы с виртуальной памятью, учите мат часть. Главный признак оный - меппинг логичкеской памяти на физическую по страницам с возможностью получать прерывание от обращения в закрытую страницу, возможности учитывать обновлялись ли данные, наличием подкачки и откачки (то что называется paging в современных ОС). Все это в БЭСМах было, это же было в Ваксах и в PDP 11/70 /тут я не уверен но кажется там тоже оно было/, и насмерть отсутствовало в архитектуре IBM/360.
Не так уж и насмерть отсутствовало. Защита памяти в IBM/360 использовала ключ защиты памяти - это 4 бита в неком заголовке каждой страницы (4096 байт). Каждому разделу (региону) система назначала свой ненулевой ключ (нулевой использовался ядром системы). Таким образом одновременно могла выполняться не более 15 "программ". Биты ключа защиты также представленны в так называемом слове состояния программы. Аппаратно при обращении к памяти биты ключа памяти и биты в слове состояния сравнивались и если не совпадали прога завершалась аварийно.

То, что пишите о виртуальной памяти в БЭСМ 6 напоминает мне механизм используемый ядром VM/370, который выполнялся на моделях S/370, но в режиме S/360. Виртуальная память ядра (и только ядра) VM/370 работала аналогичным образом.
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

Она получала логически всю память что хотела. Но физически памятьт меппилась по страницам и только те страницы которые реально нужны. Ненужные откачивались или никогда не подкачивались. Это и есть классическое определение виртуальной памяти. Не знаю что там было на IBM/370 но там тоже появилась насколько я помню приписка логичкеской памяти на физическую. Так же работают и сегодняшние процессоры.

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

Лента имела прямой доступ. Я мог считать или записать блок номер XXX, причем это не мешало читать или писать блок XXX+1. Лента размечалась и получала номер. В ОС Диапак была иерархия сторейджа, программы писали на барабан система дальше редко используемые данные переписывала на диски и на ленту (а в начале эпохи когда дисков еще не было - сразу на ленту). При этом каждый блок на ленту писался дважды, и каждый байт (там не помню, то ли побайтно данные писались то ли 12 битными слогами) имел контрольную сумму. Сам блок тоже имел контрольную сумму. При чтении
- читаем первый блок. Если КС не совпадает. Читаем второй блок. Если все еще не совпадает.
- крутим назад на начало первой копии. Обнуляем страницу памяти (блок на ленте == блоку на диске == блок на барабане == страница памяти == то самое что вы заметили в адресации == то самое что приписывается таблицей приписки на физическую страницу). Читаем блок в особом режиме - если в слоге ошибка четности пропускаем (не пишем в память). Читаем второй блок в таком же режиме (если в слоге ошибка то пропускаем слог). Подсчитываем КС.

В итоге если на ленте в блоках ошибка в разных слогах то блок считается правильно.

Мы потом стали ставить ленты от ЕС ЭВМ, и как же все матерились от их убогой организации данных. Ни тебе прямого доступа, ни возможности записать блок данных не испортив данные за ним, ни копии блоков данных (при ошибке чтения - сливай воду).
Не так уж и насмерть отсутствовало. Защита памяти в IBM/360 использовала ключ защиты памяти
Да нет, отсутствовала. Главным признаком виртуальной памяти является наличие таблицы приписки виртуальной памяти на физическую, страничная организация памяти, прерывание по обращению в недоступную _сейчас_ страницу, механизмы page in и page out. Они были в Бэсм, они есть в современных ОС. Их не было в IMB/360. Программу нужно было грузить всю сразу и в последовательную память, приписки то нету... на бэсме в 128К слов памяти могло висеть задач с суммарной памятью в 2 - 3 раза больше, страницы были довольно стохастически размазаны по физической памяти, интерактивная программа если ничего не делала - вытеснялась, если не делала какая то функция - её страницу откачивали, когда понадобится подкачивали. Все это на довольно таки шустрых барабанах (позже на мини дисках) работало.

Тут ИБМ ловить нечего. Вот байтный доступ к памяти, отдельная работа с целыми числами - тут ИБМ кроет Бэсм. А в организации виртуальной памяти ИБМ отставала тогда лет на 10 от других.
Last edited by StrangerR on 15 Oct 2014 22:33, edited 1 time in total.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:

https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Миф: как IBM победил БЭСМ

Post by StrangerR »

zVlad wrote:Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:

https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
Ну так в конце кучу всего поподключали. Из за копирования ИБМ другой переферии попросту не было. При этом подключавшие матерились как грузчики, продираясь через ненужные ИБМ овские навороты и не находя привычных и нужных фич (вроде поблоковой организации лент). Но АЦПУ так и подключили, выкинув нафиг весь канал и напрямую управляя молоточками (и ничего, нормально печатало).
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:
zVlad wrote:Забавная ветка, обсуждается использование ЕС дисков на БЭСМ 6:

https://groups.google.com/forum/m/#!top ... kbo7PAhhAg
Ну так в конце кучу всего поподключали. Из за копирования ИБМ другой переферии попросту не было. При этом подключавшие матерились как грузчики, продираясь через ненужные ИБМ овские навороты и не находя привычных и нужных фич (вроде поблоковой организации лент). Но АЦПУ так и подключили, выкинув нафиг весь канал и напрямую управляя молоточками (и ничего, нормально печатало).


Ненужные для БЭСМ 6 Вам бы следовало сказать для бОльшей корректности. Канал кстати не в устройствах находился, так что из устройств вы канал выбрасывать не могли - не было его там. Более того, между устройством и каналом имелось устройство управления (в случае печати интегрированное, а в случае лент и дисков отдельное устройство). Так что устройства сами по себе были достаточно "голенькие" что ли.
Материться - это и вовсе не метод решения проблем в технике. Это на стройке только помогает.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

StrangerR wrote:...А в организации виртуальной памяти ИБМ отставала тогда лет на 10 от других.
Раз уж Вы говорите об ИБМ то почитайте вот про эту модель, 1967 года выпуска, на год раньше начала выпуска БЭСМ 6:

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.
zVlad
Уже с Приветом
Posts: 15311
Joined: 30 Apr 2003 16:43

Re: Миф: как IBM победил БЭСМ

Post by zVlad »

Интересно было узнать про ленты на БЭСМ. Ленты на ЕС ЭВМ были принципиально последовательного доступа, собственно их физическая сущность представляла последовательный способ доступа. То, что Вы, StrangeR, рассказываете это форматирование с последующим обращением к нужным блокам по их номеру. Не совсем это прямой доступ, для прямого нужен индекс или ключ, которые где тогда должны бы храниться? Да и вообще это не прямой доступ потому что достать нужный блок можно только прочитав (пропустив) предыдущие блоки. Кроме надо еще отслеживать текущую позицию на ленте. Вообщем попытка получить то, что сама лента в себе не имеет. Ну да ладно, всё равно интересно.
Что касаемо обработки сбоев, коррекции ошибок то все это было, и программные на системном уровне и аппаратные - в устройстве управления лентами. То, что вы матерясь выбрасывали было в том числе оно - коррекция сбоев.

P. S. Вот нашел интересный источник по БЭСМ 6 и в том числе по их лентам:
http://www.ipmce.ru/about/history/remembrance/laut_6/
В годы разработки БЭСМ-б магнитных дисков еще не было, поэтому большое значение придавалось надежности работы с магнитной лентой. Ю.В.Никишиным был разработан лентопротяжный механизм для ленты шириной 19,05 мм с вакуумными карманами, обеспечивающими малый выбег ленты при останове, что необходимо для старт-стопного режима. Раздельные головки для записи и считывания делали возможным контроль качества записи в процессе выполнения команды записи. Большое участие в этой работе, особенно на завершающем этапе — доводке конструкции, принимал М.В.Тяпкин.

Выпускавшаяся в то время магнитная пленка была неважного качества, множество дефектов магнитного покрытия приводило к большому количеству ошибок при считывании. Практически в каждой зоне (массив на ленте информационным объемом в одну страницу) возникало несколько ошибок. Помочь могло только введение избыточности в записываемую информацию. Наиболее просто это можно было бы осуществить дублированием зоны, то есть дважды записывать каждую зону, теряя, естественно, в емкости бобины. Алгоритм исправления ошибок заключался в наложении в оперативной памяти кодов, считанных из двух зон, при этом вместо байтов с неправильной четностью писались нули. В систему команд была введена операция «запись с наложением». Конечно, выбран был не лучший способ повышения надежности, но «заплаты» были и, по-видимому, будут во всех разработках.

Return to “Вопросы и новости IT”