Энциклопедия разработчика модулей ядра Linux | страница 45



9. Параметры модуля: Вы объявляете параметры модуля как глобальные переменные. В 2.2 Вы должны также использовать MODULE_PARM, чтобы объявить их тип. Это большое усовершенствование, потому что позволяет модулю получать параметры строкового типа, которые начинаются с цифр.

10. Симметричная многозадачность: Ядро больше не заперто внутри одного огромного spinlock, что означает что два процессора могут одновременно обрабатывать разные части ядра. Модули должны знать о SMP.

Что дальше?

Я мог бы легко добавить еще несколько глав в эту книгу. Я мог бы добавить главу о создании новых файловых систем, или о добавлении новых стеков протоколов (как будто имеется потребность в такой главе: вы должны рыть под землей, чтобы найти стек протоколов, не поддерижаемый Linux). Я мог бы добавить объяснение ядерных механизмов, которых мы не коснулись, типа начальной загрузки или дискового интерфейса.

Однако, я выбрал не это. Моя цель состояла в том, чтобы обеспечить введение в тайны программирования модулей ядра и обучить общим методам для этой цели. Для людей, серьезно заинтересованных программированием ядра, я рекомендую список ресурсов на: http://jungla.dit.upm.es/~jmseyas/linux/kernel/hackers-docs.htm. Также, как сказал Linus, самый лучший путь состоит в том, чтобы прочитать исходный текст самостоятельно.

Если вы заинтересованы в большом количестве примеров коротких модулей, я рекомендую журнал "Phrack". Даже если вы не заинтересованы защитой, модули имеют хорошие примеры того, что Вы можете делать внутри ядра, и они достаточно короткие, чтобы не требовать слишком много усилий для понимания.

Я надеюсь, что я помог Вам в ваших попытках стать лучшим программистом. И, если Вы пишете полезные модули для ядра, я надеюсь, что Вы издаете их под GPL, так что я тоже смогу их использовать.

Goods and Services

Честно говоря, я так и не понял, что именно в данном разделе хотел сказать автор, так что привожу без перевода.

I hope nobody minds the shameless promotions here. They are all things which are likely to be of use to beginning Linux Kernel Module programmers.

Получение книги в бумажном виде

Издательство Coriolis group собиралось печатать эту книгу летом 1999 года. Правда, на английском языке. Попробуйте ее найти, если считаете нужным иметь бумажную копию.

Поблагодарите автора

Это свободно распространяемый документ. Вы не имеете никаких обязательств кроме указанных GNU Public License (GPL) (Приложение   E). Однако, если Вы считаете нужным как-то отблагодарить за получение этой книги, имеется несколько способов, которые Вы могли бы использовать.