108 Глава3
TCB, используемый в z/OS, со структурой данных PCB (process control block; блок
управления процессом) в UNIX.
TCB создаются в ответ на макрос ATTACH. Выдавая макрос ATTACH, пользователь-
ская программа или системная подпрограмма начинает выполнение программы,
указанной в макросе ATTACH, в качестве подзадачи задачи, выдавшей ATTACH. Как
подзадача данная программа может соревноваться за процессорное время и исполь-
зовать некоторые ресурсы, уже выделенные для задачи, выдавшей ATTACH.
Задача управления регионом (region control task, RCT), отвечающая за подготовку
адресного пространства к загрузке и выгрузке, является задачей наивысшего приори-
тета в адресном пространстве. Все задачи в адресном пространстве являются подза-
дачами RCT.
Что такое SRB?
SRB – управляющий блок, представляющий подпрограмму, выполняющую опреде-
ленную функцию или службу в заданном адресном пространстве. Обычно SRB созда-
ется, когда выполняется одно адресное пространство и возникает событие, воздейс-
твующее на другое адресное пространство.
Подпрограмма, выполняющая функцию или службу, называется SRB-подпрограм-
мой (SRB routine); инициация процесса называется планированием SRB (scheduling an
SRB); SRB-подпрограмма выполняется в операционном режиме, называемом режи-
мом SRB (SRB mode).
SRB подобен TCB в том, что он определяет единицу работы в системе. В отличие
от TCB SRB не может «владеть» областями памяти. SRB-подпрограммы могут получать,
обращаться, использовать и освобождать области памяти, но этими областями дол-
жен владеть TCB. В многопроцессорной среде SRB-подпрограмма после планирова-
ния может быть передана на другой процессор и выполняться одновременно с про-
граммой, ее запланировавшей. Программа, запланировавшая SRB, может продолжать
выполнять обработку других задач параллельно с подпрограммой SRB. Как говори-
лось выше, SRB представляет средство асинхронной связи между адресными про-
странствами для программ, выполняющихся в z/OS.
SRB могут создавать только программы, работающие в режиме более высокой ав-
торизации, называемом супервизорным режимом (supervisor state). Такие авторизо-
ванные программы получают память и инициализируют управляющий блок с такими
элементами, как идентификатор целевого адресного пространства и указатели на
код, обрабатывающий запрос. Программа, создающая SRB, затем выдает макрос
SCHEDULE и указывает, имеет ли SRB глобальный (в масштабе системы) или локаль-
ный (в масштабе адресного пространства) приоритет. Система помещает SRB в нуж-
ную очередь диспетчера, где он остается до тех пор, пока не станет заданием с на-
ивысшим приоритетом в очереди.
SRB с глобальным приоритетом имеют более высокий приоритет, чем SRB с при-
оритетом адресного пространства, независимо от действительного адресного про-
странства, в котором они выполняются. SRB с локальным приоритетом имеют при-
оритет, равный приоритету адресного пространства, в котором они выполняются, но
более высокий, чем любой TCB в этом адресном пространстве. Назначение глобаль-