> Je voulais juste savoir ce que voulais dire ksymoops > dans /var/log >
c'est marrant je me suis pos� la m�me question hier ! Vu que mon r�pertoire ksymoops faisait 130 Mo j'ai cherch� avant de tout virer, voil� ce que j'ai trouv� ( � http://groups.google.fr/groups?hl=fr&lr=&ie=UTF-8&threadm=p6rk8amwj7z.fsf%40platon.univ-lille1.fr&rnum=1&prev=/groups%3Fhl%3Dfr%26lr%3D%26ie%3DISO-8859-1%26q%3D%252Fvar%252Flog%252Fksymoops%252F%26btnG%3DRecherche%2BGoogle%26meta%3Dgroup%253Dfr.* ) "Le noyau a plusieurs m�thodes de d�tection de ses propres erreurs (qu'elles soient dues � ses bugs ou � un mat�riel au comportement al�atoire), et la plus courante est ce qu'on appelle un "oops". Typiquement, un morceau de code du noyau acc�de � la m�moire d'adresse 0, ce qui pour un programme classique voudrait dire "segmentation fault" imm�diate. Le noyau intercepte l'exception soulev�e par le mat�riel, s'aper�oit de son incurie, et veut l'indiquer, en cr�ant un "oops", c'est-�-dire quelques messages du noyau qui indiquent diverses informations sur l'�tat de la machine au moment du oops. Parmi ces informations, il y a le contenu des registres et le "backtrace" sur la pile, ce qui donne l'adresse de l'instruction qui a d�clench� l'erreur, et les adresses des diff�rents appels de fonctions qui ont amen� jusqu'� cette instruction. Tout �a c'est bien joli, mais dans la pratique, celui qui veut d�bugguer son noyau voudrait bien savoir le nom de la fonction o� sa se passe, et pas seulement son adresse dans le code compil� du noyau (cette adresse pouvant changer � chaque compilation). Il y a donc, d'habitude, un fichier System.map qui indique, pour chaque fonction, son adresse (par exemple, dans un noyau que j'ai sous la main, la fonction sys_iopl() du noyau est � l'adresse 0xc010c394). Le programme ksymoops, fourni avec les sources du noyau (dans linux/scripts/ksymoops/), s'occupe de prendre un oops, un System.map, et de traduire les adresses num�riques en adresses symboliques plus utiles pour le programmeur (par exemple, il transformera 0xc010c3b0 en <sys_iopl+1c>, indiquant que c'est � l'adresse 0x1c par rapport au d�but de la fonction sys_iopl()). Tout cela marche bien pour le noyau lui-m�me. Mais il y a les modules : les modules, tant qu'ils ne sont pas charg�s, n'ont pas d'adresse, et m�me, l'adresse � laquelle sera le module (et donc les fonctions qu'il d�finit) d�pend des autres modules charg�s pr�c�demment et de la m�moire allou�e par le noyau, autrement dit, du sens du vent. C'est non pr�dictible tant que le module n'est pas charg� effectivement. En cons�quence, tu as quelque chose dans ton syst�me qui, au moment du chargement d'un module, envoie ses symboles (les adresses des fonctions) dans un fichier dans /var, pour que tu puisses, au cas o� il y aurait un bug dans le module, savoir exactement o� et le d�bugguer. Dans la mesure o� tu ne savais pas ce qu'�tait ksymoops, j'en d�duis que tu n'as pas la moindre intention de d�bugguer le noyau, et donc tu peux sans probl�me effacer tous ces fichiers qui ne te serviront jamais � rien. Le g�n�rateur de ces fichiers doit �tre cach� dans un script lanc� par modprobe depuis le /etc/conf.modules, ou �ventuellement dans une crontab ; il ne te reste qu'� le trouver et � l'anihiler. --Thomas Pornin " > Et oui, et aussi comment �a ce prononce parce > qu'actuellement je prononce �a : > > Kazimoumoup�Esse > kassim-oups pour moi ! > Merci d'avance ! > > > -- > _ _ _ ___ _ ____ > _ > ____ | \ | | (_) ___ / _ \ | | / __ \ > | | ____ > ____ |____|| \| | | | / __| | | | | | | / / _` > | / __) |____| ____ > |____||____|| |\ | | | | (__ | |_| | | | | | (_| > | \__ \ |____||____| > |_| \_| |_| \___| \___/ |_| \ > \__,_| ( / > \____/ > |_| > > > -- > To UNSUBSCRIBE, email to > [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact > [EMAIL PROTECTED] > ___________________________________________________________ Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en fran�ais ! Yahoo! Mail : http://fr.mail.yahoo.com

