Вградени варианти на стандарта C99 и GNU

варианти

Здравейте на всички Заинтересувах се от един въпрос относно модификаторите на вградени функции за стандартите C99 и GNU

Първото нещо, което ме обърка беше откъс от книгата

Вградените функции на тялото се декларират с помощта на ключовите думи staic и inline в декларацията на функцията. Например,

Декларацията на функция трябва да бъде декларирана преди всяко извикване към нея, в противен случай под-

настройка на тялото няма да се извърши. Стандартната техника е разполагането на функции

със заместване на тялото в заглавните файлове. Тъй като функцията е декларирана като

static, не се създава екземпляр на функцията без заместване на тялото. Ако

функция със заместване на тялото се използва само в един файл, тогава може

бъде поставен в горната част на този файл.

Но по-късно попаднах на статия http://www.greenend.org.uk/rjk/2003/03/inline.html в нея също се обсъждат варианти в използването на вградени функции (раздел от стандарта C99) и ако преведох текста правилно, тогава моите заключения са следните: където е дефиниран и деклариран, но кодът е създаден, така че да може да бъде изтеглен от други модули, където вече ще бъде NON-IN CLUDED static inline - изобщо не разбрах разликата от обичайния inline

PS: От какъв стандарт се ръководят разработчиците на ядрото на Linux? защото тук е заглавката на ядрото