Was bedeuten _ bzw __ vor Typ/ Variablen ?

starbright

Grünschnabel
Kann mir jemand beim Verständnis helfen? Ein Beispiel aus einem Buch:

static int __init mod_init(void)
{ ...
}


static ssize_t driver_read( struct file *instanz, char __user *user, ...)
{...
]}

module_init( mod_init);
-----------------------------

also mod_init gibt int zurück, aber was soll das __init?
und was das char __user *user
 
Hallo,

so wie es aussieht willst du einen Linux Gerätetreiber schreiben?

Die __* Attribute sind eine Art Annotations um
a.) zusätzliche Compilerwarnings beim Kompilierprozess auszugeben oder
b.) dem Kernel zusätzliche Informationen mitzugeben

Schau dir doch mal /usr/include/linux/init.h und den folgenden Thread http://www.ussg.iu.edu/hypermail/linux/kernel/0306.0/1294.html durch, da erhälst du sicher aussagekräftigere Hilfe :)

Gruß,
RedWing
 
Zurück