| |
Содержание
На самом деле, пока не так много документации о ядре, но надеюсь, что ситуация улучшится со временем. Тем не менее, для начала, вот где располагаются исходники:
Код openMosix находится в основном в каталогах hpc/ и include/hpc. Помимо этого, добавляется множество патчей для файлов ядра, начиная с каталогов arch/i386, и включая mm/, fs/ и т.д. Вам необходимо будет найти прочитать код, который вам нужен (это не проблема, если вы уже писали код для ядра).
А вот что вы можете обнаружить в файлах исходных текстов:
hpc/badops.c: Единый файл, обрабатывающий неудачные операции: в основном возвращает коды ошибок.
hpc/balance.c: Код балансировки (нагрузка + использование памяти).
hpc/comm.c: Настройка внутрикластерного взаимодействия.
hpc/config.c: Код конфигурации для openMosix: то есть то, что выполняется после того, как вы запустили startup script.
hpc/decay.c: Задержка (возраст) статистики и информации, собираемой с других узлов.
hpc/deputy.c: Код, выполняемый как вспомогательный: удалённые системные вызовы служб (т.е. после того, как процесс мигрировал), сигналы и т.п.
hpc/dfsa.c: Код DFSA: уровень абстракции распределённой файловой системы.
hpc/div.c: Алгоритмы, отвечающие за деление с плавающей точкой.
hpc/export.c: Экспорт символов, необходимых для других файлов.
hpc/freemem.c: Необходим для отслеживания свободной и доступной памяти, а также её освобождения при необходимости. Большая часть кода заимствована из кода Linux mm/.
hpc/hpcadmin.c: Настройка административных опций openMosix (посредством /proc/hpc).
hpc/hpcproc.c: Здесь обрабатывается код /proc/hpc.
hpc/info.c: info-демон: отправляет и получает (multicast) информацию о нагрузке+использовании памяти в кластере.
hpc/init.c: Код инициализации: стартует демоны и т.п.
hpc/kernel.c: Основной код: здесь определяются все основные алгоритмы, решения и т.п.
hpc/load.c: Вычисление локальной нагрузки.
hpc/mig.c: Код, управляющий миграцией. Отвечает за любую миграцию: подчинённая->удалённая, удалённая->подчинённая; удалённая->удалённая.
hpc/prequest.c: обрабатывает запросы процессов: сигналы, память и т.п.
hpc/remote.c: Код, который исполняет процесс, будучи перемещённым: системные вызовы, передача управления и т.п.
hpc/rinode.c: всё, что относится к разделу fs/: в основном используется для DFSA
hpc/service.c: настройка демонов, выделение памяти и т.п.
hpc/syscalls.c: здесь происходит обработка удалённых системных вызовов
hpc/ucache.c: работа с ucache: в основном касается mm/ и fs/.
прочие файлы, например как auto_syscalls.c, alternate.c генерируются во время компиляции.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |