s390_guarded_storage(2) | System Calls Manual | s390_guarded_storage(2) |
s390_guarded_storage - операции со средством защищённого хранения z/Architecture
Standard C library (libc, -lc)
#include <asm/guarded_storage.h> /* определения констант GS_* */ #include <sys/syscall.h> /* определения констант SYS_* */ #include <unistd.h>
int syscall(SYS_s390_guarded_storage, int command, struct gs_cb *gs_cb);
Note: glibc provides no wrapper for s390_guarded_storage(), necessitating the use of syscall(2).
Системный вызов s390_guarded_storage() задействует средство защищённого хранения (Guarded Storage Facility, свойство z/Architecture) для процессов пользовательского пространства.
Средство защищённого хранения — это аппаратное свойство, позволяющее пометить до 64 областей памяти (в z14) для защиты; при чтении указателя новыми инструкциями «Load Guarded» (LGG) или «Load Logical and Shift Guarded» (LLGFSG) будет проверяться диапазон согласно загружаемому значению и вызываться (установленный ранее) обработчик пользовательского пространства, если затронута одна из защищённых областей.
В аргументе command задаётся выполняемая функция. Поддерживаются следующие команды:
В аргументе gs_cb указывается адрес структуры блока управления защищённым хранением и пока используется только в команде GS_SET_BC_CB; все остальные упомянутые команды игнорируют этот аргумент.
При успешном выполнении s390_guarded_storage() возвращает значение 0.
В случае ошибки возвращается -1, а errno устанавливается в значение ошибки.
Данный системный вызов появился в Linux 4.12.
Данный системный вызов есть только в Linux и доступен только на архитектуре s390.
Средство защищённого хранения доступно начиная с System z14.
Описание средства защищённого хранения вместе с инструкциями, блоком управления защищённым хранением, структурой списка событий защищённого хранения доступно в «z/Architecture Principles of Operations» начиная с 12-го выпуска.
В структуре gs_cb есть поле gsepla (Guarded Storage Event Parameter List Address), которое является указателем пользовательского пространства на структуру Guarded Storage Event Parameter List (содержащей адрес вышеупомянутого обработчика событий в поле gseha), а её описание доступно как определение структурного типа gs_epl в заголовочном файле asm/guarded_storage.h.
Русский перевод этой страницы руководства был сделан Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
30 октября 2022 г. | Linux man-pages 6.03 |