Click to See Complete Forum and Search --> : System.map etc...
derekl
01-06-2001, 07:35 PM
Can someone explain to me how the System.map and modules.conf files relate to a specific kernel? I initially installed Red Hat 7.0 with the 2.2.16 kernel. I recently downloaded the 2.4.0 kernel and installed it. Basically all I did was compile it copied the bzImage file to /boot as vmlinuz-2.4.0 and added a lilo entry for the new kernel. I did nothing with either System.map or modules.conf but I can boot either kernel with no problem. Are these files specific to a kernel version? If so, how come I'm not having any problems booting either kernel?
klamath
01-06-2001, 07:43 PM
They are specific to a particular kernel.
Try running a command line 'top' or 'ps', which needs to access some of the kernel's data structures. You should get a warning referring to System.map, although the commands will probably still work.
------------------
- Klamath
Get my GnuPG Key Here (http://klamath.dyndns.org/mykey.asc)
Looking for an open source project to contribute to? Check out the Better Bulletin Board (http://bbb.sourceforge.net)
derekl
01-06-2001, 07:46 PM
Originally posted by klamath:
They are specific to a particular kernel.
Try running a command line 'top' or 'ps', which needs to access some of the kernel's data structures. You should get a warning referring to System.map, although the commands will probably still work.
If they are specifict, how do you specify which file goes with which kernel? I did not see any entries in lilo.conf which would allow you to specify this.
forrest
01-06-2001, 11:34 PM
i was sorta curious about this as well. how does it know what system map file goes with which kernel?
DrDrake
01-07-2001, 02:25 AM
Bumpin this up. I would also like to know about system.map. In my linux book here (linux network 247) it has no mention of system.map in the kernel compliation section.
DrDrake
Strike
01-07-2001, 02:37 AM
Seems to me that it's mostly just used for kernel debugging (you can check out all the instances of "System.map" in the Linux kernel here (http://lxr.linux.no/search?string=system.map)).
klamath
01-07-2001, 03:08 AM
Strike - you'll get much better results if you search with the correct capitalization: http://lxr.linux.no/search?string=System.map
------------------
- Klamath
Get my GnuPG Key Here (http://klamath.dyndns.org/mykey.asc)
Looking for an open source project to contribute to? Check out the Better Bulletin Board (http://bbb.sourceforge.net)
DrDrake
01-07-2001, 12:31 PM
Well I guess the important thing to note is that unlike the kernel we can put it there after boot, that its not vital to booting..
derekl
01-07-2001, 12:39 PM
Yeah, I kind of reached the conclusion it was not critical for booting. Otherwise you would have to know which kernel you were going to boot on restart so you could make System.map point to the correct file. This could lead to real problems if for some reason you ended up with an unbootable kernel and no way to change the System.map file back to the version required for a previously working kernel.
derekl
01-07-2001, 01:27 PM
I'll try to summarize what I think of learned in doing a little research. It looks like System.map is a map of kernel function entry points that is useful for manually determining where kernel crashes occured using the stack trace etc... If that's the case it seems to me that as long as you can identify the correct System.map file that goes with the currently running kernel you should be OK. I'm sure there are some commands, can anyone name some examples, that make use of the System.map file for one reason or another which would report incorrect results if the System.map file did not correspond to the currently running kernel. But it seems like having the wrong System.map file would not be critical to normal kernel operation.
Comments?