On Fri, Jun 20, 2003 at 11:46:55PM +0200, Thomas Hertweck wrote:
Theorie eines Ahnungslosen: Ich könnte mir vorstellen, daß X ein Device-File in seinen virtuellen Speicher mmap-t, hinter dem kein Hauptspeicher steht, sondern vielleicht der Speicher der Graphikkarte.
Um ehrlich zu sein, ich zaehle mich auch zu den Ahnungslosen bei diesem Problem :-) Aber vielleicht erhellt uns ja noch jemand.
Bitte sehr: kris@valiant:~> ps axuwww| grep X root 1800 0.2 2.6 86432 6848 ? SL Jun19 5:18 /usr/X11R6/bin/X vt7 -auth /var/lib/xdm/authdir/authfiles/A:0-bH6HYe kris 2004 0.0 0.0 4472 0 ? SW Jun19 0:00 /bin/sh /usr/X11R6/bin/kde kris 17161 0.0 0.2 3544 568 pts/3 S 07:31 0:00 grep X kris@valiant:~> su - Password: valiant:~ # cd /proc/1800 valiant:/proc/1800 # cat maps 08048000-081c3000 r-xp 00000000 03:43 91110 /usr/X11R6/bin/XFree86 ^ Startadresse ^ Endadresse ^ Schreibgeschützt (kein w), daher shareable ^ Gemapped auf dieses Device ^ und diese Indode ^ mit diesem Offset in der Inode ^ Name der Inode, soweit bekannt 081c3000-081f5000 rw-p 0017b000 03:43 91110 /usr/X11R6/bin/XFree86 ^ Anderer Speicherbereich ^ Writeable ^ Selbe Datei, ^ anderer Offset Das zu dem o.a. Text-Segment gehoerende Datensegment 081f5000-08a0c000 rwxp 00000000 00:00 0 ^ Anderer Speicherbereich ^ Keine Datei als Mapping, also Swapfile als Backing Store nehmen. Das ist das zu der o.a. Datei gehoerende BSS-Segment. valiant:/proc/1800 # size /usr/X11R6/bin/XFree86 text data bss dec hex filename 1549510 202776 74400 1826686 1bdf7e /usr/X11R6/bin/XFree86 Jetzt die Libs: 40000000-40014000 r-xp 00000000 03:43 17036 /lib/ld-2.3.2.so 40014000-40015000 rw-p 00014000 03:43 17036 /lib/ld-2.3.2.so 40015000-4001c000 r-xp 00000000 03:43 115283 /usr/X11R6/lib/modules/fonts/libfreetype.so 4001c000-4001d000 rw-p 00006000 03:43 115283 /usr/X11R6/lib/modules/fonts/libfreetype.so Ein paar kleinere Speicherblöcke einblenden: Speicheradresse hier: vvvvvvvv 4001d000-4001e000 rw-s d4680000 03:43 4645 /dev/mem 4001e000-4001f000 rw-s d4601000 03:43 4645 /dev/mem 4001f000-40020000 rw-s d4681000 03:43 4645 /dev/mem 40020000-40021000 rw-s d40c0000 03:43 4645 /dev/mem 40021000-40022000 rw-s d4001000 03:43 4645 /dev/mem 40022000-40023000 rw-s 05c5d000 03:43 10697 /dev/nvidia0 Mehr Libs: 40027000-40034000 r-xp 00000000 03:43 17092 /lib/libz.so.1.1.4 40034000-40036000 rw-p 0000c000 03:43 17092 /lib/libz.so.1.1.4 40036000-40057000 r-xp 00000000 03:43 15318 /lib/libm.so.6 40057000-40058000 rw-p 00020000 03:43 15318 /lib/libm.so.6 40058000-40059000 rw-p 00000000 00:00 0 40059000-4005b000 r-xp 00000000 03:43 17095 /lib/libdl.so.2 4005b000-4005c000 rw-p 00001000 03:43 17095 /lib/libdl.so.2 4005c000-4018b000 r-xp 00000000 03:43 17103 /lib/libc.so.6 4018b000-4018f000 rw-p 0012f000 03:43 17103 /lib/libc.so.6 4018f000-40192000 rw-p 00000000 00:00 0 40192000-4019d000 r-xp 00000000 03:43 15349 /lib/libnss_compat.so.2 4019d000-4019e000 rw-p 0000a000 03:43 15349 /lib/libnss_compat.so.2 4019e000-401b0000 r-xp 00000000 03:43 15334 /lib/libnsl.so.1 401b0000-401b1000 rw-p 00011000 03:43 15334 /lib/libnsl.so.1 401b1000-401da000 rw-p 00000000 00:00 0 VGA Textmode Speicher (64 KB): vvvvvvvv 401da000-401ea000 rw-s 000a0000 03:43 4645 /dev/mem 401ec000-40239000 r-xp 00000000 03:43 89045 /usr/lib/libfreetype.so.6.3.2 40239000-4023d000 rw-p 0004d000 03:43 89045 /usr/lib/libfreetype.so.6.3.2 4023d000-4023e000 rw-p 00000000 00:00 0 4023e000-402c1000 r-xp 00000000 03:43 115421 /usr/X11R6/lib/modules/extensions/libglx.so.1.0.4363 402c1000-402e3000 rw-p 00082000 03:43 115421 /usr/X11R6/lib/modules/extensions/libglx.so.1.0.4363 402e3000-402e4000 rw-p 00000000 00:00 0 402e4000-4077f000 r-xp 00000000 03:43 89939 /usr/lib/libGLcore.so.1.0.4363 4077f000-4078a000 rw-p 0049a000 03:43 89939 /usr/lib/libGLcore.so.1.0.4363 4078a000-407e1000 rw-p 00000000 00:00 0 Und hier der große Block (0x02000000): v Start v Ende v Memory 407e1000-427e1000 rw-s d6000000 03:43 10697 /dev/nvidia0 427e1000-427f1000 rw-s d0000000 03:43 10697 /dev/nvidia0 427f1000-42801000 rw-s d4800000 03:43 10697 /dev/nvidia0 42801000-42809000 rw-s 05e86000 03:43 10697 /dev/nvidia0 42809000-42910000 rw-s 00000000 00:05 0 /SYSV00000000 (deleted) 42910000-44910000 rw-s d6000000 03:43 10697 /dev/nvidia0 44910000-44a17000 rw-s 00000000 00:05 0 /SYSV00000000 (deleted) 44a17000-44a93000 rw-p 00000000 00:00 0 44ac4000-44ac6000 rw-p 000ad000 00:00 0 44e6e000-44e70000 rw-p 00457000 00:00 0 451e7000-451e9000 rw-p 007d0000 00:00 0 bffef000-c0000000 rwxp ffff0000 00:00 0 ^ Der Stack Kristian