Solved

Segemntation fault

Posted on 2010-08-17
8
1,013 Views
Last Modified: 2013-11-25
Hi,
I am running a script which calls the COBOL program on AIX but it throws an error saying "segmentation fault"..When I compile and link the COBOL program seperately it links fine but when I run it thorugh script it throws "segmentation fault eror"

1) Any idea on how to fix it?
2) As per my knowledge when there is a core dump..it creates a core file..But I could not see the core file as well.
0
Comment
Question by:r4ranjor
8 Comments
 
LVL 2

Accepted Solution

by:
uscshaggy earned 500 total points
ID: 33461552
Segmentation fault means your program is trying to follow a NULL pointer. Since it fails in the script, but not standalone, I would check the environment inside the script versus when you launch it manually.  Maybe some needed variable is not set in the script's environment.

There should be a core file created, though, as you expected.  You should search the whole system for core files in case it got put in an unexpected directory (working directory in the script might be different than yours).  Or check your ulimits to make sure the core file is allowed to be written out and is not hitting a size limit.
0
 
LVL 25

Expert Comment

by:madunix
ID: 33461598
try looking at ulimit and filesystesm
0
 
LVL 10

Expert Comment

by:Martin_J_Parker
ID: 33463333
For core dump check "ulimit -a" to see if the core file size is set to 0.
If so you can set it to something large like "ulimit -c 1000000000"

It is possible that you might have an uninitialised variable or pointer which is 0 or NULL when run from a shell but picks up some random value from memory when run in a different way.
0
Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 25

Expert Comment

by:madunix
ID: 33463405
try increasing ulimit to unlimited but on the other hand IMO its strange for an program/software  to set this limit to unlimited
0
 

Author Comment

by:r4ranjor
ID: 33470992
HI,

I still could not find out the solution for this..Even I cannot see the coredump file as the coredump size is set to zero...

Any help in resolving this would be highly appreciated..
0
 
LVL 25

Expert Comment

by:madunix
ID: 33472109
0
 
LVL 2

Expert Comment

by:uscshaggy
ID: 33472266
Can you increase the core file size limiit to unlimited or some large size to allow it to generate?

Remember to check/set both soft and hard ulimits:

ulimit -Hc unlimited
ulimit -c unlimited
0
 
LVL 5

Expert Comment

by:shajithchandran
ID: 33473410
Please check the path where the core file will be generated.

you can get the path using syscorepath -g  
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
CPU monthly average? 12 132
Solaris 10.  Nmap installation fails 2 71
Remote Change Dates on AIX Automation 7 69
Searching File Names and Eliminating Duplicates in Linux 4 75
When you do backups in the Solaris Operating System, the file system must be inactive. Otherwise, the output may be inconsistent. A file system is inactive when it's unmounted or it's write-locked by the operating system. Although the fssnap utility…
I promised to write further about my project, and here I am.  First, I needed to setup the Primary Server.  You can read how in this article: Setup FreeBSD Server with full HDD encryption (http://www.experts-exchange.com/OS/Unix/BSD/FreeBSD/A_3660-S…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

861 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question