Ru/api/kernel: Difference between revisions

From KolibriOS wiki
Jump to navigation Jump to search
m (перенес функцию 13 на новую строку)
(Добавлено упоминание подфункции 31 функции 68. Добавлено нормальное название страницы.)
 
(35 intermediate revisions by 6 users not shown)
Line 1: Line 1:
''' СИСТЕМНЫЕ ФУНКЦИИ KolibriOS 0.7.7.0 '''
{{DISPLAYTITLE:API ядра}}
 
''' СИСТЕМНЫЕ ФУНКЦИИ KolibriOS'''


Номер функции помещается в регистр eax.
Номер функции помещается в регистр eax.
Line 18: Line 20:


[[SysFn05/ru | Функция 5]] - пауза.
[[SysFn05/ru | Функция 5]] - пауза.
[[SysFn06/ru | Функция 6]] - прочитать файл с рамдиска.


[[SysFn07/ru | Функция 7]] - вывести изображение в окно.
[[SysFn07/ru | Функция 7]] - вывести изображение в окно.
Line 32: Line 32:


[[SysFn12/ru|Функция 12]] - начать/закончить перерисовку окна.
[[SysFn12/ru|Функция 12]] - начать/закончить перерисовку окна.
* Подфункция 1 - начать перерисовку окна.
* Подфункция 2 - закончить перерисовку окна.


[[SysFn13/ru|Функция 13]] - нарисовать прямоугольник в окне.
[[SysFn13/ru|Функция 13]] - нарисовать прямоугольник в окне.
Line 38: Line 40:


[[SysFn15/ru | Функция 15]] - работа с фоновой графикой
[[SysFn15/ru | Функция 15]] - работа с фоновой графикой
* Подфункция 1 - установить размер фонового изображения.
* Подфункция 2 - поставить точку на фоновом изображении.
* Подфункция 3 - перерисовать фон.
* Подфункция 4 - установить режим отрисовки фона.
* Подфункция 5 - поместить блок пикселей на фон.
* Подфункция 6 - спроецировать данные фона на адресное пространство процесса.
* Подфункция 7 - закрыть проекцию данных фона на адресное пространство процесса.
* Подфункция 8 - получить координаты последней отрисовки фона.
* Подфункция 9 - перерисовать прямоугольную часть фона.


[[SysFn16/ru|Функция 16]] - сохранить рамдиск на дискету.
[[SysFn16/ru|Функция 16]] - сохранить рамдиск на дискету.
Line 44: Line 55:


[[SysFn18/ru|Функция 18]] - системные настройки и информация
[[SysFn18/ru|Функция 18]] - системные настройки и информация
* Подфункция 1 - сделать неактивным окно потока
* Подфункция 2 - завершить процесс/поток по слоту.
* Подфункция 3 - сделать активным окно заданного потока.
* Подфункция 4 - получить счётчик пустых тактов в секунду.
* Подфункция 5 - получить тактовую частоту.
* Подфункция 6 - сохранить рамдиск в файл на жёстком диске.
* Подфункция 7 - получить номер активного окна.
* Подфункция 8 - отключить/разрешить звук спикера.
* Подфункция 9 - завершение работы системы с параметром.
* Подфункция 10 - свернуть окно приложения.
* Подфункция 11 - получить информацию о дисковой подсистеме.
* Подфункция 13 - получить версию ядра.
* Подфункция 14 - ожидать начала обратного хода луча развёртки монитора.
* Подфункция 15 - поместить курсор мыши в центр экрана.
* Подфункция 16 - Получить размер свободной оперативной памяти.
* Подфункция 17 - получить размер имеющейся оперативной памяти.
* Подфункция 18 - завершить процесс/поток по идентификатору.
* Подфункция 19 - получить/установить настройки мыши.
* Подфункция 20 - получить информацию об оперативной памяти.
* Подфункция 21 - получить номер слота процесса/потока по идентификатору.
* Подфункция 22 - операции с окном другого процесса/потока.
* Подфункция 23 - минимизировать все окна.
* Подфункция 24 - установить пределы отрисовки.
* Подфункция 25 - управление положением окна относительно других окон.


[[SysFn20/ru|Функция 20]] - интерфейс MIDI.
[[SysFn20/ru|Функция 20]] - интерфейс MIDI.
* Подфункция 1 - сброс
* Подфункция 2 - вывести байт


[[SysFn21/ru|Функция 21]] - установка системных параметров
[[SysFn21/ru|Функция 21]] - установка системных параметров
* Подфункция 1 - установить базовый порт MPU MIDI.
* Подфункция 2 - установить раскладку клавиатуры.
* Подфункция 5 - установить язык системы.
* Подфункция 11 - разрешить/запретить низкоуровневый доступ к HD.
* Подфункция 12 - разрешить/запретить низкоуровневый доступ к PCI.


[[SysFn22/ru|Функция 22]] - установить системную дату/время.
[[SysFn22/ru|Функция 22]] - установить системную дату/время.
Line 53: Line 95:
[[SysFn23/ru|Функция 23]] - ожидать события с таймаутом.
[[SysFn23/ru|Функция 23]] - ожидать события с таймаутом.


[[SysFn24/ru|Функция 24]] - работа с проигрывателем компакт-дисков
[[SysFn24/ru|Функция 24]] - работа с проигрывателем компакт-дисков.
* Подфункция 4 - извлечь лоток привода диска.
* Подфункция 5 - загрузить лоток привода диска.


Функция 25 - установить громкость SBPro. - '''Удалена'''
[[SysFn25/ru|Функция 25]] - записать область на слой фона.


[[SysFn26/ru|Функция 26]] - аппаратный сервис
[[SysFn26/ru|Функция 26]] - аппаратный сервис.
 
* Подфункция 1 - получить базовый порт MPU MIDI.
Функция 27  - сведения об этой функции отсутствуют
* Подфункция 2 - получить раскладку клавиатуры.
 
* Подфункция 5 - получить язык системы.
Функция 28 - установить громкость SB16. - '''Удалена'''
* Подфункция 9 - получить значение счётчика времени.
* Подфункция 10 - получить значение высокоточного счётчика времени.
* Подфункция 11 - узнать, разрешён ли низкоуровневый доступ к HD.
* Подфункция 12 - узнать, разрешён ли низкоуровневый доступ к PCI.


[[SysFn29/ru|Функция 29]] - получить системную дату.
[[SysFn29/ru|Функция 29]] - получить системную дату.


[[SysFn30/ru|Функция 30]] - работа с текущей папкой.
[[SysFn30/ru|Функция 30]] - работа с текущей папкой.
* Подфункция 1 - установить текущую папку для потока.
* Подфункция 2 - получить активную папку для потока.
* Подфункция 3 - установить доп. системную директорию для ядра.
* Подфункция 4 - установить текущую папку с указанием кодировки.
* Подфункция 5 - получить текущую папку с указанием кодировки.


Функция 31 - сведения об этой функции отсутствуют
[[SysFn34/ru|Функция 34]] - узнать кому принадлежит точка экрана.
 
Функция 32 - использовалась в ранних версиях КОС для удаления файла с рамдиска.- '''удалена'''
 
Функция 33 - использовалась в ранних версиях КОС для записи файла на рамдиск.-'''удалена'''
 
Функция 34 - сведения об этой функции отсутствуют


[[SysFn35/ru|Функция 35]] - прочитать цвет точки на экране.
[[SysFn35/ru|Функция 35]] - прочитать цвет точки на экране.
Line 80: Line 126:


[[SysFn37/ru|Функция 37]] - работа с мышью.
[[SysFn37/ru|Функция 37]] - работа с мышью.
* Подфункция 0 - экранные координаты мыши
* Подфункция 1 - координаты мыши относительно окна
* Подфункция 2 - состояния кнопок мыши
* Подфункция 3 - состояния и события кнопок мыши
* Подфункция 4 - загрузить курсор
* Подфункция 5 - установить курсор
* Подфункция 6 - удалить курсор
* Подфункция 7 - данные прокрутки
* Подфункция 8 - загрузить курсор с указанием кодировки


[[SysFn38/ru|Функция 38]] - нарисовать отрезок.
[[SysFn38/ru|Функция 38]] - нарисовать отрезок.


[[SysFn39/ru|Функция 39]] - чтение фона.
[[SysFn39/ru|Функция 39]] - чтение фона.
* Подфункция 1 - получить размер фонового изображения.
* Подфункция 2 - прочитать точку с фонового изображения.
* Подфункция 4 - получить режим отрисовки фона.


[[SysFn40/ru|Функция 40]] - установить маску для ожидаемых событий.
[[SysFn40/ru|Функция 40]] - установить маску для ожидаемых событий.
[[SysFn41/ru|Функция 41]] - узнать владельца IRQ.
[[SysFn42/ru|Функция 42]] - работа с данными, полученными по IRQ.


[[SysFn43/ru|Функция 43]] - ввод/вывод в порт.
[[SysFn43/ru|Функция 43]] - ввод/вывод в порт.
[[SysFn44/ru|Функция 44]] - определить действия при поступлении IRQ.
[[SysFn45/ru|Функция 45]] - зарезервировать/освободить IRQ.


[[SysFn46/ru|Функция 46]] - зарезервировать/освободить группу портов ввода/вывода.
[[SysFn46/ru|Функция 46]] - зарезервировать/освободить группу портов ввода/вывода.
* '''Внимание:''' Эта функция устарела и может быть удалена в следующих версиях ядра.


[[SysFn47/ru|Функция 47]] - вывести число в окно.
[[SysFn47/ru|Функция 47]] - вывести число в окно.


[[SysFn48/ru|Функция 48]] - стили отображения окон
[[SysFn48/ru|Функция 48]] - стили отображения окон
* Подфункция 0 - применить настройки экрана.
* Подфункция 1 - установить стиль кнопок.
* Подфункция 2 - установить стандартные цвета окон.
* Подфункция 3 - получить стандартные цвета окон.
* Подфункция 4 - получить высоту скина.
* Подфункция 5 - получить рабочую область экрана.
* Подфункция 6 - установить рабочую область экрана.
* Подфункция 7 - получить область скина для текста заголовка.
* Подфункция 8 - установить используемый скин окон.
* Подфункция 9 - получить настройку сглаживания шрифтов.
* Подфункция 10 - настроить сглаживание шрифтов.
* Подфункция 11 - получить размер шрифтов.
* Подфункция 12 - установить размер шрифтов.
* Подфункция 13 - установить скин с указанием кодировки.


[[SysFn49/ru|Функция 49]] - Advanced Power Management (APM).
[[SysFn49/ru|Функция 49]] - Advanced Power Management (APM).
Line 109: Line 173:
[[SysFn51/ru|Функция 51]] - создать поток.
[[SysFn51/ru|Функция 51]] - создать поток.


[[SysFn52/ru|Функция 52]] - сетевой сервис.
[[SysFn54/ru|Функция 54]] - работа с буфером обмена
* Подфункция 0 - узнать количество слотов в буфере обмена.
* Подфункция 1 - считать данные из буфера обмена.
* Подфункция 2 - записать данные в буфер обмена.
* Подфункция 3 - удалить последний слот с данными в буфере обмена
* Подфункция 4 - аварийный сброс блокировки буфера


[[SysFn53/ru|Функция 53]] - работа с сетевым сокетами.
[[SysFn55/ru | Функция 55]] - встроенный спикер.
 
Функция 54 - Зарезервирована (возвращает 0x12345678 в eax).
 
[[SysFn55/ru | Функция 55]] - аудио сервис.
* Подфункция 0 - загрузить данные для SB16.
* Подфункция 1 - начать проигрывать данные на SB16.
* Подфункция 2 - установить формат данных SB16.
* Подфункция 55 - начать проигрывать данные на встроенном спикере.


[[SysFn57/ru | Функция 57]] - PCI BIOS.
[[SysFn57/ru | Функция 57]] - PCI BIOS.
[[SysFn58/ru | Функция 58]] - работа с файловой системой.
* Подфункция 0 - прочитать файл/папку.
* Подфункция 8 - LBA-чтение с устройства.
* Подфункция 15 - получить информацию о файловой системе.


[[SysFn60/ru | Функция 60]] - Inter Process Communication (IPC).
[[SysFn60/ru | Функция 60]] - Inter Process Communication (IPC).
* Подфункция 1 - установить область для получения IPC
* Подфункция 1 - установить область для получения IPC
* Подфункция 2 - послать сообщение IPC


[[SysFn61/ru | Функция 61]] - получить параметры для прямого доступа к графике.
[[SysFn61/ru | Функция 61]] - получить параметры для прямого доступа к графике.
* Подфункция 1 - разрешение экрана
* Подфункция 2 - число бит на пиксель
* Подфункция 3 - число байт на строку


[[SysFn62/ru|Функция 62]] - пользовательский доступ к PCI.
[[SysFn62/ru|Функция 62]] - пользовательский доступ к PCI.
Line 139: Line 199:
* подфункции 4,5,6 - прочитать PCI-регистр.
* подфункции 4,5,6 - прочитать PCI-регистр.
* подфункции 8,9,10 - записать в PCI-регистр.
* подфункции 8,9,10 - записать в PCI-регистр.
* подфункция 11 - инициализировать доступ к MMIO
* подфункция 12 - получить линейный адрес MMIO-блока
* подфункция 13 - освободить линейные адреса MMIO


[[SysFn63/ru|Функция 63]] - работа с доской отладки.
[[SysFn63/ru|Функция 63]] - работа с доской отладки.
* Подфункция 1 - запись байта
* Подфункция 2 - чтение байта


[[SysFn64/ru|Функция 64]] - перераспределить память приложения.
[[SysFn64/ru|Функция 64]] - перераспределить память приложения.