Так уж вышло, что некоторые решения в форт-системах повторяют работу ОС.
Из-за этого система может терять в производительности (зачем делать, что ОС сделает гораздо лучше?).
На примере СПФ.
Имеется пользовательская область, но насколько это удобнее и быстрее функций TLSindex и пр.?
Да и с учетом того, что ссылка в Винде на пользовательскую область находится в TIB (в 32-разрядных приложениях в сегменте FS в 64-разрядных GS: )
https://en.wikipedia.org/wiki/Win32_Thr ... tion_Block Впрочем, от этого велосипеда есть прок - свою реализацию пользовательской области гораздо проще портировать
Идем дальше в тот же TIB
В СПФ слово THREAD-ID не вызывает соотв. функцию API, нет. Слово непосредственно берет значение из соотв. поля по FS:
Даже странно, что в СПФ не пошли дальше. Ведь с помощью TIB можно получить, к примеру, GetLastError или ай-ди процесса
А как насчет других велосипедов?
Например, сделать учет выделенных фрагментов памяти и их перевыделение без вызова API. Опять работаем за ОС
Но насколько это актуально? Тут, как и во всем, остальном, нет оберток над API, но винду не индусы писали в конце концов
Так уж вышло, что некоторые решения в форт-системах повторяют работу ОС.
Из-за этого система может терять в производительности (зачем делать, что ОС сделает гораздо лучше?).
На примере СПФ.
Имеется пользовательская область, но насколько это удобнее и быстрее функций TLSindex и пр.?
Да и с учетом того, что ссылка в Винде на пользовательскую область находится в TIB (в 32-разрядных приложениях в сегменте FS в 64-разрядных GS: )
https://en.wikipedia.org/wiki/Win32_Thread_Information_Block
Впрочем, от этого велосипеда есть прок - свою реализацию пользовательской области гораздо проще портировать :)
Идем дальше в тот же TIB
В СПФ слово THREAD-ID не вызывает соотв. функцию API, нет. Слово непосредственно берет значение из соотв. поля по FS:
Даже странно, что в СПФ не пошли дальше. Ведь с помощью TIB можно получить, к примеру, GetLastError или ай-ди процесса :)
А как насчет других велосипедов?
Например, сделать учет выделенных фрагментов памяти и их перевыделение без вызова API. Опять работаем за ОС :)
Но насколько это актуально? Тут, как и во всем, остальном, нет оберток над API, но винду не индусы писали в конце концов :)