![](https://seccdn.libravatar.org/avatar/c0f53bc933af43c7f9e69dc24b1df00b.jpg?s=120&d=mm&r=g)
On Mon, 9 Nov 1998, Michael Scheiba wrote:
und warum sollte der speicher nicht daran schuld sein?
Das ganze deutet zunächst auf ein unsauber programmiertes Programm hin (bzw das Programm bekommt Eingaben, welches es nicht korrekt interpretiert und kommt in einen nicht definierten Zustand ...)
neeeee, da muss ich mal energisch widersprechen: ein segfault wird doch nicht zwingend durch ein fehlerhaftes programm verursacht... das ist _so_ nicht richtig. auch durch fehlerhaften speicher oder durch falsches timing im Bios wird ein segfault verursacht.
Wenn "man" Deiner Meinung nach unsauber programmiert ist, versuche doch bitte den Bug auf Deiner Kiste zu reproduzieren.
hmm, wollt ich auch grad vorschlagen ;) also ich konnte es auf 6 rechnern mit unterschiedlichen distributionen/speicherausstattung/prozessor nicht nachvollziehen.
Schön und gut, aber mir leuchtet das auch nicht so ganz ein. Ein Segmentation Fault ist auf deutsch eine Segmentverletzung, also ein unerlaubter Speicherzugriff. Das bedeutet doch zu erst mal, daß versucht wurde auf eine gesperrte Speicheradresse zuzugreifen. Ob an dieser Stelle dann der Speicher defekt ist, ist doch eigentlich wieder eine andere Sache. Es geht doch hierbei um den "Adressierungsversuch" irgendeines Programms, oder? Mach ich da einen Denkfehler? mfg Peter Küchler -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/6cfe73092c75e663a1e499b42618fc13.jpg?s=120&d=mm&r=g)
Peter Küchler wrote:
Schön und gut, aber mir leuchtet das auch nicht so ganz ein. Ein Segmentation Fault ist auf deutsch eine Segmentverletzung, also ein unerlaubter Speicherzugriff. Das bedeutet doch zu erst mal, daß versucht wurde auf eine gesperrte Speicheradresse zuzugreifen. Ob an dieser Stelle dann der Speicher defekt ist, ist doch eigentlich wieder eine andere Sache.
Es geht doch hierbei um den "Adressierungsversuch" irgendeines Programms, oder?
Mach ich da einen Denkfehler?
IMO nicht, ich jedenfalls interpretiere diese Fehlermeldung genau so: Schutzverletzung im Hauptspeicher. Grüße Raphael Becker -- ___________ Powered by SuSE __________________ ___ /___(_)__________ _____ __ ___ ____/__|__ / Raphael __ / __ /__ __ \ / / /_ |/_/ ______ \ ___/_ < Becker _ /___ / _ / / / /_/ /__> < ____/ /______/ / /_____/_/ /_/ /_/\__,_/ /_/|_| /_____/_(_)____/ -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/c6ef9f885073696f99d7c35f4f41d269.jpg?s=120&d=mm&r=g)
Hi, Peter Küchler wrote:
[...] Schön und gut, aber mir leuchtet das auch nicht so ganz ein. Ein Segmentation Fault ist auf deutsch eine Segmentverletzung, also ein unerlaubter Speicherzugriff. Das bedeutet doch zu erst mal, daß versucht wurde auf eine gesperrte Speicheradresse zuzugreifen. Ob an dieser Stelle dann der Speicher defekt ist, ist doch eigentlich wieder eine andere Sache.
Es geht doch hierbei um den "Adressierungsversuch" irgendeines Programms, oder?
Mach ich da einen Denkfehler?
mfg
Peter Küchler
Mal angenommen ein SEGFault ist genau das was du annimmst, was ich auch vermute, aber nicht genau weiß... Was passiert denn, wenn auf den Speicher hardwaremäßig fehlerhaft weil z.B. zu schnell zugegriffen wird? Die CPU ließt irgendwelchen Mist ein und versucht den auszuführen. Das kann dann eben z.B. ein Schreibzugriff auf einen nicht erlaubten Speicherbereich sein. Und wenn die CPU z.B. fälschlicherweise nur noch NOPs als Befehl bekommen würde, rennt sie ebenfalls irgendwann über die erlaubte Speichergrenze weg. Ergo kann allgemein betrachtet unter gemachter Annahme ein SEGFault sowohl soft- als auch hardwaremäßig begründet sein. Grüße Andreas PS: falls ich mich irren sollte, nehme ich gerne Belehrungen entgegen ;-) *** kaestner@metronet.de *** -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/6cfe73092c75e663a1e499b42618fc13.jpg?s=120&d=mm&r=g)
Andreas wrote:
Hi,
Peter Küchler wrote:
[...] Schön und gut, aber mir leuchtet das auch nicht so ganz ein. Ein Segmentation Fault ist auf deutsch eine Segmentverletzung, also ein unerlaubter Speicherzugriff. Das bedeutet doch zu erst mal, daß versucht wurde auf eine gesperrte Speicheradresse zuzugreifen. Ob an dieser Stelle dann der Speicher defekt ist, ist doch eigentlich wieder eine andere Sache.
Es geht doch hierbei um den "Adressierungsversuch" irgendeines Programms, oder?
Mach ich da einen Denkfehler?
Mal angenommen ein SEGFault ist genau das was du annimmst, was ich auch vermute, aber nicht genau weiß...
Was passiert denn, wenn auf den Speicher hardwaremäßig fehlerhaft weil z.B. zu schnell zugegriffen wird? Die CPU ließt irgendwelchen Mist ein und versucht den auszuführen. Das kann dann eben z.B. ein Schreibzugriff auf einen nicht erlaubten Speicherbereich sein. Und wenn die CPU z.B. fälschlicherweise nur noch NOPs als Befehl bekommen würde, rennt sie ebenfalls irgendwann über die erlaubte Speichergrenze weg.
Ergo kann allgemein betrachtet unter gemachter Annahme ein SEGFault sowohl soft- als auch hardwaremäßig begründet sein.
Ich habe dazu mal die Seite <A HREF="http://radawana.cg.tuwien.ac.at/mail-archives/lll/199704/msg00410.html"><A HREF="http://radawana.cg.tuwien.ac.at/mail-archives/lll/199704/msg00410.html</A">http://radawana.cg.tuwien.ac.at/mail-archives/lll/199704/msg00410.html konsultiert, ich denke, sie gibt Aufschluß über die Problematik. Mfg Raphael Becker -- ___________ Powered by SuSE __________________ ___ /___(_)__________ _____ __ ___ ____/__|__ / Raphael __ / __ /__ __ \ / / /_ |/_/ ______ \ ___/_ < Becker _ /___ / _ / / / /_/ /__> < ____/ /______/ / /_____/_/ /_/ /_/\__,_/ /_/|_| /_____/_(_)____/ -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/c0f53bc933af43c7f9e69dc24b1df00b.jpg?s=120&d=mm&r=g)
On Fri, 11 Nov 2011, Andreas wrote:
Mal angenommen ein SEGFault ist genau das was du annimmst, was ich auch vermute, aber nicht genau weiß...
Was passiert denn, wenn auf den Speicher hardwaremäßig fehlerhaft weil z.B. zu schnell zugegriffen wird? Die CPU ließt irgendwelchen Mist ein und versucht den auszuführen. Das kann dann eben z.B. ein Schreibzugriff auf einen nicht erlaubten Speicherbereich sein. Und wenn die CPU z.B. fälschlicherweise nur noch NOPs als Befehl bekommen würde, rennt sie ebenfalls irgendwann über die erlaubte Speichergrenze weg.
Ergo kann allgemein betrachtet unter gemachter Annahme ein SEGFault sowohl soft- als auch hardwaremäßig begründet sein.
Ich glaube, ich weis was Du meinst. Eine Adresse ist ja auch nix anderes wie ein irgenwo im RAM liegender Wert. Wenn dieser jetzt durch defekten RAM verfälscht wird, an dieser Stelle also eine falsche Adresse steht, dann könnte die natürlich auch auf einen verbotenen Adressbereich zeigen. Tia, da könnte was drann sein... Übrigens habe ich gerade mal auf der HTML Seite nachgesehen, die der Raphael gepostet hat. Da steht eigentlich genau das was ich auch geschrieben habe. Trotzdem, an der Sache mit der falschen Adresse im kaputten RAM...da könnte was drann sein. mfg Peter Küchler -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/37906ab85d094867f4eba231cf56ee57.jpg?s=120&d=mm&r=g)
On Fri, Nov 11, 2011 at 12:20:46AM -0700, Andreas wrote:
Hi,
Peter Küchler wrote:
[...] Schön und gut, aber mir leuchtet das auch nicht so ganz ein. Ein Segmentation Fault ist auf deutsch eine Segmentverletzung, also ein unerlaubter Speicherzugriff. Das bedeutet doch zu erst mal, daß versucht wurde auf eine gesperrte Speicheradresse zuzugreifen. Ob an dieser Stelle dann der Speicher defekt ist, ist doch eigentlich wieder eine andere Sache.
Es geht doch hierbei um den "Adressierungsversuch" irgendeines Programms, oder?
Mach ich da einen Denkfehler?
mfg
Peter Küchler
Mal angenommen ein SEGFault ist genau das was du annimmst, was ich auch vermute, aber nicht genau weiß...
Was passiert denn, wenn auf den Speicher hardwaremäßig fehlerhaft weil z.B. zu schnell zugegriffen wird? Die CPU ließt irgendwelchen Mist ein und versucht den auszuführen. Das kann dann eben z.B. ein Schreibzugriff auf einen nicht erlaubten Speicherbereich sein. Und wenn die CPU z.B. fälschlicherweise nur noch NOPs als Befehl bekommen würde, rennt sie ebenfalls irgendwann über die erlaubte Speichergrenze weg.
Ergo kann allgemein betrachtet unter gemachter Annahme ein SEGFault sowohl soft- als auch hardwaremäßig begründet sein.
Grüße
Andreas
PS: falls ich mich irren sollte, nehme ich gerne Belehrungen entgegen ;-)
rein erfahrungsmaessig muss ich sagen: als bei mir die speichersteine defekt waren, kam er gar nicht mehr bis zu einem segfault. er schrieb einen 1/2 panic kernel ins logfile und da stand die maschine auch schon ...
*** kaestner@metronet.de ***
-- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
mfg, markus -- <A HREF="http://www.rootshell.com/hacked_sites/www.rootshell.com/"><A HREF="http://www.rootshell.com/hacked_sites/www.rootshell.com/</A">http://www.rootshell.com/hacked_sites/www.rootshell.com/ -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
![](https://seccdn.libravatar.org/avatar/d869c3717b03ce12a6c41dd7be61fdc3.jpg?s=120&d=mm&r=g)
Hello folks, zunächst mal, damit keiner denkt, ich sei so unhöflich, wie's ausschaut: Herzlichen Dank bei allen, die mir Tips und Hinweise mit meinem Segmentation Fault gegeben haben. Und dann gleich noch ein ganz ganz ganz dickes Danke an alle die mir mit meinem library Problem weiterhelfen konnten (v.a Sören) Die Lösung war wie immer einfach, in beiden Fällen. Also das lib Problem hatte seine Ursache in den nichtvorhandenen Headerdateien unter /usr/include/linux. Da stand eindsam eine joystick.h rum und alles andere fehlte. Komisch ist nur, daß ich die Kernelsourcen mitinstalliert habe, und den Kernel auch schonmal neu kompiliert habe. Da hat nix gemotzt. Naja. Es funzt! Ich habe die libc5-2.7.1-i386.rpm und libd5... gepatcht und siehe da, die Dateien waren plötzlich vorhanden. Warum die bei der (wiederholten) Installation via YaST nicht da waren, weiß der Kuckuck! Mein zweites Problem hat sich genauso in Luft aufgelöst. Die /usr links auf /usr2 habe ich alle gelöscht. Zack, plötzlich gab's kein Segmentation Fault mehr. Das hat mich allerdings erstaunt. Denn wie schon oft gesagt, zeigt ja Segmentation Fault einen Hardwarefehler an. Ich habe nur eine rudimentäre Theorie dazu. Ein Link war von /usr/X11R6 auf /usr2/X11R6 gesetzt, genauso einer för /usr/doc auf /usr2/doc. Das ganze war, wie (wer weiß ich nicht mehr, ich glaube Sören) erklärte ja Unfug. ich hab jetzt /usr2 -
/usr/local gelinkt. Darauf sind meine Nicht-SuSE Anwendungen installiert. Ist es möglich, daß dieser /usr/doc Link den Segmentation Fault verursachte, weil er ins Leere ging? Meine andere Vermutung ist, daß eventuell ein "Kreisverkehr" mit /usr/X11R6 enstanden sein könnte. Allerdings ist das unwahrscheinlich, weil sonst wohl gar nix mehr gegangen wäre.
Weiß meint Ihr denn dazu? Ciao, Klaus -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
participants (5)
-
beckerra@rumms.uni-mannheim.de
-
kaestner@metronet.de
-
klaus_debes@t-online.de
-
mfischer@josefine.ben.tuwien.ac.at
-
peter.kuechler@frankfurt.netsurf.de