The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Избавление ядра Linux от кода, меняющего поведение для процессов, начинающихся на символ X"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для сортировки сообщений в нити по дате нажмите "Сортировка по времени, UBB".
. "Избавление ядра Linux от кода, меняющего поведение для проце..." +2 +/
Сообщение от pavlinux (ok), 10-Ноя-22, 02:44 
> А потом понял Это же C. И там нету нормального сравнения строк типа current->comm == "Xorg".

Oткрою секрет, где есть "нормальное" сравнение строк, оно работает вот так:


int strcmp(const char *cs, const char *ct)
{
    unsigned char c1, c2;

    while (1) {
        c1 = *cs++;
        c2 = *ct++;
        if (c1 != c2)
            return c1 < c2 ? -1 : 1;
        if (!c1)
            break;
    }
    return 0;
}

И ТАК ВО ВСЕХ ЯЗЫКАХ НА ПЛАНЕТЕ!!!  Быстрее не придумали.

Исключение -  ассемблерные версии с побайтной загрузкой сравниваемых строк или
целыми словами при наличии SSE4.2 https://www.strchr.com/strcmp_and_strlen_using_sse_4.2

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Избавление ядра Linux от кода, меняющего поведение для процессов, начинающихся на символ X, opennews, 09-Ноя-22, 13:23  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру