IBM System/360 Model 67

IBM System/360 Model 67 (S/360-67) — важливий варіант мейнфрейму IBM System/360, що першим у даній серії містив апаратні засоби для полегшення реалізації систем з розподілом часу, такі як модуль керування пам'яттю («DAT box», від англ. dynamic address translation) для підтримки віртуальної пам'яті і 32-бітної адресації.[1] У всьому іншому модель S/360-67 була сумісною з іншими машинами серії 360.

IBM System/360 Model 67
IBM System/360 Model 67-2 (duplex) у Мічиганському університеті, приблизно 1969 рік
Виробник International Business Machines Corporation (IBM)
Сімейство System/360

Історія

Метою створення S/360-67 було задовольнити потреби ключових замовників систем розподілу часу, таких як MIT (де IBM зазнала тотального фіаско при спробі участі як постачальних апаратури у проекті MAC), Мічиганський університет, General Motors, Bell Labs, Принстонський університет і Технологічний університет Карнегі (що став пізніше Університетом Карнегі-Меллон).[2]

В середині 1960-х все більшої популярності набувала ідея інтерактивних комп'ютерних сервісів, і як наслідок, багато організацій почали виявляти інтерес у системах розподілу часу, де реалізація таких сервісів стала б можливою.[3] Комп'ютери тих часів, як правило, мали обмежені можливості керування пам'яттю, слабко пристосовані для роботи багатокористувацьких і багатозадачних систем. Поява лінії System/360 у 1964 році не відзначилася наявністю таких засобів (власне, архітектура системи проектувалася під пакетну обробку завдань), а всередині самої IBM важливість систем з розподілом часу усвідомлювалася досить слабко.

Перед анонсом моделі 67 IBM такою оголосила про майбутні моделі 64 and 66, що мали бути відповідниками моделей 60 і 62 відповідно, але обладнані DAT-пристроєм. Втім, майже одразу модель 67 замінила 64 і 66, одночасно з заміною анонсованих 60 and 62 на модель 65.[4]

Анонс

Анонс моделі 67 IBM відбувся 16 серпня 1965 року у формі «синього листа» (стандартний механізм, використовуваний IBM для оголошення про доступність нових продуктів). У анонсі, зокрема, зазначалося:[5]:17

  • «З машин System/360 моделі 67 знято спеціальні обмеження на продаж» (іншими словами, машина доступна для придбання)
  • Наявність як опції «мультипроцесорної конфігурації з високим степенем доступності системи», з кількістю процесорів до чотирьох (втім, ця цифра була лише анонсом — насправді будувалися лише комп'ютери з максимум двома процесорами)[1]
  • Підтримка «власної потужної операційної системи … — системного монітора для розподілу часу» (англ. Time Sharing System monitor, TSS), що може надавати «практично миттєвий доступ і відгук комп'ютера» і завдяки якому можна скористатися «унікальними можливостями мультипроцесорної системи»
  • Реалізація «динамічного переміщення прикладних програм завдяки наявності у процесорі 2067 засобів динамічної трансляції адрес пам'яті, що дозволяє швидкий доступ (в межах секунд) для багатьох користувачів одночасно»

Віртуальна пам'ять

Радикальною зміною, доданою до архітектури System/360, у моделі 67 став так званий DAT-блок (англ. Dynamic Address Translation box) — апаратне розширення, за допомогою якого реалізувалася віртуальна пам'ять. Архітектура DAT базувалася на публікації 1966-го року у Journal of the ACM[6], і містила як сегментацію, так і таблиці сторінок. Реалізація віртуальної пам'яті у моделі 67 стала основою для пізнішої лінійки машин IBM System/370.

Адресний простір у моделі 67 міг бути як 24-розрядним (сумісним з іншими моделями), так і 32-розрядним.[1] Віртуальний адресний простір поділявся на сторінки розміром 4096 байт, які групувалися у «сегменти» розміром 1 мегабайт. Відображення сторінок на фізичну пам'ять здійснювалося динамічно. Наявність у атрибутах сторінок бітів «reference» і «change» дозволила реалізувати підкачування на вимогу: звернення до сторінки, яка не відображена на реальну пам'ять, викликає обробник виняткової ситуації «сторінка відсутня» (частина супервізора операційної системи), який може завантажити вміст сторінки з зовнішнього пристрою, «вивантаживши» туди яку-небудь-іншу сторінку, не потрібну у даний момент.

Система віртуальної пам'яті S/360-67 дозволила досягти наступних важливих цілей:

  • Збільшений простір адрес пам'яті, з динамічним відображенням на сторінки фізичної пам'яті. Механізм «підкачування» на вимогу завантажував сторінки з пристрою зберігання даних (диск або магнітний барабан), і це відбувалося без участі прикладних програм.
  • Ізоляція компонентів ОС. Це дозволило вивільнити додатковий простір адрес, що раніше належав супервізору ОС, для потреб прикладних програм, і унеможливити руйнування ділянок пам'яті ОС з програм користувачів.
  • Множинні адресні простори, які потенційно дозволяли імплементувати для кожного користувача віртуальну машину, хоча повна апаратна віртуалізація не була ціллю створення моделі 67.

Конфігурації

Для System/360 Model 67 було запропоновано три базових конфігурації машини:

  • Симплексна — один процесор IBM 2067-1, від двох до чотирьох блоків феритової пам'яті IBM 2365-2 (загальний об'єм від 0,5 до 1 мегабайта), до семи каналів, інша периферія. Назва цієї системи була IBM System/360 Model 67-1.
  • Напівдуплексна — один процесор IBM 2067-2, від двох до чотирьох блоків пам'яті IBM 2365-12 (0,5 … 1 мегабайт загалом), один блок конфігурації IBM 2167, один або два канальних контролера IBM 2846, до 14 каналів, інша периферія.
  • Дуплексна —два процесори IBM 2067-2, від чотирьох до шести блоків пам'яті IBM 2365-12 (об'єм від 768 кілобайт до 2 мегабайт), блок конфігурації IBM 2167, один або два канальних контролера IBM 2846, до 14 каналів, інша периферія.

На замовлення користувача напівдуплексну систему було можна модернізувати без демонтажу комп'ютера: додавався ще один процесор IBM 2067-2 і третій блок пам'яті 2365-12. Напівдуплексні і дуплексні конфігурації називалися IBM System/360 Model 67-2.

Вплив

Модель 67 суттєво вплинула на подальший розвиток комп'ютерів. Після невдачі з TSS/360, IBM з подивом спостерігала за розквітом інших операційних систем з розподілом часу на платформі S/360-67, таких як CP/CMS, MTS і MUSIC/SP). Комп'ютер було встановлено у відносно великій кількості комерційних, академічних і муніципальних установ, які, користуючись прохолодним ставленням IBM до ОС з розподілом часу, створювали такі системи самостійно — не в останню чергу завдяки спільній роботі і спільному доступу до інформації, ресурсів і сирцевих кодів.

Унікальні особливості S/360-67 не знайшли свого продовження у перших системах лінії System/370 (модель 370/145 мала так звану асоціативну пам'ять, що за дизайном більш підходила для підкачування сторінок).[7] Такі рішення були наслідком довгих (і видимих ззовні) «політичних битв» всередині самої IBM, що ніяк не могла дійти внутрішньої згоди про важливість систем розподілу часу, у порівнянні з традиційними пакетними системами. Принаймні на початку підтримка розподілу часу програвала.

Втім, попит на системи з розподілом часу і віртуальною пам'яттю невпинно зростав. Зрештою, IBM не змогла далі ігнорувати велику кількість інсталяцій S/360-67 з системним програмовим забезпеченням сторонніх виробників (наприклад, National CSS[8] [9] або Interactive Data Corporation (IDC)[5]:24), що швидко розвивали комерційний успіх.

У 1972 році IBM додала підтримку віртуальної пам'яті до машин серії System/370 — крок, що розглядався багатьма[ким?] як продовження ідей проекту S/360-67. Розвиток операційної системи VM також великою мірою завдячує платформі S/360-67.

У 2010 році IBM у описі свого найновішого мейнфрейму z196 зазначила, що підтримка віртуалізації почалася з машини System/360 Model 67.[10]

Джерела

  1. IBM System/360 Model 67 Functional Characteristics (англ.) (вид. Third Edition). IBM publication GA27-2719-2. February 1972. Архів оригіналу за 14 березня 2012. Процитовано 23 листопада 2018.
  2. Tom Van Vleck (1995, 1997, 2005, 2009). The IBM 360/67 and CP/CMS (англ.).
  3. Susan Topol (13 травня 1996). A History of MTS — 30 Years of Computing Service. Information Technology Digest (University of Michigan) 5 (5).
  4. DIGITAL COMPUTER NEWSLETTER: IBM System/360 time-sharing computers. Office of Naval Research, Mathematical Sciences Division. July 1965. с. 5—6.
  5. Melinda Varian (1997). VM and the VM community, past present, and future. SHARE 89 Sessions 9059-9061 (англ.).
  6. Bruce W. Arden; Bernard A. Galler; T. C. O'Brien; Franklin H. Westervelt (January 1966). Program and Addressing Structure in a Time-Sharing Environment. Journal of the ACM (англ.) 13 (1): 1–16. doi:10.1145/321312.321313.
  7. IBM. IBM Maintenance Library 3145 Processing Unit Theory - Maintenance. SY24-3581-2.:CPU 117–129
  8. Harold Feinleib (березень 2005). A technical history of National CSS (англ.). Computer History Museum.
  9. Dick Orenstein (січень 2005). From the very beginning… from my vantage point ― early history of National CSS (англ.). Computer History Museum.
  10. SG24-7832-00: IBM zEnterprise System Technical Introduction (англ.). с. 57. «Starting in 1967, IBM has continuously provided software virtualization in its mainframe servers.»
  11. Pugh, E.W.; Johnson, L.R.; Palmer, John H. IBM's 360 and early 370 systems (англ.). Cambridge, MA and London: MIT Press. ISBN 0-262-16123-0.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.