[pso] logging in kernel space

George Ciobanu cdangeorge at yahoo.com
Mon Jun 1 18:21:12 EEST 2009


Daca ai nevoie sa transmiti informatie one-way de la kernel catre userspace, foloseste un character device si defineste-ti niste packete simple care sa-ti acopere toate nevoile tale. Nu folosi logging-ul ca sa transmiti informatie.

Daca doar ai nevoie sa de logging foloseste syslogd. Daca ai surse multiple, prefixeaza-le cu ceva de genul [logger1]. Un simplu grep ti-ar rezolva probleme cu fisiere separate.

George




________________________________
From: Bogdan Tenea <tenea.bogdan at gmail.com>
To: Proiectarea Sistemelor de Operare <pso at cursuri.cs.pub.ro>
Sent: Monday, June 1, 2009 5:42:52 PM
Subject: Re: [pso] logging in kernel space

Am mai gasit un exemplu la http://www.linuxjournal.com/article/8110 insa acum mai nou imi da ca nu e definit sys_open :)
Hotararea cu care vor sa ma convinga ca nu e bine sa fac asa cred ca pana la urma o sa ma impinga sa folosesc sysfs :(


2009/6/1 Bogdan Tenea <tenea.bogdan at gmail.com>

Daca totusi vreau sa fac asta :D cum pot sa fac ?
Am luat exemplul de la http://lkml.org/lkml/2006/11/7/123 si imi da niste oopsuri destul de urate la "putname"


2009/6/1 Razvan Deaconescu <razvan.deaconescu at cs.pub.ro>

On Mon, 2009-06-01 at 14:33 +0300, Bogdan Tenea wrote:

> As avea nevoie sa creez mai multe surse de logging, sa trimit tot in
> kern.log nu ma ajuta foarte mult. Ramane cel mai safe sa scriu direct
> in fisiere?


In general nu este indicat sa scrii direct in fisiere. E nevoie sa
folosesti wrappere peste apeluri de sistem in cadrul nucleului.

Cel mai bine este, din cunostintele mele, sa folosesti modelul klogd:
* scrii din kernel-space mesaje in /proc[1]
* folosesti un daemon/proces in user-space care citeste mesajele din
fisierele din /proc (eventual folosind un select) si le stocheaza in
niste fisiere specializate

Alternativ, poti folosi socketi netlink[2].

Razvan

[1] http://www.faqs.org/docs/kernel/x716.html
[2] http://www.linuxjournal.com/article/7356


_______________________________________________
pso mailing list
pso at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/pso/attachments/20090601/1cca366f/attachment-0001.htm>


More information about the pso mailing list