IBM System/38

IBM System/38

IBM System/38
Разработчик IBM
Дата выпуска 1978
Выпускался по 1988
Производи­тельность IBM
ОС Control Program Facility
Габариты 1260x1775x750mm[1]
Предшественник IBM System/34
Наследник IBM AS/400
 Медиафайлы на Викискладе

System/38[2][3] — это снятый с производства миникомпьютер и компьютер среднего класса, входит в линейку IBM System/3X, производившийся и продававшийся компанией IBM. Система была анонсирована в 1978 [4]. System/38 обладала 48-битной адресацией, что было уникально для того времени, и новой интегрированной базой данных. Она была ориентирована на многопользовательскую среду. В то время типичная система обслуживала от дюжины до нескольких десятков терминалов. Хотя System/38 не смогла заменить системы, которые она должна была заменить, её архитектура послужила основой для гораздо более успешной IBM AS/400[5][6][7].

История

System/38 была представлена 24 октября 1978 года, а поставки начались в 1980 году. Разработанная под кодовым названием «Pacific», она стала доступна для коммерческого использования в августе 1979 года. Над системой работали несколько инженеров, в том числе Франк Солтис и Гленн Хенри, и она предлагала ряд инновационных функций. Архитектура имела много общего с дизайном неудачного проекта IBM Future Systems project, включая одноуровневую память, использование микрокода для реализации функциональности операционной системы и абстракцию машинного интерфейса[5][6]. Разработка велась в течение восьми лет в лаборатории IBM в Рочестере, Миннесота[8]. Президент подразделения General Systems Division (GSD) компании IBM заявил в то время: «System/38 — это крупнейшая программа, которую мы когда-либо запускали в GSD, и одна из трёх или четырёх крупнейших программ, когда-либо представленных в IBM»[9].

Система разрабатывалась как преемник System/3[9], однако она не была совместима с теми компьютерами. Предшественниками System/38 были System/3 (1969), System/32 (1975) и System/34 (1977). В 1983 году была выпущена System/36 как бюджетный бизнес-компьютер для пользователей, которым System/38 казалась слишком дорогой. В 1988 году System/38 сменило семейство мэйнфреймов IBM AS/400, которое изначально использовало архитектуру процессора, схожую с System/38, а затем перешло на процессоры на базе PowerPC в 1995 году[5].

Аппаратные характеристики

Общий вид
Два жёстких диска

Системный блок IBM 5381 включает процессор, основную память, дисковое хранилище, дисковод для дискет и системную консоль с клавиатурой и дисплеем. Блок 5381 был доступен для моделей 100 и 200.

Системный блок IBM 5382 физически идентичен 5381, но оснащён более мощным процессором, большим объёмом памяти и расширенным дисковым хранилищем. Блок 5382 был доступен для моделей 300, 400, 500, 600 и 700.

Обычно пользователи взаимодействовали с системой через терминалы серии IBM 5250. В 1984 году IBM добавила возможность подключения терминалов с графическим интерфейсом, которые ранее требовали использования мэйнфрейма[10].

Центральный процессор

Система включает центральный процессор с 512К, 768К, 1024К, 1280К или 1536К байт основной памяти. Процессор реализован на двадцати девяти микросхемах ИМС (на основе транзисторов Шоттки), установленных на печатной плате размером 10x15 дюймов[11]. Он включает блок управления памятью с поддержкой страничной организации по требованию, который используется системным программным обеспечением для реализации одноуровневой памяти.

Центральный процессор System/38 CPU имеет 48-битное адресное пространство, выбранную как компромисс между 64-битной адресацией, которую некоторые инженеры IBM хотели для обеспечения перспективности, и 32-битной адресацией, которую другие инженеры хотели для экономии средств[5].

Клавиатура и дисплей системной консоли

Консоль системы System/38 оснащена клавиатурой и экраном, отображающим 16 строк по 64 символа. Это отличается от локально подключённых терминалов 5250, которые в зависимости от модели имеют разрешение 12x40 или 24x80. Оператор системы может использовать клавиатуру для ввода команд языка управления.

Магазинный дисковод для дискет

Магазинный дисковод для дискет является стандартым для всех моделей.

Программное обеспечение

Машинный интерфейс

System/38 и её последующие версии используют архитектуру машинного интерфейса для отделения прикладного программного обеспечения и большей части операционной системы от аппаратных зависимостей, включая такие детали, как размер адреса и размер регистра.

Компиляторы System/38 и её преемников генерируют код на высокоуровневом наборе инструкций, известном как Машинный Интерфейс (MI, Machine Interface). MI — это виртуальный набор инструкций, работающих с объектами, а не с традиционными адресами памяти или регистрами[12].

В отличие от некоторых других архитектур виртуальных машин, где виртуальные инструкции интерпретируются во время выполнения (см. P-код), инструкции MI никогда не интерпретируются. Они представляют собой промежуточный этап компиляции и транслируются в набор инструкций процессора на финальном этапе компиляции. Инструкции MI хранятся в финальном объектном файле программы вместе с исполняемыми машинными инструкциями. Если программа переносится с процессора, имеющего один набор машинных инструкций, на процессор с другим набором, инструкции MI будут переведены заново в соответствии с нативным набором инструкций новой машины перед первым запуском программы на ней.

TIMI (Technology Independent Machine Interface, рус. Машинный интерфейс, независимый от технологии[13]) операционной системы OS/400 является обратно совместимым расширением MI системы System/38. В результате программа, изначально разработанная для System/38, может работать на современном оборудовании IBM i без необходимости повторной компиляции[5].

Микрокод

В архитектуре System/38 компания IBM относила весь код ниже уровня машинного интерфейса к микрокоду и считала его частью аппаратного обеспечения[11]. Термин «микрокод» использовался для обозначения широкого спектра низкоуровневого кода, начиная от традиционного микрокода и заканчивая функциями, обычно ассоциируемыми с ядрами других операционных систем, а также реализацией интегрированной базы данных[14]. В System/38 существовало два уровня микрокода:

  • Горизонтальное микропрограммное обеспечение (HMC, Horizontal Microcode) использовало архитектуру набора команд регистр-память/память-память[15], известную как внутреннее микропрограммное обеспечение (IMP, internal microprogramming)[15] или внутренний микропрограммный интерфейс (IMPI, Internal Microprogrammed Interface), с использованием нативного микрокода процессора System/38[16]. Некоторые низкоуровневые и критичные к производительности функции, такие как планирование задач (то есть процессов) и передача сообщений, были реализованы непосредственно в микрокоде как часть горизонтального микропрограммного обеспечения. Горизонтальное микропрограммное обеспечение располагалось в памяти микропрограмми соответствовало традиционному микрокоду.
  • Вертикальное микропрограммное обеспечение (VMC, Vertical Microcode) реализовывало машинный интерфейс в терминах архитектуры IMPI. Это достигалось путём трансляции кода MI в код IMPI и его выполнения. Оно также реализовывало интегрированную базу данных и другие компоненты операционной системы, которые не могли быть реализованы с помощью инструкций MI[17]. Это было реализовано с использованием комбинации ПЛ/1 и ассемблера IMPI[5]. Вертикальное микропрограммное обеспечение располагалось в основной памяти.

Термин «микрокод» появился в связи с антимонопольным делом против IBM в 1969 году. В результате этого дела IBM была вынуждена продавать программное обеспечение отдельно от аппаратного. Чтобы обойти это требование, IBM отнесла низкоуровневый код системы System/38 к аппаратной части. Таким образом, MI стал считаться нативным набором инструкций для System/38, что давало IBM свободу изменять IMPI и микрокод по мере развития аппаратного обеспечения[5]. Ранние системы AS/400 унаследовали структуру микрокода System/38, но сам термин «микрокод» был упразднён. Вместо него IBM переименовала соответствующие уровни в Вертикальный лицензированный внутренний код и Горизонтальный лицензированный внутренний код.

Control Program Facility

Операционная система компьютера System/38 называется Control Program Facility (CPF, рус. Средства Программного Управления). CPF не имеет отношения к операционной системе System Support Program (рус. Программа Системной Поддержки) для компьютеров IBM System/34 и System/36. Объектами CPF являются файлы, программы, очереди сообщений, профили пользователей и библиотеки. Хотя CPF считается операционной системой System/38, она работает поверх слоя System/38 Machine Interface, и, как следствие, значительная часть традиционной функциональности операционной системы платформы реализована в горизонтальном и вертикальном микрокоде[5].

System/38 также отличается тем, что стала первым коммерчески доступным IBM компьютером среднего класса, в операционную систему которого была интегрирована система управления базами данных (СУБД).

Язык управления System/38 называется CL (от Control Language, рус. Язык Управления). CL программы, похожие по концепции на сценарии командной строки, могли быть откомпилированы и выполнены в «родном режиме».

System/38 была спроектирована с учётом встроенной безопасности как части её архитектуры. Доступ к каждому объекту или библиотеке может контролироваться индивидуально для каждого пользователя. Эта функция была сохранена и расширена в компьютерных линейках AS/400 и iSeries.

Система-преемник

System/38 была заменена моделью AS/400, которая также обеспечивала совместимость с данными и программным обеспечением System/36[18]. Программы S/38 с сохраненной «наблюдаемостью» (то есть с исходным кодом, встроенным в скомпилированный исполняемый файл, что увеличивало его размер) могут по-прежнему работать на AS/400 и последующих системах, поскольку опция восстановления включает перекомпиляцию для исходного кода предыдущей версии. Однако большинство проприетарных библиотек объектов от поставщиков были скомпилированы без такой «наблюдаемости» и требуют замены от оригинального поставщика, что влечёт за собой дополнительные расходы при переходе на AS/400. Ценообразование в то время было многоуровневым: одно и то же программное обеспечение стоило по-разному в зависимости от модели, скорости и ёмкости устанавливаемой системы.

Продажи

Согласно публикациям в отраслевых журналах NEWS 34/38 и Midrange Computing за первые пять лет IBM продала примерно 20000 систем System/38. Хотя S/38 позиционировалась как миникомпьютер, система была существенно дороже, чем популярная IBM System/34 и её преемница System/36. Не менее важной проблемой была сложность перехода с System/34 на S/38. IBM косвенно признала это, выпустив System/36 (усовершенствованную версию системы System/34) после запуска S/38. Хотя System/38 не продавалась в бльших количествах, она обеспечивала более высокую норму прибыли по сравнению с другими среднечастотными системами IBM, что делало её прибыльной продуктовой линейкой для компании[6].

На рынке IBM оказалась с тремя пересекающимися, но несовместимыми линейками продуктов: System/34, System/38 и архитектурой мейнфреймов System/370. Digital Equipment Corporation, в то время один из главных конкурентов IBM, смогла этим воспользоваться, предложив широкий ассортимент продуктов на базе единой архитектуры — архитектуры VAX[19]. Ответ IBM на это, модель 9370, оказалась коммерчески неудачной, и в то время, как писала The New York Times, продажи System/36 и System/38 «отставали»[20].

Примечания

  1. IBM System/38, 1983.
  2. David E. Sanger (17 июня 1986). I.B.M. Strengthens Office Line. The New York Times.
  3. Andrew Pollack (21 октября 1982). I.B.M. Cuts Computer Prices. The New York Times.
  4. IBM Archives: 1970s, year 1978. IBM (23 января 2003). Архивировано из оригинала 17 января 2005 года.
  5. 1 2 3 4 5 6 7 8 Soltis, 1997.
  6. 1 2 3 Schleicher, David L. (24 января 2006). An Interview with DAVID L. SCHLEICHER (PDF). conservancy.umn.edu (Interview). Интервьюер: Arthur L. Norberg. Charles Babbage Institute. Дата обращения: 5 марта 2021.
  7. Henry, Glenn (7 августа 2001). An Interview with An Interview with GLENN HENRY (PDF). conservancy.umn.edu (Interview). Интервьюер: Philip L. Frana. Charles Babbage Institute. Дата обращения: 21 марта 2021.
  8. IBM Rochester @ 50.
  9. 1 2 IBM System/38. IBM Archives (23 января 2003).
  10. Changes at I.B.M. The New York Times. 20 июня 1984.
  11. 1 2 IBM System/38, 1980.
  12. Levy, 1984.
  13. Солтис, Франк Г. Технологии System i. Лекция №4: Машинный интерфейс, независимый от технологии. INTUIT.ru Интернет-Университет Информационных Технологий. — Курс лекций создан при финансовой поддержке компании IBM. Автор: Франк Джеральд Солтис,.
  14. Soltis, 1981, с. 77–93.
  15. 1 2 IBM System/38 Internal Microprogramming Instructions, Formats, and Functions Reference Manual. IBM (август 1985).
  16. David McKenzie. Notes for storage research. Архивировано из оригинала 8 октября 1999 года.
  17. IBM System/38 Vertical Microcode Logic Overviews and Component Descriptions Manual. IBM (сентябрь 1985).
  18. Enck, Ryan, 1998.
  19. Bauer, Collar, Tang, 1992.
  20. A Broad Decentralization at I.B.M. The New York Times. 29 января 1988.

Литература

  • Frank G. Soltis. Inside the AS/400, Second Edition. — Duke Press, 1997. — ISBN 978-1882419661.
  • IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — ISBN G580-0237-1.
  • Levy, Henry M. The IBM System/38 // Capability-Based Computer Systems. — Digital Press, 1984. — ISBN 0-932376-22-3.
  • Soltis, Frank (Сентябрь 1981). Design of a Small Business Data Processing System. IEEE Computer. 14. doi:10.1109/C-M.1981.220610. S2CID 398484.</ref>
  • John Enck, Michael Ryan. Navigating the AS/400: A Hands-On Guide. — Prentice Hall PTR, 1998. — ISBN 978-0-1386-2558-0.
  • Roy A. Bauer, Emilio Collar, Victor Tang. The Silverlake Project: Transformation at IBM. — Oxford University Press, 1992. — ISBN 9780195067545.

Литература для дальнейшего чтения

  • Henry M. Levy. The IBM System/38 // Capability-Based Computer Systems. — Digital Press, 1984. — ISBN 0-932376-22-3.
  • Frank G. Soltis, R.L. Hoffman. Design Considerations for the IBM System/38 // Compcon. — IEEE, 1979. — С. 132–37.
  • IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — ISBN 0-933186-03-7.
    • G.G. Henry. Introduction to IBM System/38 Architecture // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 3–6. — ISBN 0-933186-03-7.
    • N.C. Berglund. Processor Development in the LSI Environment // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 7–10. — ISBN 0-933186-03-7.
    • H.W. Curtis. Integrated circuit design, production, and packaging for System/38 // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 11–15. — ISBN 0-933186-03-7.
    • M.N. Donofrio, B. Flur, R.T. Schnadt. Memory design/technology for System/38 // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 16–18.
    • R.L. Hoffman, F.G. Soltis. Hardware organization of the System/38 // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 19–21. — ISBN 0-933186-03-7.
    • M.E. Houdek, G.R. Mitchell. Translating a large virtual address // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 22–24. — ISBN 0-933186-03-7.
    • D.O. Lewis, J.W. Reed, T.S. Robinson. System/38 I/O structure // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 25–27. — ISBN 0-933186-03-7.
    • E.F. Dumstorff. Application of a microprocessor for I/O control // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 28–31. — ISBN 0-933186-03-7.
    • F.X. Roellinger Jr, D.J. Horn. Microprocessor-based communications subsystem // IBM System/38 Technical Developments. — IBM Product Design and Development, General Systems Division, 1980. — С. 32–35. — ISBN 0-933186-03-7.
  • Viktors Berstis. Security and protection of data in the IBM System/38 // 7th Annual symposium on Computer Architecture. — La Baule, US: ACM, 1980. — С. 245–52. — doi:10.1145/800053.801932.
  • W. David Sincoskie, David ‘Dave’ J. Farber. SODS/OS: Distributed Operating System for the IBM Series/1 // Operating Systems Review. — 1980. — Июль (т. 14, вып. 3). — С. 46–54. — doi:10.1145/850697.850704.
  • Merle E. Houdek, Frank G. Soltis, Roy L. Hoffman. 8th annual symposium on Computer Architecture. — Minneapolis, MN, US: IEEE Computer Society Press, 1981. — С. 341–48.
  • Frank G. Soltis. Design of a Small Business Data Processing System // Computer. — 1981. — Сентябрь (т. 14, вып. 9). — С. 77–93. — ISSN 0018-9162. — doi:10.1109/c-m.1981.220610.
  • Nguen Hoan Phuc, M. Becker, P. Sevray. Performance Comparison Between B*-Tree and Prefix Binary Tree Index Organizations // 2nd Int'l Conference on Databases / (ed) S.M. Dean, P. Hammersley. — Churchill College, Cambridge: Wiley Heyden, 1983.
  • M. Newman. The Architecture of the IBM System/38 // IBM Small and Medium Systems. — Oxford: Pergamon, 1986. — (Infotech State of the Art Report).

Ссылки