Служба процессов
Служба предназначена для управления процессами.
Сведения о методах службы приведены в таблице ниже.
Методы службы task.Task (интерфейс kl.core.Task)
Метод | Назначение и параметры метода | Потенциальная опасность метода |
---|---|---|
| Назначение Создает процесс. Параметры
| Позволяет выполнить следующие действия:
|
| Назначение Загружает сегмент ELF-образа в память процесса из буфера MDL. Параметры
| Позволяет загрузить в память процесса код для последующего исполнения. |
| Назначение Резервирует регион виртуальной памяти в процессе, который был создан "пустым". Параметры
| Позволяет выполнить следующие действия:
|
| Назначение Освобождает регион виртуальной памяти, зарезервированный вызовом метода Параметры
| Позволяет освободить регионы виртуальной памяти в другом процессе, который был создан "пустым" и еще не запущен, при наличии его дескриптора. (Маска прав дескриптора должна разрешать освобождение виртуальной памяти.) |
| Назначение Задает точку входа в программу и смещение загрузки ELF-образа. Параметры
| Создает условия для запуска кода, загруженного в память процесса. |
| Назначение Загружает таблицу символов Параметры
| Нет. |
| Назначение Записывает заголовок ELF-образа в PCB процесса, который был создан "пустым". Параметры
| Нет. |
| Назначение Записывает данные в SCP дочернего процесса. Параметры
| Позволяет исчерпать память ядра, создавая в ней множество объектов. |
| Назначение Удаляет SCP вызывающего процесса. Параметры
| Нет. |
| Назначение Запускает процесс. Параметры
| Позволяет выполнить следующие действия:
|
| Назначение Завершает вызывающий процесс. Параметры
| Нет. |
| Назначение Завершает процесс. Параметры
| Позволяет завершить другой процесс при наличии его дескриптора. (Маска прав дескриптора должна разрешать завершение процесса.) |
| Назначение Позволяет получить сведения о завершившемся процессе. Параметры
| Нет. |
| Назначение Позволяет получить контекст потока исполнения, входящего в процесс, который находится в "замороженном" состоянии. Параметры
| Позволяет нарушить изоляцию процесса, который находится в "замороженном" состоянии. Например, контекст потока исполнения может содержать значения переменных. |
| Назначение Позволяет получить сведения о регионе виртуальной памяти, принадлежащем процессу, который находится "замороженном" состоянии. Параметры
| Позволяет нарушить изоляцию процесса, который находится в "замороженном" состоянии. Изоляция нарушается, так как открывается доступ к региону памяти процесса. |
| Назначение Завершает процесс, который находится в "замороженном" состоянии. Параметры
| Позволяет завершить процесс, который находится в "замороженном" состоянии. Это не дает получить сведения об этом процессе для диагностики. |
| Назначение Позволяет получить имя вызывающего процесса. Параметры
| Нет. |
| Назначение Позволяет получить имя исполняемого файла (в ROMFS), из которого создан вызывающий процесс. Параметры
| Нет. |
| Назначение Позволяет получить приоритет начального потока процесса. Параметры
| Нет. |
| Назначение Задает приоритет начального потока процесса. Параметры
| Позволяет повысить приоритет начального потока процесса, чтобы сократить процессорное время, доступное остальным потокам исполнения, в том числе из других процессов. Рекомендуется контролировать приоритет начального потока исполнения. |
| Назначение Позволяет получить сведения о существующих процессах. Параметры
| Позволяет исчерпать память ядра, создавая в ней множество объектов. |
| Назначение Задает класс планирования и приоритет начального потока процесса. Параметры
| Позволяет выполнить следующие действия:
|
| Назначение Задает начальное значение генератора случайных чисел для поддержки ASLR. Параметры
| Нет. |
| Назначение Позволяет получить адрес и размер таблицы символов Параметры
| Нет. |
| Назначение Передает дескриптор процессу, который еще не запущен. Параметры
| Позволяет исчерпать память ядра, создавая в ней множество объектов. |
| Назначение Позволяет получить идентификатор процесса (PID). Параметры
| Нет. |