2009-12-11 11 views
5

Dove posso trovare la famigerata lista.h dal kernel di Linux?lista del kernel Linux.h

Mi ricordo di averlo visto subito e non riesco a ritrovarlo per la vita di me. Sto facendo funzionare una scatola di Windows quindi sarebbe bello se tu potessi indicarmi un bel sito HTTP dove è ospitato :)

Grazie.

+0

Perché è infame? Solo perché è un nodo elenco intrusivo? Ho visto il tricksier in C, ad esempio un elenco "generico". Per usarlo #definisci alcune macro incluso il tipo di payload, quindi # include un'intestazione. Penso che potresti persino #includerlo più volte per creare più "istanziazioni". –

+0

flaged. 1) Non c'è list.c nel kernel di Linux. 2) list.h è buono. non infame. –

risposta

9

Vedere here per dettagli su Linux list.h.

1

Se tutto ciò che serve è dare uno sguardo al codice, lo Linux Cross Reference ti mostrerà tutto ciò che ti piace. Non vedo uno list.c lì da nessuna parte, però.

+0

È l'implementazione dell'elenco collegato del kernel. –

+1

Gli helper dell'elenco collegato sono macro e contenuti in list.h –

6

Rusty Russel (che ha lavorato all'implementazione del kernel di helper di elenchi doppiamente collegati) ha successivamente portato il lavoro a un set più generico di macro che può essere trovato su his ccan project. Ha anche la doppia licenza BSD/MIT, quindi puoi usarlo come vuoi. Notare la dipendenza da ccan containerof.

Potrebbe essere meglio per voi utilizzare quello nel collegamento, in quanto mantenuto separatamente dalla sua controparte del kernel.

Per quanto riguarda CCAN, pensano CPAN, ma per C.

Problemi correlati