This article needs additional citations for verification. (October 2017) |
Разработчик | ИБМ |
---|---|
Рабочее состояние | Прекращено |
Первоначальный выпуск | 1977 (1977) |
Платформы | Миникомпьютер System/34 и System/36 |
Пользовательский интерфейс по умолчанию | Интерфейс командной строки |
Лицензия | Запатентованный |
Предшествовал | Программа управления системой System/32 (SCP) |
Преемник | ОС/400 |
System Support Program ( SSP ) была операционной системой мини-компьютеров IBM System/34 и System/36 . SSP была командной операционной системой, выпущенной в 1977 году. [ 1]
This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. (June 2022) |
SSP изначально содержал около 60 команд , которые были реализованы на System/34 с 1977 по 1983 год в различных версиях, называемых релизами. Выпуск 1 был выпущен с оригинальным S/34 в 1977 году. Выпуск 9 был выпущен в 1981 году. В 1983 году IBM переупаковала SSP на новый компьютер под названием IBM System/36 , который не был совместим по объектному коду с S/34. В 1994 году IBM переупаковала SSP на обновленную модель S/36 под названием Advanced/36 . A/36 был IBM AS/400 , в котором SSP был реализован как « виртуальная машина ».
Основные выпуски SSP включают в себя:
Ограничения операционных систем S/36, A/36 и M/36: максимальный объем дискового пространства, который могла использовать система, составлял 4 ГБ (на одно появление операционной системы, поэтому машина с двумя «разделами» M36 могла иметь по 4 ГБ в каждом. Другим ограничением был размер программы, который не мог превышать 64 КБ. Если у вас была программа большего размера, вам приходилось проявлять креативность в более поздние годы, когда появился call/parm, поскольку вы перемещали код в вызываемую программу, поскольку, например, если базовая программа была размером 63 КБ, вы могли легко вызвать вызываемую программу размером 20 КБ. На машине также не могло быть более 8000+ файлов. Также существовали ограничения на количество файлов, которые можно было вставить в программу (опять же, можно было обойти это ограничение, помещая файлы в вызываемые программы и передавая результат обратно). Максимальное количество записей, которые вы могли изначально загрузить, составляло около 8 миллионов, а максимальный размер файла — около 16 миллионов. Ни одно из этих ограничений не существует в S36EE (в программе есть несколько максимальных количеств файлов, но они гораздо больше, чем в родном SSP).
Используя SSP, оператор может создавать, удалять и управлять объектами S/34-36, такими как библиотеки, файлы данных , меню , процедуры , исходные элементы и файлы безопасности.
SSP содержит такие модули , как DFU, SEU, SDA и WSU, которые позволяют операторам создавать библиотеки и файлы, вводить информацию в эти файлы, создавать простые отчеты и поддерживать структуру меню, которая упрощает доступ к информации. Advanced/36 не поддерживает WSU. Пароль и безопасность ресурсов также реализованы через SSP, как и удаленная связь, которая сегодня похожа на коммутируемое сетевое соединение .
SSP — это дисковая операционная система . Компьютерные программы могут запускаться с жесткого диска, но не с дискеты или ленты. Дополнением к System/34 5340 или System/36 5360/5362 является массив жестких дисков из одного-четырех жестких дисков, как минимум один компьютерный терминал и дисковод 8" , опционально оснащенный двумя магазинами, которые могут содержать 10 дискет каждый, и тремя слотами для дискет. AS/36 5363/5364 имеет дисковод 5-1/4". Компьютеры S/36 могут быть оснащены катушечным ленточным накопителем 8809 (800/1600 бит/дюйм) или ленточным накопителем с картриджем 6157 1/4 дюйма (QIC). Компьютеры A/36 оснащены высокоплотным накопителем QIC, но дисковод для 5,25-дюймовых или 8-дюймовых гибких дисков (одиночный) был опциональным, как и 9-дорожечный (катушечный) ленточный накопитель 9348-001 со скоростью записи 1600/6250 бит/дюйм.
Процедуры SSP используют служебные программы, которые в некоторых случаях могут быть более полезны для программиста, чем сами процедуры SSP. $MAINT — это библиотечная утилита, используемая в ALOCLIBR, BLDLIBR, FROMLIBR, LIBRLIBR, REMOVE, CONDENSE, LISTLIBR и TOLIBR . $COPY — это файловая утилита, используемая в SAVE, RESTORE, COPYDATA и LISTDATA . Существует множество других утилит, включая $FBLD , $LABEL , $DUPRD , $INIT , $DELET , $HIST , $CNFIG , #GSORT , $PACK и $PROF , которые более гибки на программном уровне, чем связанные процедуры SSP.
Для настройки системы, включая устройства, использовалась процедура CNFIGSSP . Каждому устройству назначается двухсимвольный идентификатор. Первая буква должна быть буквенной, вторая — буквенно-цифровой. Система также зарезервировала определенные идентификаторы; устройство не может называться, например, I1 или F1. I1 — это имя дисковода; F1 — это то, как система называет жесткий диск (означает «фиксированный диск», поскольку это не съемный дисковый блок).
Для применения CNFIGSSP система должна быть выделенной (никаких других пользователей, вошедших в систему, или запущенных программ). Система должна быть IP Led (перезагружена). После завершения IPL новые устройства появятся на дисплее состояния.
SDA позволяет оператору создавать экранные форматы или меню. Командные клавиши могут быть включены/отключены. Поля ввода, поля вывода и константы могут быть созданы и обусловлены. Условия (в RPG они называются индикаторами ) могут привести к исчезновению полей или изменению цвета.
SEU — текстовый редактор , позволяющий вводить данные построчно. Специальные формы используются для помощи оператору в наборе программ RPG или других типов языков на основе форм (WSU, Sort, SDA и т. д.)
SORT имеет от одного до восьми входных файлов, которые могут иметь любую допустимую длину записи. Он имеет один выходной файл любой указанной длины, который может содержать от нуля до 8 миллионов записей.
Сортировка может содержать целые записи или только 3-байтовые адреса, которые указывают на записи в связанном файле. Это называлось адресным файлом или ADDROUT . При использовании маршрута Add программа считывала эти 3-байтовые адреса, а затем извлекала связанные записи из главного файла.
Это был язык, похожий на RPG, работавший на SSP. Он был ориентирован на программы типа ввода данных. WSU был бесплатным, но не был особенно хорошо принят, поскольку был очень ограничен.
Это бесплатный продукт, поставляемый IBM, который используется для просмотра и изменения значений полей в отдельных записях.
DFU можно использовать
Программы на языке высокого уровня требуют активации OCL . OCL используется для загрузки программ в системную память и их запуска (процесс, называемый выполнением) и назначения ресурсов, таких как файлы на диске, принтеры, члены сообщений, память и дисковое пространство, этим программам. Другие возможности, такие как отображение текста на экране, приостановка сообщений и т. д., делают OCL более мощным.
RPG II была модифицирована из System/3 days, чтобы разрешить доступ к "файлу WORKSTN", чтобы язык на основе перфокарт мог взаимодействовать с человеком, сидящим за клавиатурой и монитором. Файл WORKSTN был выходным файлом (он писал на монитор), а также входным файлом (потому что он принимал ввод с клавиатуры пользователя). Таким образом, он был помечен как комбинированный первичный файл или комбинированный файл по требованию.
Командные клавиши стали индикаторами RPG KA-KY, а различные экранные формы распознавались различными невидимыми управляющими символами, скрытыми в самих формах. Поскольку пользователю приходилось отображать форму на экране, чтобы печатать, RPG II предоставила программе способ записывать вывод перед принятием ввода. Многие успешные программисты перешли от использования объединенного первичного файла WORKSTN к использованию объединенного файла по требованию, который имел коды операций для чтения и записи дисплея. Был даже способ кодирования для нескольких WORKSTN; несколько человек могли войти в одну и ту же копию одной и той же программы в памяти. Самый большой размер программы составлял 64 КБ.
MRT = программа Multiple Requestor Terminal. SSP могла одновременно подключать до 7 терминалов к программе. Любой оператор мог запустить программу на своем терминале, затем терминалы других операторов подключались, когда они выбирали ту же программу. Максимальное количество обслуживаемых терминалов контролировалось программистом.
SRT = Программа терминала с одним запросчиком. Не MRT.
NRT = No Requestor Terminal program. Запущенная на терминале, NRT освобождает запрашивающий терминал и продолжает работу. Это похоже на программу MS-DOS TSR (Terminate and Stay Resident). По определению, любая программа, которая была вызвана или отправлена в JOBQ, была NRT.
NEP = Never Ending Program (Никогда не заканчивающаяся программа). Обычно это была интерактивная программа MRT, которая ждала после отключения всех терминалов, пока какой-либо терминал не подключится снова, избегая накладных расходов на инициализацию. Это обычно использовалось для реализации больших программ в виде цепочки небольших программ, которые передавали бы терминалы от одного к другому, оставаясь готовыми продолжить обработку для других терминалов и/или последующих транзакций. Программы NRT также могли быть NEP, если были написаны для зацикливания и ожидания некоторого условия, указывающего на необходимость выполнения работы. Программы NEP обычно не завершались до выключения системы, если только не были написаны для распознавания некоторого особого условия завершения.
Cobol, Fortran и RPG генерировали объектный код (тип O). Basic был только интерпретируемым; утилита компиляции BASICS создавала код подпрограммы (тип R). Программы Basic могли быть сохранены как исходные для совместимости с другими компьютерами, но текст проекта сохранялся в подпрограмме (если только программист не использовал параметр LOCK, чтобы сохранить его приватным.)
Процедуры, которые используют OCL для запуска программ и назначения им ресурсов, относятся к типу P.
Исходные элементы для всех объектов имеют тип S, за исключением Basic, как указано выше.
Программы DFU генерировали код подпрограммы (R). То же самое делали и программы WSU.
Форматы экрана генерируют объектный код.
Меню сгенерировали объектный код. Меню — это просто очень специфический формат экрана с сопутствующим элементом сообщения, дополненным двумя знаками решетки («##»), чтобы содержать действие, которое должно быть выполнено при выборе соответствующего номера.
В системе SSP существует четыре типа безопасности :
Безопасность бейджа реализована с помощью устройства считывания полосок , подключенного к терминалу серии 5250. Чтобы войти в систему, пользователь не только вводил информацию о пользователе/пароле, но и проводил бейджем через считыватель.
Для работы с идентификаторами пользователей и паролями использовалась процедура SECEDIT. Профиль пользователя содержит 1-8-символьный буквенно-цифровой идентификатор пользователя, 4-символьный буквенно-цифровой пароль, код для рейтинга безопасности пользователя — M (главный офицер безопасности), S (офицер безопасности), O (системный оператор), C (оператор субконсоли) или D (оператор дисплейной станции) — и ряд других настроек по умолчанию.
Процедура SECEDIT RESOURCE использовалась для установления рейтингов безопасности для объектов файлов, библиотек, папок и групп. Уровни доступа O (владелец), C (изменение), U (обновление), R (чтение), E (выполнение) или N (нет) могли быть предоставлены пользователю для определенного ресурса. Групповой объект был своего рода холдинговой компанией, которая владела одним или несколькими объектами более низкого уровня. Например, предоставление доступа группе ACCOUNTG упрощало установление доступа ко всем файлам учета. Групповые объекты также могли ссылаться на групповые файлы; группа UB ссылалась на UB.OLD, UB.NEW, UB.01 или любое имя файла со встроенной точкой.
SECEDIT USERID также использовался для ограничения операционных полномочий пользователя определенным меню. Вводя Y для обязательного меню и указывая меню входа по умолчанию, сотрудник службы безопасности мог запретить пользователю доступ к любой программе, не найденной в этом меню входа. Пользователь, ограниченный таким образом, мог только запускать опции меню, отправлять сообщения и выходить из системы.
Для работы с идентификаторами пользователей и паролями использовалась процедура PROF («Профиль»). Профиль пользователя содержит буквенно-цифровой идентификатор пользователя длиной от 1 до 8 символов, буквенно-цифровой пароль длиной 4 символа, код для рейтинга безопасности пользователя — M (главный сотрудник по безопасности), S (сотрудник по безопасности), O (системный оператор), C (оператор подчиненной консоли) или D (оператор дисплейной станции) — и ряд других настроек по умолчанию.
Процедура PRSRCID («Profile Resource Security by User ID») использовалась для установления рейтингов безопасности для объектов файлов и библиотек. Уровни доступа O (владелец), G (изменение), R (чтение), E (выполнение) или N (нет) могли быть предоставлены пользователю для определенного ресурса.
В печатном каталоге на диске (VTOC, Volume Table of Contents) все защищенные объекты были отмечены цифрой 3 как защищенные.
SSP предоставляет два различных объекта данных, называемых файлами и библиотеками. Файлы содержат записи, почти всегда с фиксированной длиной записи. Библиотеки содержат программы, которые могут ссылаться на эти файлы и получать к ним доступ. SSP содержал более 80 различных команд, которые позволяли операторам создавать, удалять, копировать, редактировать/изменять и защищать файлы и библиотеки.
Библиотека или файл должны существовать в непрерывной организации на одном фиксированном диске (однако библиотека может содержать один «экстент» из примерно 50 блоков, которые должны быть реорганизованы, и он не может быть расширен, если выделен другим пользователям). Файл может быть организован со значением EXTEND или может быть выделен с FILE OCL для автоматического расширения. Все добавления/обновления/удаления записей ожидают, пока файл расширяется. Разумно создавать достаточно большие значения расширения, чтобы минимизировать частоту расширений. Библиотеки могут иметь «экстенты», которые не являются непрерывными. Иногда при компиляции программы создается экстент, и при выполнении «CONDENSE» он удаляется, если для него достаточно места в основном распределении. В противном случае выполняется ALOCLIBR, чтобы перераспределить библиотеку до большего размера.
Файлы на S/36 могут быть последовательными (S), прямыми (D) или индексированными (I). Индексированный файл может иметь несколько альтернативных индексов (X), и фактически последовательный файл может иметь альтернативные индексы, размещенные на нем, так что нет первичного индекса. Индексированный файл содержит ключ, который должен быть непрерывным и может иметь длину до 60 символов; однако альтернативные индексы могут иметь трехкомпонентные ключи, которые не являются непрерывными друг с другом. Дублирующие ключи в индексированных или альтернативных индексных файлах могут быть разрешены или запрещены. Файл с прямой организацией создается со всеми добавленными записями и не может автоматически расширяться. Файл с последовательной или индексированной организацией создается без добавления записей. Альтернативный индекс всегда имеет столько же записей, сколько и его родительский файл, в отличие от логического файла в стиле System/38, который создается с условиями для фильтрации записей из родительского файла.
В 1986 году в SSP была добавлена поддержка Distributed Data Management Architecture (DDM). Это позволило программам System/36 создавать, управлять и получать доступ к файлам, ориентированным на записи, на удаленных системах System/36, System/38 и мэйнфреймах IBM, работающих под управлением CICS . Это также позволило программам на удаленных компьютерах System/36 и System/38 создавать, получать доступ и управлять файлами на System/36. Первоначальные модели файлов, ориентированных на записи, определенные DDM, были основаны на файловой системе System/36.
System /3 (1969) работала на дисковой пакетной операционной системе под названием System Control Program (SCP) (5702-SC1). Позже IBM представила онлайн-программу для System/3 под названием Communications Control Program (CCP), которая была запущена как пакетная программа. IBM System/32 (1975) работала на дисковой операционной системе, также называемой System Control Program. IBM System/38 (1978) работала на операционной системе под названием Control Program Facility (CPF), которая была намного более продвинутой, чем SSP, и не особенно похожей на нее.