Program status word что это

From Wikipedia, the free encyclopedia

The program status word[a] (PSW) is a register that performs the function of a status register and program counter, and sometimes more. The term is also applied to a copy of the PSW in storage. This article only discusses the PSW in the IBM System/360[1] and its successors,[2][3][4][5][6] and follows the IBM convention of numbering bits starting with 0 as the leftmost (most significant) bit.

Although certain fields within the PSW may be tested or set by using non-privileged instructions, testing or setting the remaining fields may only be accomplished by using privileged instructions.

Contained within the PSW are the two bit condition code, representing zero, positive, negative, overflow, and similar flags of other architectures’ status registers. Conditional branch instructions test this encoded as a four bit value, with each bit representing a test of one of the four condition code values, 23 + 22 + 21 + 20. (Since IBM uses big-endian bit numbering, mask value 8 selects code 0, mask value 4 selects code 1, mask value 2 selects code 2, and mask value 1 selects code 3.)

The 64-bit PSW describes (among other things)

  • Interrupt masks
  • Privilege states
  • Condition code
  • Instruction address

In the early instances of the architecture (System/360 and early System/370), the instruction address was 24[b] bits; in later instances (XA/370), the instruction address was 31 bits plus a mode bit (24 bit addressing mode if zero; 31 bit addressing mode if one) for a total of 32 bits.

In the present instances of the architecture (z/Architecture), the instruction address is 64 bits and the PSW itself is 128 bits.

The PSW may be loaded by the LOAD PSW instruction (LPSW or LPSWE). Its contents may be examined with the Extract PSW instruction (EPSW).

Format[edit]

S/360[edit]

On all but 360/20,[c] the PSW has the following formats. S/360 Extended PSW format only applies to the 360/67 with bit 8 of control register 6 set.

IBM S/360 PSW formats

S/360 Standard PSW[11]

System Mask Key A M W P Interruption Code[12]
0 7 8 11 12 13 14 15 16 31
ILC CC Program
Mask
Instruction Address
32 33 34 35 36 39 40 63
S/360 Standard PSW abbreviations

Bits Field Meaning
0-7 SM System Mask

Bit Meaning
0 Channel 0 mask
1 Channel 1 mask
2 Channel 2 mask
3 Channel 3 mask
4 Channel 4 mask
5 Channel 5 mask
6 Channel 6 mask
7 External Mask
8-11 Key PSW key
12 A ASCII
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-31 IC Interruption Code[13]
32-33 ILC Instruction-Length Code[14]
34-35 CC Condition Code
36-39 PM Program Mask

Bit Meaning
36 Fixed-point overflow
37 Decimal overflow
38 Exponent underflow
39 Significance
40-63 IA Instruction Address
S/360 Extended PSW[15]

spare 24/32
Bit
Mode
Tran
Ctrl
I/O
Mask
Ext.
Mask
Key A M W P ILC CC Program
Mask
spare
0 3 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31
Instruction Address
32 63
S/360 Extended PSW abbreviations

Bits Field Meaning
0-3 Spare (must be 0)
4 24/32-bit Address mode
5 Translation Control
6 IO I/O Mask (Summary)
7 EX External Mask (Summary)
8-11 Key Protection Key
12 A ASCII
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-17 ILC Instruction-Length Code[16]
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 Exponent underflow
23 Significance
24-31 Spare
32-63 IA Instruction Address

S/370[edit]

IBM S/370 PSW formats

S/370 Basic Control mode PSW[17]

Chan.
Mask
I
O
E
X
Key 0 M W P Interruption Code
0 1 2 4 5 6 7 8 11 12 13 14 15 16 31
ILC CC Program
Mask
Instruction Address
32 33 34 35 36 39 40 63
S/370 BC mode PSW abbreviations

Bits Field Meaning
0-5 Channel Masks for channels 0-5
6 IO I/O Mask for channels > 5
7 EX External Mask
8-11 Key PSW key
12 E=0 Basic Control mode
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-31 IC Interruption Code[18]
32-33 ILC Instruction-Length Code[19]
34-35 CC Condition Code
36-39 PM Program Mask

Bit Meaning
36 Fixed-point overflow
37 Decimal overflow
38 Exponent underflow
39 Significance
40-63 IA Instruction Address
S/370 Extended Control mode PSW[20]

0 R 0 0 0 T I
O
E
X
Key 1 M W P S 0 CC Program
Mask
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31
0 0 0 0 0 0 0 0 Instruction Address
32 39 40 63
S/370 EC mode PSW abbreviations

Bits Field Meaning
1 R PER Mask
5 T DAT mode
6 IO I/O Mask; subject to channel mask in CR2
7 EX External Mask; subject to external subclass mask in CR0
8-11 Key PSW key
12 E=1 Extended Control mode
13 M Machine-check mask
14 W Wait state
15 P Problem state
16 S Address-Space Control
0=primary-space mode
1=Secondary-space mode
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 Exponent underflow
23 Significance
40-63 IA Instruction Address

S/370 Extended Architecture (S/370-XA)[edit]

IBM Extended Architecture (XA) PSW format

Extended Architecture Extended Control mode PSW[21]

0 R 0 0 0 T I
O
E
X
Key 1 M W P S 0 CC Program
Mask
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31
A Instruction Address
32 33 63
S/370-XA EC mode PSW abbreviations

Bits Field Meaning
1 R PER Mask
5 T DAT mode
6 IO I/O Mask; subject to channel mask in CR2
7 EX External Mask; subject to external subclass mask in CR0
8-11 Key PSW key
12 E=1 Extended Control mode
13 M Machine-check mask
14 W Wait state
15 P Problem state
16 S Address-Space Control
0=primary-space mode
1=Secondary-space mode
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 Exponent underflow
23 Significance
32 A Addressing mode
0=24 bit; 1=31 bit
33-63 IA Instruction Address

Enterprise Systems Architecture (ESA)[edit]

IBM Enterprise Systems Architecture (ESA) PSW format

Enterprise Systems Architecture Extended Control mode PSW[22][23]

0 R 0 0 0 T I
O
E
X
Key 1 M W P AS CC Program
Mask
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31
A Instruction Address
32 33 63
ESA EC mode PSW abbreviations

Bits Field Meaning
1 R PER Mask
5 T DAT mode
6 IO I/O Mask; subject to channel mask in CR2
7 EX External Mask; subject to external subclass mask in CR0
8-11 Key PSW key
12 E=1 Extended Control mode
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-17 AS Address-Space Control
00=primary-space mode
01=Access-register mode
10=Secondary-space mode
11=Home-space mode
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 Exponent underflow[d]
23 Significance[e]
32 A Addressing mode
0=24 bit; 1=31 bit
33-63 IA Instruction Address

z/Architecture[edit]

IBM z/Architecture PSW formats

z/Architecture long PSW[24]

0 R 0 0 0 T I
O
E
X
Key 0 M W P AS CC Program
Mask
R
I
0 0 0 0 0 0 E
A
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 30 31
B
A
0
32 33 63
Instruction Address
64 95
Instruction Address (Continued)
96 127
Long PSW abbreviations

Bits Field Meaning
1 R PER Mask
5 T DAT mode
6 IO I/O mask
7 EX External Mask
8-11 Key PSW key
12 E=0 Must be zero for LPSWE
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-17 AS Address-Space Control
00=primary-space mode
01=Access-register mode
10=Secondary-space mode
11=Home-space mode
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 HFP Exponent underflow
23 HFP Significance
24 RI Reserved for IBM
31 EA Extended Addressing mode
0=defined by BA below; 1=64-bit, BA must be zero
32 BA Basic Addressing mode
0=24 or 64; 1=31
64-127 IA Instruction Address
z/Architecture short PSW[25]

0 R 0 0 0 T I
O
E
X
Key 1 M W P AS CC Program
Mask
R
I
0 0 0 0 0 0 E
A
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 25 30 31
B
A
Instruction Address
32 33 63
Short PSW abbreviations

Bits Field Meaning
1 R PER Mask
5 T DAT mode
6 IO I/O mask
7 EX External Mask
8-11 Key PSW key
12 E=1 Must be one for LPSW
13 M Machine-check mask
14 W Wait state
15 P Problem state
16-17 AS Address-Space Control
00=primary-space mode
01=Access-register mode
10=Secondary-space mode
11=Home-space mode
18-19 CC Condition Code
20-23 PM Program Mask

Bit Meaning
20 Fixed-point overflow
21 Decimal overflow
22 HFP Exponent underflow
23 HFP Significance
24 RI Reserved for IBM
31 EA Extended Addressing mode
0=defined by BA below; 1=64-bit, BA must be zero
32 BA Basic Addressing mode
0=24 or 64; 1=31
33-63 IA Instruction Address

Notes[edit]

  1. ^ The nomenclature varies among architectures.
  2. ^ However, a 360/67[7] equipped with the Extended Dynamic Address Translation[8]
    feature has a 32-bit mode selected by bit 4 of the PSW[9] in Extended PSW mode[8] (Control Register 6, bit 8[10]).
  3. ^ Despite the name, the 350/20 does not adhere to the S/360 architecture.
  4. ^ Bit 22 is renamed as HFP exponent underflow in ESA/390
  5. ^ Bit 23 is renamed as HFP significance in ESA/390

References[edit]

  1. ^ S360.
  2. ^ S370.
  3. ^ S370-XA.
  4. ^ S370-ESA.
  5. ^ S390-ESA.
  6. ^ z.
  7. ^ func67.
  8. ^ a b func67, p. 57, Glossary.
  9. ^ func67, p. 15, Instruction Fetching and Execution.
  10. ^ func67, p. 16, Table 4. Control Registers.
  11. ^ S360, p. 15, Program Status Word.
  12. ^ S360, pp. 15–16, Interruption.
  13. ^ S370, pp. 15–16, Interruption.
  14. ^ S370, p. 156, Instruction-Length Code.
  15. ^ func67, pp. 15–16, Instruction Fetching and Execution.
  16. ^ S360, p. 156, Instruction-Length Code.
  17. ^ S370, pp. 4-8 –&#32, 4–9, Program-Status Word Format in BC Mode.
  18. ^ S370, pp. 6-3 –&#32, 6–5, Interruption Action.
  19. ^ S370, pp. 6-7 –&#32, 6–9, Instruction-Length Code.
  20. ^ S370, pp. 4-6 –&#32, 4–7, Program-Status Word Format in EC Mode.
  21. ^ S370-XA, p. 4-5, Program-Status-Word Format.
  22. ^ S370-ESA, p. 4-5, Program-Status-Word Format.
  23. ^ S390-ESA, p. 4-5, Program-Status-Word Format.
  24. ^ z, pp. 4-5 –&#32, 4–8, Program-Status-Word Format.
  25. ^ z, p. 4-8, Short PSW Format.
S360
IBM System/360 Principles of Operation (PDF) (Eighth ed.). IBM. September 1968. A22-6821-7.
func67
IBM System/360 Model 67 Functional Characteristics (PDF) (Third ed.). IBM. February 1972. GA27-2719-2.
S370
IBM System/370 Principles of Operation (PDF) (Eleventh ed.). IBM. September 1987. A22-7000-10.
S370-XA
IBM System/370 Extended Architecture Principles of Operation (PDF) (Second ed.). IBM. January 1987. SA22-7085-1.
S370-ESA
IBM Enterprise Systems Architecture/370 Principles of Operation (PDF) (First ed.). IBM. August 1988. SA22-7200-0.
z
z/Architecture Principles of Operation (PDF) (Thirteenth ed.). IBM. September 2019. SA22-7832-12.

Слово
состояния программы (program status word, PSW)
представляет собой 128 разрядную область
данных в процессоре, которая наряду со
множеством других типов регистров
(управляющих регистров, регистров
времени и регистров префикса), содержит
сведения, критически важные как для
аппаратного, так и для программного
обеспечения. Текущее слово состояния
программы содержит адрес следующей
программной инструкции и контрольную
информацию о выполняющейся программе.
Каждый
процессор имеет только одно текущее
слово состояния программы.

Таким образом, процессор может одновременно
выполнять только
одну

задачу.

PSW
контролирует порядок подачи инструкций
в процессор и отображает состояние
системы относительно текущей выполняющейся
программы. Несмотря на то что каждый
процессор имеет только одно слово
состояния программы, для понимания
обработки прерываний полезно рассматривать
три типа PSW:

• текущее
PSW,

• новое
PSW,

• старое
PSW.

Текущее
PSW указывает следующую выполняемую
инструкцию. Оно также указывает, включена
ли в процессоре поддержка прерываний
ввода-вывода, внешних прерываний,
прерываний от схем контроля работы
машины и некоторых программных прерываний.
Если поддержка прерываний включена,
могут возникать эти прерывания. Если
поддержка прерываний отключена, эти
прерывания игнорируются или остаются
в режиме ожидания.

Существуют
также новое PSW и старое PSW, связанные с
каждым из шести типов прерываний. Новое
PSW содержит адрес подпрограммы, которая
может обрабатывать соответствующее
прерывание. Если в процессоре включена
поддержка прерываний, тогда при
возникновении прерывания происходит
переключение PSW с использованием
следующего метода:

1.
Сохранение текущего PSW в старом PSW,
связанном с типом возникшего прерывания.

2.
Загрузка содержимого нового PSW для
возникшего прерывания в текущее PSW.

Текущее
PSW, указывающее следующую выполняемую
инструкцию, теперь содержит адрес
требуемой подпрограммы для обработки
прерывания. Это переключение вызывает
передачу управления требуемой подпрограмме
обработки прерываний.

Регистры.
Архитектура мэйнфрейма содержит регистры
для слежения за происходящими событиями.
PSW, например, представляет собой регистр,
используемый для записи информации,
необходимой для выполнения текущей
активной программы. Мэйнфреймы содержат
и другие регистры, в частности:

регистры
доступа


используются для определения адресного
пространства, в котором находятся
данные;

общие
регистры


используются для адресации данных в
памяти, а также для хранения пользовательских
данных;

регистры
с плавающей точкой


используются для хранения численных
данных в формате с плавающей точкой;

управляющие
регистры


используются самой операционной
системой, например для ссылки на таблицы
трансляции.

7.20. Диспетчеризуемые единицы работы z/os: tcb, srb. Вытесняемые и не вытесняемые единицы работы.

В
z/OS диспетчеризуемые единицы работы
представлены двумя видами управляющих
блоков:

блоками
управления задачами
(task
control blocks, TCB).
Представляют задачи, выполняющиеся в
адресном пространстве, в частности
пользовательские программы и системные
программы, поддерживающие пользовательские
программы.

блоками
запросов обслуживания

(service request blocks, SRB).
Представляют запросы на выполнение
подпрограммы системного сервиса. SRB
обычно создаются, когда одно адресное
пространство обнаруживает событие,
влияющее на другое адресное пространство;
они обеспечивают единый механизм связи
между адресными пространствами.

TCB
– управляющий блок, представляющий
задачу, например вашу программу, при ее
выполнении в адресном пространстве.
TCB содержит информацию о запущенной
задаче, в частности адрес всех созданных
ею областей памяти. Задача управления
регионом (region control task, RCT), отвечающая за
подготовку адресного пространства к
загрузке и выгрузке, является задачей
наивысшего приоритета в адресном
пространстве. Все задачи в адресном
пространстве являются подзадачами RCT.

SRB
– управляющий блок, представляющий
подпрограмму, выполняющую определенную
функцию или службу в заданном адресном
пространстве. Подпрограмма, выполняющая
функцию или службу, называется
SRB-подпрограммой;
инициация процесса называется
планированием
SRB)
;
SRB-подпрограмма выполняется в операционном
режиме, называемом режимом
SRB
.

SRB
подобен TCB в том, что он определяет
единицу работы в системе. В отличие от
TCB SRB не может «владеть» областями памяти.
SRB-подпрограммы могут получать, обращаться,
использовать и освобождать области
памяти, но этими областями должен владеть
TCB. В многопроцессорной среде
SRB-подпрограмма после планирования
может быть передана на другой процессор
и выполняться одновременно с программой,
ее запланировавшей. Программа,
запланировавшая SRB, может продолжать
выполнять обработку других задач
параллельно с подпрограммой SRB. Как
говорилось выше, SRB представляет средство
асинхронной связи между адресными
пространствами для программ, выполняющихся
в z/OS.

Вытесняемые
и не вытесняемые единицы работы.

То,
какая подпрограмма получит управление
после обработки прерывания, зависит от
того, была ли прерванная единица работы
вытесняемой.
Если была, тогда операционная система
определяет, какую единицу работы нужно
выполнять следующей. Другими словами,
система определяет, какая единица работы
из всей работы в системе имеет наивысший
приоритет, и передает управление в эту
единицу работы.

Невытесняемая
единица работы может быть прервана, но
должна получить управление после
обработки прерывания. Например, SRB часто
являются невытесняемыми. Другими
словами, если подпрограмма, представленная
невытесняемым SRB, прервана, после
обработки прерывания она получит
управление. С другой стороны, подпрограммы,
представленные TCB, например пользовательские
программы, обычно являются вытесняемыми.
Если ее выполнение прерывается, тогда
после обработки прерывания управление
возвращается операционной системе.
Затем z/OS определяет, какая задача из
всех готовых задач будет выполняться
следующей.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Слово состояния программы ( PSW ) представляет собой регистр , который выполняет функцию регистра состояния и программного счетчика , а иногда и более. Этот термин также применяется к копии PSW на хранении. В этой статье обсуждается только PSW в IBM System / 360 и его преемниках, и следует соглашению IBM о нумерации битов, начинающихся с 0 в качестве самого левого (наиболее значимого) бита.

Хотя некоторые поля в PSW могут быть протестированы или установлены с использованием непривилегированных инструкций, тестирование или установка остальных полей может быть выполнена только с использованием привилегированных инструкций.

В PSW содержится двухбитовый код состояния , представляющий нулевой, положительный, отрицательный, переполненный и аналогичные флаги регистров состояния других архитектур . Команды условного перехода проверяют это, закодированное как четырехбитовое значение, где каждый бит представляет тест одного из четырех значений кода условия, 2 3 + 2 2 + 2 1 + 2 0 . (Поскольку IBM использует нумерацию битов с прямым порядком байтов, значение маски 8 выбирает код 0, значение маски 4 выбирает код 1, значение маски 2 выбирает код 2, а значение маски 1 выбирает код 3.)

64-битный PSW описывает (среди прочего)

  • Маски прерывания
  • Состояния привилегий
  • Код состояния
  • Адрес инструкции

В ранних экземплярах архитектуры (System / 360 и ранних System / 370) адрес инструкции был 24 бита; в более поздних случаях (XA / 370) адрес инструкции составлял 31 бит плюс бит режима (режим адресации 24 бита, если ноль; режим адресации 31 бит, если один), всего 32 бита.

В настоящих экземплярах архитектуры ( z / Architecture ) адрес инструкции составляет 64 бита, а сам PSW — 128 бит.

PSW может быть загружен командой LOAD PSW ( LPSW или LPSWE). Его содержимое можно просмотреть с помощью инструкции Extract PSW (EPSW).

Формат

S / 360

Форматы IBM S / 360 PSW

S / 360 Стандартный PSW

Системная маска Ключ А M W п Код прерывания
0 7 8 11 12 13 14 15 16 31 год
ILC CC Программная
маска
Адрес инструкции
32 33 34 35 год 36 39 40 63

Аббревиатуры S / 360 Standard PSW

Биты Поле Имея в виду
0-7 SM

Системная маска

Немного Имея в виду
0 Маска канала 0
1 Маска канала 1
2 Маска канала 2
3 Маска канала 3
4 Маска канала 4
5 Маска канала 5
6 Маска канала 6
7 Внешняя маска
8-11 Ключ Ключ PSW
12 А ASCII
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16–31 IC Код прерывания
32-33 ILC Код длины инструкции
34-35 CC Код состояния
36–39 ВЕЧЕРА

Программная маска

Немного Имея в виду
36 Переполнение фиксированной точки
37 Десятичное переполнение
38 Экспонента недостаточного переполнения
39 Значимость
40-63 Я Адрес инструкции
S / 360 расширенный PSW

запасной 24/32
битный
режим
Тран
Ctrl

Маска
ввода / вывода
Ext.
Маска
Ключ А M W п ILC CC Программная
маска
запасной
0 3 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31 год
Адрес инструкции
32 63

Сокращения S / 360 Extended PSW

Биты Поле Имея в виду
0-3 Запасной (должно быть 0)
4 24/32-битный адресный режим
5 Управление переводом
6 IO Маска ввода / вывода (сводка)
7 БЫВШИЙ Внешняя маска (сводка)
8-11 Ключ Ключ защиты
12 А ASCII
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16-17 ILC Код длины инструкции
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Экспонента недостаточного переполнения
23 Значимость
24–31 Запасной
32-63 Я Адрес инструкции

S / 370

Форматы IBM S / 370 PSW

S / 370 B Основныеоперации C Режим ontrol PSW

Чан.
Маска
I
O
E
X
Ключ 0 M W п Код прерывания
0 1 2 4 5 6 7 8 11 12 13 14 15 16 31 год
ILC CC Программная
маска
Адрес инструкции
32 33 34 35 год 36 39 40 63

Сокращения PSW для режима S / 370 BC

Биты Поле Имея в виду
0-5 Маски каналов для каналов 0-5
6 IO Маска ввода / вывода для каналов> 5
7 БЫВШИЙ Внешняя маска
8-11 Ключ Ключ PSW
12 E = 0 В Основныеоперации С ontrol режима
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16–31 IC Код прерывания
32-33 ILC Код длины инструкции
34-35 CC Код состояния
36–39 ВЕЧЕРА

Программная маска

Немного Имея в виду
36 Переполнение фиксированной точки
37 Десятичное переполнение
38 Экспонента недостаточного переполнения
39 Значимость
40-63 Я Адрес инструкции
S / 370 Е Xtended Ĉ ontrol режим PSW

0 р 0 0 0 Т I
O
E
X
Ключ 1 M W п S 0 CC Программная
маска
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31 год
0 0 0 0 0 0 0 0 Адрес инструкции
32 39 40 63

S / 370 EC mode Сокращения PSW

Биты Поле Имея в виду
1 р PER Маска
5 Т DAT режим
6 IO Маска ввода / вывода; зависит от маски канала в CR2
7 БЫВШИЙ Внешняя маска; подчиняется внешней маске подкласса в CR0
8-11 Ключ Ключ PSW
12 E = 1 Е Xtended Ĉ режим ontrol
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16 S Управление адресным пространством
0 = режим первичного пространства
1 = режим вторичного пространства
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Экспонента недостаточного переполнения
23 Значимость
40-63 Я Адрес инструкции

S / 370 Расширенная архитектура (S / 370-XA)

Формат IBM Extended Architecture (XA) PSW

Расширенная архитектура E Xtended Ĉ ontrol режим PSW

0 р 0 0 0 Т I
O
E
X
Ключ 1 M W п S 0 CC Программная
маска
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31 год
А Адрес инструкции
32 33 63

S / 370-XA EC mode Сокращения PSW

Биты Поле Имея в виду
1 р PER Маска
5 Т DAT режим
6 IO Маска ввода / вывода; зависит от маски канала в CR2
7 БЫВШИЙ Внешняя маска; подчиняется внешней маске подкласса в CR0
8-11 Ключ Ключ PSW
12 E = 1 Е Xtended Ĉ режим ontrol
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16 S Управление адресным пространством
0 = режим первичного пространства
1 = режим вторичного пространства
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Экспонента недостаточного переполнения
23 Значимость
32 А Режим адресации
0 = 24 бита; 1 = 31 бит
33-63 Я Адрес инструкции

Архитектура корпоративных систем (ESA)

Формат PSW IBM Enterprise Systems Architecture (ESA)

Enterprise Systems Architecture E Xtended Ĉ ontrol режим PSW

0 р 0 0 0 Т I
O
E
X
Ключ 1 M W п В ВИДЕ CC Программная
маска
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31 год
А Адрес инструкции
32 33 63

Сокращения PSW для режима ESA EC

Биты Поле Имея в виду
1 р PER Маска
5 Т DAT режим
6 IO Маска ввода / вывода; зависит от маски канала в CR2
7 БЫВШИЙ Внешняя маска; подчиняется внешней маске подкласса в CR0
8-11 Ключ Ключ PSW
12 E = 1 Е Xtended Ĉ режим ontrol
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16-17 В ВИДЕ Управление
адресным пространством 00 = режим основного пространства
01 = режим регистра доступа
10 = режим дополнительного пространства
11 = режим домашнего пространства
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Экспонента недостаточного переполнения
23 Значимость
32 А Режим адресации
0 = 24 бита; 1 = 31 бит
33-63 Я Адрес инструкции

z / Архитектура

Форматы IBM z / Architecture PSW

z / Архитектура long PSW

0 р 0 0 0 Т I
O
E
X
Ключ 0 M W п В ВИДЕ CC Программная
маска
R
I
0 0 0 0 0 0 E
A
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 30 31 год
Б
А
0
32 33 63
Адрес инструкции
64 95
Адрес инструкции (продолжение)
96 127

Длинные аббревиатуры PSW

Биты Поле Имея в виду
1 р PER Маска
5 Т DAT режим
6 IO Маска ввода / вывода
7 БЫВШИЙ Внешняя маска
8-11 Ключ Ключ PSW
12 E = 0 Для LPSWE должно быть равно нулю
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16-17 В ВИДЕ Управление
адресным пространством 00 = режим основного пространства
01 = режим регистра доступа
10 = режим дополнительного пространства
11 = режим домашнего пространства
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Истощение экспоненты HFP
23 Значение HFP
24 RI Зарезервировано для IBM
31 год EA Режим расширенной адресации
0 = определяется BA ниже; 1 = 64-битный, BA должен быть нулевым
32 BA Базовый режим адресации
0 = 24 или 64; 1 = 31
64-127 Я Адрес инструкции
z / Архитектура короткая PSW

0 р 0 0 0 Т I
O
E
X
Ключ 1 M W п В ВИДЕ CC Программная
маска
R
I
0 0 0 0 0 0 E
A
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 25 30 31 год
Б
А
Адрес инструкции
32 33 63

Краткие сокращения PSW

Биты Поле Имея в виду
1 р PER Маска
5 Т DAT режим
6 IO Маска ввода / вывода
7 БЫВШИЙ Внешняя маска
8-11 Ключ Ключ PSW
12 E = 1 Должен быть один для LPSW
13 M Маска для машинной проверки
14 W Состояние ожидания
15 п Состояние проблемы
16-17 В ВИДЕ Управление
адресным пространством 00 = режим основного пространства
01 = режим регистра доступа
10 = режим дополнительного пространства
11 = режим домашнего пространства
18-19 CC Код состояния
20-23 ВЕЧЕРА

Программная маска

Немного Имея в виду
20 Переполнение фиксированной точки
21 год Десятичное переполнение
22 Истощение экспоненты HFP
23 Значение HFP
24 RI Зарезервировано для IBM
31 год EA Режим расширенной адресации
0 = определяется BA ниже; 1 = 64-битный, BA должен быть нулевым
32 BA Базовый режим адресации
0 = 24 или 64; 1 = 31
33-63 Я Адрес инструкции

Заметки

Рекомендации

  1. ^ S360 .
  2. ^ S370 .
  3. ^ S370-XA .
  4. ^ S370-ESA .
  5. ^ S390-ESA .
  6. ^ Г .
  7. ^ func67 .
  8. ^ a b func67 , стр. 57, Глоссарий .
  9. ^ func67 , стр. 15, Получение и выполнение инструкций .
  10. ^ func67 , стр. 16, таблица 4. Регистры управления .
  11. ^ S360 , стр. 15, Слово состояния программы .
  12. ^ S360 , стр. 15-16, прерывание .
  13. ^ S370 , стр. 15-16, прерывание .
  14. ^ S370 , стр. 156, код длины инструкции .
  15. ^ func67 , стр. 15-16, Получение и выполнение инструкций .
  16. ^ S360 , стр. 156, код длины инструкции .
  17. ^ S370 , стр. 4-8 — 4-9, Формат слова состояния программы в режиме BC .
  18. ^ S370 , стр. 6-3 — 6-5, Действие прерывания .
  19. ^ S370 , стр. 6-7 — 6-9, Код длины инструкции .
  20. ^ S370 , стр. 4-6 — 4-7, Формат слова состояния программы в режиме EC .
  21. ^ S370-XA , стр. 4-5, Формат слова программы-состояния .
  22. ^ S370-ESA , с. 4-5, Формат слова программы-состояния .
  23. ^ S390-ESA , стр. 4-5, Формат слова программы-состояния .
  24. ^ z , стр. 4-5 — 4-8, Формат слова программы-состояния .
  25. ^ г , стр. 4-8, короткий формат PSW .
S360

Принципы работы IBM System / 360 (PDF) (Восьмое изд.). IBM. Сентябрь 1968 г. A22-6821-7.

func67
Функциональные характеристики IBM System / 360 Model 67 (PDF) (Третье изд.). IBM. Февраль 1972 года. GA27-2719-2.
S370
Принципы работы IBM System / 370 (PDF) (одиннадцатое изд.). IBM. Сентябрь 1987 г. A22-7000-10.
S370-XA
Принципы работы расширенной архитектуры IBM System / 370 (PDF) (второе изд.). IBM. Январь 1987 г. SA22-7085-1.
S370-ESA
Архитектура корпоративных систем IBM / 370 Принципы работы (PDF) (Первое изд.). IBM. Август 1988 г. SA22-7200-0.
z
z / Принципы работы архитектуры (PDF) (Тринадцатое изд.). IBM. Сентябрь 2019 г. SA22-7832-12.

The PSW (Program Status Word) describes the current configuration for the context. It control whenever DAT is enabled or not, which allows virtual spaces. It also controls several flags such as the Wait state, Problem state, interrupt masking and other essential execution parameters.

While the 390 documentation lists the PSW in Most-Significant-Bit order, the PSW listed here will be in Least-Significant-Bit order for simplicity.

Bits Name
0 Extended addressing mode (z/Arch only)
1-7 Reserved
8 Unknown (?)
9 Enable exception for Exponent Underflow
10 Enable exception for Decimal Overflow
11 Enable exception for Fixed Point Overflow
12-13 Condition code
14-15 Address space control
16 Problem state (1=Disables unprivileged instruction execution)
17 Wait state (Wait for interrupt)
18 Machine Check Interrupt mask
19 1=S390, 0=z/Arch
20-23 PSW Key for complex memory protection
24 External Interrupt mask
25 Input/Output Interrupt mask
26 Enable DAT
27-29 Reserved
30 Enable program event recording
31 Reserved and must be 0

Contents

  • 1 Examples
    • 1.1 Structure (S390)
    • 1.2 Structure (z/Arch)
    • 1.3 Portable PSW declaration
    • 1.4 Service Interrupt handler
  • 2 See also
    • 2.1 External links
    • 2.2 Source code

Examples

Structure (S390)

struct s390_psw {
    uint32_t flags;
    uint32_t address;
} __attribute__((packed, aligned(8)));

Structure (z/Arch)

struct s390x_psw {
    uint32_t hi_flags;
    uint32_t lo_flags; /* It's all zero except for the MSB (in S/390 order) */
    uint32_t hi_address;
    uint32_t lo_address;
} __attribute__((packed, aligned(8)));

Portable PSW declaration

/* Helper function to create a PSW adjusted to the current machine */
#if (MACHINE >= M_ZARCH)
#   define S390_PSW_DEFAULT_TYPE struct s390x_psw
#   define S390_PSW_DECL(name, address, flags)
 S390_PSW_DEFAULT_TYPE name = {
    (flags) | S390_PSW_AM64, S390_PSW_AM31, 0, (uint32_t)(address)
}
#else
#   define S390_PSW_DEFAULT_TYPE struct s390_psw
#   define S390_PSW_DECL(name, address, flags)
 S390_PSW_DEFAULT_TYPE name = {
    (flags), (uint32_t)(address) + S390_PSW_DEFAULT_AMBIT
}
#endif
 
const S390_PSW_DECL(
    wait_io_psw,
    0,
    S390_PSW_ENABLE_ARCHMODE | S390_PSW_ENABLE_MCI | S390_PSW_WAIT_STATE| S390_PSW_IO_INT | S390_PSW_DAT
);

Service Interrupt handler

.globl s390_supervisor_call_handler_stub
s390_supervisor_call_handler_stub:
    stm %r0, %r15, S390_FLCGRSAV
    lm %r0, %r15, S390_FLCCRSAV
 
    larl %r15, int_stack_bottom
    brasl %r14, s390_supervisor_call_handler
 
    lm %r0, %r15, S390_FLCGRSAV
    lpsw S390_FLCSOPSW

See also

External links

  • Contains the structure of the PSW (in MSB order)

Source code

  • Example I/O PSWs (HLASM)
  • Handlers for different interrupts and exceptions (GAS)
Program status word

In computers, the program status word (PSW) is an area of memory or a hardware register which contains information about program state used by the operating system and the underlying hardware. It will normally include a pointer (address) to the next instruction to be executed. The program status word typically contains an error status field and condition codes such as the interrupt enable/disable bit and a supervisor / user mode bit.

The program status word (PSW) is 32 bits in length and contains the information required for proper program execution. The PSW includes the instruction address, condition code, and other fields. In general, the PSW is used to control instruction sequencing and to hold and indicate the status of the system in relation to the program currently being executed. The active or controlling PSW is called the current PSW. By storing the current PSW during an interruption, the status of the CPU can be preserved for subsequent inspection. By loading a new PSW or part of a PSW, the state of the CPU can be initialized or changed.

«See also»: Status register – a strictly hardware-based type of PSW

Wikimedia Foundation.
2010.

Look at other dictionaries:

  • program status word — programos būsenos žodis statusas T sritis automatika atitikmenys: angl. program status word vok. Programmstatuswort, n; Programmzustandwort, n rus. слово состояния программы, n pranc. mot d état du programme, m …   Automatikos terminų žodynas

  • Status register — A status register or flag register (also: condition code register, program status word, PSW, etc.) is a collection of flag bits for a processor. An example is the FLAGS register of the x86 architecture. The status register is a hardware register… …   Wikipedia

  • status bar — UK / US noun [countable] Word forms status bar : singular status bar plural status bars computing a bar across the bottom of a computer screen giving information about a program and the job that it is doing …   English dictionary

  • Nuclear program of Iran — See also: Iran and weapons of mass destruction Nuclear program of Iran …   Wikipedia

  • Microsoft Word Viewer — Word Viewer Word Viewer Developer(s) Microsoft Corporation Stable release 2010 / June 15, 2010; 16 months ago ( …   Wikipedia

  • Hangul (word processor) — Infobox Software name = Hangul (Windows) caption = Hangul 2007 developer = Haansoft Corporation latest release version = Hangul 2007 latest release date = August 2006 operating system = Microsoft Windows genre = Word processor license =… …   Wikipedia

  • High-yield investment program — A High Yield Investment Program (HYIP) is a type of Ponzi Scheme, which is an investment scam. At one time, HYIP was used in the financial services sector to refer to an investment program which may have offered a high return on investment. The… …   Wikipedia

  • Minimalist program — Linguistics …   Wikipedia

  • Oversight of the Troubled Asset Relief Program — The Emergency Economic Stabilization Act created the Troubled Assets Relief Program to administer up to $700 billion. Several oversight mechanisms are established by the bill, including the Congressional Oversight Panel, the Special Inspector… …   Wikipedia

  • Political status of Taiwan — The controversy regarding the political status of Taiwan (or Taiwan Issue as referred to by the Communist Party of China) hinges on whether Taiwan, Penghu, Kinmen, and Matsu should remain effectively independent as territory of the Republic of… …   Wikipedia

Понравилась статья? Поделить с друзьями:
  • Product is another word for
  • Program similar to word
  • Product excel like manager for virtuemart скачать
  • Product code для word
  • Product activation failed word