Linux-Development-Sys Digest #738, Volume #7      Tue, 4 Apr 00 15:13:22 EDT

Contents:
  Re: To core or not to core - You tell me (Richard Bos)
  Re: To core or not to core - You tell me (Phil Edwards)
  porting WIN32 to UNIX (Linux) (Johannes Hacker)
  Re: To core or not to core - You tell me (Phil Edwards)
  Re: To core or not to core - You tell me (Selim Levy)
  Re: To core or not to core - You tell me (Rich Teer)
  Re: To core or not to core - You tell me (Fei Li)
  Newbie in module programming on mandrake 7.0 ([EMAIL PROTECTED])
  Time zone botch? (Jim Haynes)
  Re: How compatible is Linux with .. Linux (Francesco 'Kinkie' Chemolli)
  Re: porting WIN32 to UNIX (Linux) (John Marshall)
  TCP_KEEPALIVE and TCP_MAXRT ("J.P. Martin-Flatin")
  Re: Random system hangs on Compaq P166/2.2.14 ("Tim Haynes")
  Re: To core or not to core - You tell me (John Gluck)
  mmap PROT_NONE proposal ([EMAIL PROTECTED])
  Core dumping is halting console ([EMAIL PROTECTED])
  Re: i need to redefine malloc() ([EMAIL PROTECTED])
  Omnis TechCorp. Announces Agreement With Caldera Systems to Include OMNIS Studio in 
Caldera eDesktop Product Release  ("Richard D")
  Re: To core or not to core - You tell me (Markus Gyger)
  Re: porting WIN32 to UNIX (Linux) (Peter Mortensen)

----------------------------------------------------------------------------

From: [EMAIL PROTECTED] (Richard Bos)
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: Tue, 04 Apr 2000 16:15:11 GMT

[EMAIL PROTECTED] (Harish K Chandraia) wrote:

> #include <stdio.h>
>  
> int main()
> {
>         struct def
>         {
>                 int a;
>         };
>  
>         struct def *ptr;
>  
>         ptr = NULL;
>  
>         printf("%d\n", ptr->a);
> }
>  
>  
>     From all that you know about programming what do you think should
> happen when I try to compile and execute the above program.

Nobody knows. You're dereferencing a NULL pointer; that means undefined
behaviour, and that means anything can happen. If your compiler thinks
it should print something, that's OK. If he thinks it should segfault,
that's OK. If it thinks it should email your boss with a request for
wild sex in the cloak room at eleven, that's... maybe not OK, but
certainly allowable as far as the ISO C standard is concerned. In short,
nobody can tell unless they know something about your compiler they
shouldn't need to know.

Richard

------------------------------

From: [EMAIL PROTECTED] (Phil Edwards)
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: 4 Apr 2000 12:31:16 -0400


Harish K Chandraia <[EMAIL PROTECTED]> wrote:
+ Hi All,
+  
+     I hope that somebody can tell me what is going on here. I
+ have the following C program

So why did this go to a C++ newsgroup also?


+         ptr = NULL;
+         printf("%d\n", ptr->a);

[cue explanation of "undefined behavior"]

A segmentation fault doesn't always mean a core dump.  If your shell has
disabled subprocesses from dumping core, then you could have written

    int main() { abort(); }

and you still wouldn't get a core file.  See the man page for your shell
on how to print resource limits; if it's one of the csh-family you'll use
"limit" and if it's one of the sh-family you'll use "ulimit".  (I don't
recall the arguments offhand.)

I can't speak for uic.edu, but many universities disable core files by
default, since most users don't know what to do with them, and they take
up horrendous amounts of space for a school that's strapped for diskspace
(all schools are always strapped for diskspace :-).  They figure, if you
need a core file, you can re-enable it yourself.


Luck++;
Phil


------------------------------

From: Johannes Hacker <[EMAIL PROTECTED]>
Crossposted-To: 
comp.os.linux.development.apps,comp.os.linux.development,comp.os.ms-windows.programmer.win32,comp.os.ms-windows.programmer.misc,comp.unix.programmer,comp.programming
Subject: porting WIN32 to UNIX (Linux)
Date: Tue, 04 Apr 2000 18:32:36 +0200

Hello!

I am currently working on a project where I have to port a WinNT
Application to Linux. I am mainly focused on threads, processes,
synchronization and messaging between processes. I've heard about the
POSIX-Standard, but I really don't know where to begin.
Are there any documents, links, ... available about porting in general?
This problem sounds not so unusual, I am sure this has been done before!

kind regards,            jo hacker.



------------------------------

From: [EMAIL PROTECTED] (Phil Edwards)
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: 4 Apr 2000 12:37:33 -0400


Richard Bos <[EMAIL PROTECTED]> wrote:

+ If your compiler thinks
+ it should print something, that's OK. If he thinks it should segfault,
+ that's OK. If it thinks it should email your boss with a request for
+ wild sex in the cloak room at eleven, that's... maybe not OK, but
+ certainly allowable as far as the ISO C standard is concerned.

I'll be adding another -f option to my local copy of gcc that actually
implements this behavior.  I doubt that it will get used much, but hey.


Phil


------------------------------

From: Selim Levy <[EMAIL PROTECTED]>
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: Wed, 05 Apr 2000 00:42:50 +0800
Reply-To: [EMAIL PROTECTED]

Harish K Chandraia wrote:
> 
> Hi All,
> 
>     I hope that somebody can tell me what is going on here. I
> have the following C program
> 
> #include <stdio.h>
> 
> int main()
> {
>         struct def
>         {
>                 int a;
>         };
> 
>         struct def *ptr;
> 
>         ptr = NULL;
> 
>         printf("%d\n", ptr->a);
> }
> 
> 
>     From all that you know about programming what do you think should
> happen when I try to compile and execute the above program. I have executed
> this piece of code on the following four machines(posting about my
> results will follow). I am not trying to be a smart ass here but I am
> only interested in knowing what you people think would happen because
> what I thought would happen didn't happen on two of the four machines.

<snip>

You're heading into undefined behaviour country.  It is about as
predictable as the adventures of Alice in Wonderland.  Is the Cheshire
cat (sp?) a cat?  It looks like one but can disappear...  Anything can
happen when you venture into undefined behaviour.  If your computer
decides to reformat the harddrive (assuming one exists) and install the
Commodore-64 OS, this wouldn't go againt the C standard.  (Although it
may be slightly strange...)

What were you expecting and why were you expecting anything at all?  If
you rerun these programs a number of times, you may not even get the
same results on the same machine.

Cheers,
Selim
-- 
"Mille millions de mille sabords!"
Capitaine Haddock

------------------------------

Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
From: Rich Teer <[EMAIL PROTECTED]>
Subject: Re: To core or not to core - You tell me
Date: Tue, 04 Apr 2000 16:40:32 GMT

On 4 Apr 2000, Harish K Chandraia wrote:

> #include <stdio.h>
>  
> int main()
> {
>         struct def
>         {
>                 int a;
>         };
>  
>         struct def *ptr;
>  
>         ptr = NULL;
>  
>         printf("%d\n", ptr->a);
> }
>  
>  
>     From all that you know about programming what do you think should
> happen when I try to compile and execute the above program. I have executed
> this piece of code on the following four machines(posting about my
> results will follow). I am not trying to be a smart ass here but I am
> only interested in knowing what you people think would happen because
> what I thought would happen didn't happen on two of the four machines.

On Suns, you'd get a core dump, as de-referencing a NULL pointer is considered
an error by default (rightly so, I think).  Other OSes (for examples an older
HP-UX) let you get away with it, and return 0.

I think that's bad, as it leads to sloppy programming - and I've been on the
receiving end of such crappy code when I had to port a huge suite of programs
from HP-UX to Solaris, and the lusers were wondering why their home-grown code
was suddenly crashing all the time.  Needless to say, my opinion of the programmers
in question is not very high!

--
Rich Teer

NT tries to do almost everything UNIX does, but fails - miserably.

The use of Windoze cripples the mind; its use should, therefore, be
regarded as a criminal offence.  (With apologies to Edsger W. Dijkstra)

If it ain't analogue, it ain't music.

Voice: +1 (250) 763-6205
WWW: www.rite-group.com


------------------------------

From: Fei Li <[EMAIL PROTECTED]>
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: Tue, 04 Apr 2000 12:12:52 -0400

Harish K Chandraia wrote:

> Hi All,
>
>     I hope that somebody can tell me what is going on here. I
> have the following C program
>
> #include <stdio.h>
>
> int main()
> {
>         struct def
>         {
>                 int a;
>         };
>
>         struct def *ptr;
>
>         ptr = NULL;
>
>         printf("%d\n", ptr->a);
> }
>
>
>     From all that you know about programming what do you think should
> happen when I try to compile and execute the above program. I have executed
> this piece of code on the following four machines(posting about my
> results will follow). I am not trying to be a smart ass here but I am
> only interested in knowing what you people think would happen because
> what I thought would happen didn't happen on two of the four machines.

    What was it that you were expecting?  I got a segmentation fault.

>
>

--
  *  Fei Li,                | (757)-865-0818                   *
  *  High Technology Corp.  | [EMAIL PROTECTED]                 *
  *  28 Research Drive      | http://www.htc-tech.com/home/fli *
  *  Hampton, VA23666       |                                  *




------------------------------

From: [EMAIL PROTECTED]
Subject: Newbie in module programming on mandrake 7.0
Date: Tue, 04 Apr 2000 16:37:17 GMT

PGCC generate lots of errors on a perfect "hello world" application. All
the errors are complaining syntax error in "fs.h", "kernel.h", etc.

I checked PGCC faq, it gives one possible problem: old libc5 installed.
But PGCC on Mandrake 7.0 depends on glibc 2.1. This is obvoisly not the
case. Could you give me s suggestion?

Thanks.

Ken.


Sent via Deja.com http://www.deja.com/
Before you buy.

------------------------------

Subject: Time zone botch?
Reply-To: [EMAIL PROTECTED]
From: [EMAIL PROTECTED] (Jim Haynes)
Date: Tue, 04 Apr 2000 16:55:40 GMT

This is on a Red Hat 5.2 system.  I am in central (U.S.) time zone.
I ran the following test program.  It prints EST as the time zone
name.  If I change the link /etc/localtime to point to other files
in the zoneinfo/US directory it gives the correct time zone: EST,
MST, or PST.  But in Central it gives EST.  I haven't figured out
what makes those zoneinfo files to know how to look at it.

#include <time.h>
main()
{
        time_t t;
        time(&t);
        /* printf("%s\n", ctime(&t)); */
        localtime(&t);
        printf("%s\n", *tzname);
}

------------------------------

From: Francesco 'Kinkie' Chemolli <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.development.apps
Subject: Re: How compatible is Linux with .. Linux
Date: 03 Apr 2000 18:29:13 +0200
Reply-To: [EMAIL PROTECTED]

Armin Steinhoff <Armin@Steinhoff_de> writes:

> In article <[EMAIL PROTECTED]>, Tor says...
> >
> [ clip ..]
> >
> >Most likely on every Linux distribution you can find.  You would want
> >to test it on at least the major classes of distributions, as laid out
> >in the following hierarchy:
> >
> >     - RedHat 6.0 and above, plus derivatives:
> >         - ManDrake 7.0
> >         - Caldera OpenLinux
> >         - SuSE Linux
> 
> I don't believe that SUSE Linux is a drivate from RedHat 6.0 ...

The only thing they share is that they both are RPM-based.

-- 
  /Kinkie

Se sulla scatola c'e` scritto "Per windows 95 e superiori", dovrebbe
funzionare sotto Linux, vero?

------------------------------

From: John Marshall <[EMAIL PROTECTED]>
Crossposted-To: 
comp.os.linux.development.apps,comp.os.linux.development,comp.os.ms-windows.programmer.win32
Subject: Re: porting WIN32 to UNIX (Linux)
Date: Tue, 04 Apr 2000 17:08:57 GMT

This problem is not so unusual...
MigraTec is a company in Dallas and this is the type of work they
specialize in.
http://www.migratec.com
In article <[EMAIL PROTECTED]>,
Johannes Hacker <[EMAIL PROTECTED]> wrote:
> Hello!
>
> I am currently working on a project where I have to port a WinNT
> Application to Linux. I am mainly focused on threads, processes,
> synchronization and messaging between processes. I've heard about the
> POSIX-Standard, but I really don't know where to begin.
> Are there any documents, links, ... available about porting in
general?
> This problem sounds not so unusual, I am sure this has been done
before!
>
> kind regards, jo hacker.
>
>


Sent via Deja.com http://www.deja.com/
Before you buy.

------------------------------

Date: Tue, 04 Apr 2000 19:20:41 +0200
From: "J.P. Martin-Flatin" <[EMAIL PROTECTED]>
Crossposted-To: comp.protocols.tcp-ip,comp.os.linux.networking
Subject: TCP_KEEPALIVE and TCP_MAXRT

In "Unix Network Programming, Networking APIs: Sockets and
XTI", Stevens mentions that Posix.1g defines two new TCP
socket options:

 - TCP_KEEPALIVE (p. 201)
 - TCP_MAXRT     (p. 202)

In Linux 2.3.99pre3, there are no such options defined in
/var/k/linux/net/ipv4/tcp.c

Instead, we find TCP_KEEPIDLE, TCP_KEEPINTVL and TCP_KEEPCNT to
control per-socket keepalives, and nothing at all to control
"the amount of time in seconds before a connection is broken
once TCP starts retransmitting data".

Does this mean that Linux 2.3.99pre3 is not Posix.1g compliant,
or that Posix.1g has been superseded by a new version which
Linux adheres to? I don't have access to Posix standards so I
can't check this.

Any help would be greatly appreciated.

JP

------------------------------

From: "Tim Haynes" <[EMAIL PROTECTED]>
Crossposted-To: uk.comp.os.linux
Subject: Re: Random system hangs on Compaq P166/2.2.14
Date: 04 Apr 2000 18:20:49 +0100
Reply-To: "Tim Haynes" <[EMAIL PROTECTED]>

[EMAIL PROTECTED] (Stephen Marley) writes:

> Stephen Marley <[EMAIL PROTECTED]> wrote:
> > Thanks for the tips, Tim. APM is disabled in the bios and I didn't
> > compile support for it in my kernel. I've gone back to the SuSE 6.3
> > 2.2.13 kernel which doesn't have the Via udma support and I've removed
> > the older 16mb dimm. Hopefully one of these mods will make a difference.
> 
> Well none of that worked and the system still hangs, apparently at
> random.
> Won't any of the kernel experts out there offer some insight on this?

IANA(expert), exactly, but I swear I've heard of something happening with
Via support in 2.2.14...

> Could it just be overheating? It's only a P166 but there's no fan, only
> a heatsink.

Aaaaarrrrrgggggggggghhhhhhhhhhhhhhhhhhhhhh. (That expressive enough? ;)

If your machine is off during the day but wakes up when you get home at
1830 (for example) then you should make notes of when it first falls over
and then how often thereafter it fails, for about 3 days' worth. (This is
to guarantee a from-cold start every time.)
Then get a CPU fan and do the same for another couple of days.
Graph it (time to initial failover + interval thereafter), if you want.
Results should be obvious.

(I did this for a notebook - 486DX3/99 that should've been 3/75 - and had
it absolutely clear which was which. With fan it took longer and there was
a greater MTBF.)

~Tim
-- 
| Geek Code: GCS dpu s-:+ a-- C++++ UBLUAVHSC++++ P+++ L++ E--- W+++(--) N++ 
| w--- O- M-- V-- PS PGP++ t--- X+(-) b D+ G e++(*) h++(*) r--- y-           
| The sun is melting over the hills,         | http://piglet.is.dreaming.org/
| All our roads are waiting / To be revealed | [EMAIL PROTECTED]

------------------------------

From: John Gluck <[EMAIL PROTECTED]>
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: Tue, 04 Apr 2000 13:18:55 -0400

[snip]
>         ptr = NULL;
> 
>         printf("%d\n", ptr->a);
> }
> 
[snip]

> what I thought would happen didn't happen on two of the four machines.
> 
[snip]
> 
> Thank you
> Harish

Some implementations of printf check the parameters for a NULL pointer.
They will usually print something like "(null)" for the parameter that
was NULL or they will just ignore the parameter.

There are sometimes development and production versions of libs as well.
The devel version will check params and the production version, in the
interest of speed, will not check params.

Of course, thee OS has its role to play as well.
-- 
John Gluck  (Passport Kernel Design Group)

(613) 765-8392  ESN 395-8392

Unless otherwise stated, any opinions expressed here are strictly my own
and do not reflect any official position of Nortel Networks.

------------------------------

From: [EMAIL PROTECTED]
Subject: mmap PROT_NONE proposal
Date: Tue, 04 Apr 2000 17:55:02 GMT

I think it should allocate memory with the allocator, but not in the
swap file at all. So I can, say, mmap 256 MB with PROT_NONE, then unmap
and re-mmap to /dev/zero (or a file) as much as I want, without fearing
that a library using mmap(NULL, ...) has eaten up my space.

This is useful if you want to use a kind of separate areas managed
like the standard brk area. Win32 (argh! ;-) ) has this function through
its VirtualAlloc and VirtualFree functions.

Paolo Bonzini
[EMAIL PROTECTED]


Sent via Deja.com http://www.deja.com/
Before you buy.

------------------------------

From: [EMAIL PROTECTED]
Subject: Core dumping is halting console
Date: Tue, 04 Apr 2000 18:00:04 GMT

This is a problem I had with RedHat 6.0 and Mandrake 6.1 distros (not
tried the other though) with kernels 2.2.5 through 2.2.9... don't know
what's happening.  As soon as a program segfaults, "Segmentation fault"
appears on the screen and then the console is halted.  The
process won't get killed in any way.  Resources are still in use, so I
guess core dumping was being done.

When I reboot, I get "cannot remount root partition as read-only" errors
and, before I figured out that I had to put loads of syncs in the init.d
scripts, I had to reformat the disk twice because fsck found lots of
errors when it started up.

What's happening?!?!?!?

Paolo Bonzini


Sent via Deja.com http://www.deja.com/
Before you buy.

------------------------------

From: [EMAIL PROTECTED]
Subject: Re: i need to redefine malloc()
Date: Tue, 04 Apr 2000 18:05:06 GMT


> NB: the C library itself presumably always calls the old malloc() and
> thus absolutely no functions allocating memory (e.g. strdup()) will be
> usable.

No, IIRC libc makes an exception for malloc, something like

  __libc_malloc = malloc;
  __libc_free = free;

in crt0.o and

  #define malloc __libc_malloc

in some obscure header file.

Paolo Bonzini


Sent via Deja.com http://www.deja.com/
Before you buy.

------------------------------

From: "Richard D" <[EMAIL PROTECTED]>
Subject: Omnis TechCorp. Announces Agreement With Caldera Systems to Include OMNIS 
Studio in Caldera eDesktop Product Release 
Date: Tue, 4 Apr 2000 19:31:56 +0100

Checkout http://www.omnis.net

SAN CARLOS, Calif., Mar 28, 2000 (BUSINESS WIRE) --

     Bundled Software Expected to Spur New eBusiness Applications for Linux

Omnis Technology Corp. (OTC BB:OMNS), which develops software tools for the
rapid development and deployment of sophisticated Web and client/server
applications, announced today the inclusion of its flagship product, OMNIS
Studio, in Caldera Systems' eDesktop release of OpenLinux.

Caldera has agreed to include a full evaluation copy of both OMNIS Studio
and
Omnis WebClient products in the domestic and international Caldera eDesktop
distribution. The objective is to bring a significant number of existing
OMNIS
Studio-developed business applications to Caldera's Linux platform as well
as to
provide the Linux development community with additional business
applications as
these tools are adopted. Caldera (NASDAQ:CALD) designs, develops and markets
Linux-based business solutions including OpenLinux, NetWare for Linux, and
Linux
technical training, certification and support.

Omnis recently announced new developer programs that make it easier for
Caldera
Linux developers to review, purchase and learn how to use OMNIS Studio to
quickly develop robust business applications. These programs include the
Jump
Start, Incubator and Preferred Partner Programs which offer a clear
evaluation
path for new software developers interested in these markets. Support and
training information for OMNIS Studio is available on the Omnis website at
www.omnis.net.

Jerry Lipscomb, chief evangelist of Omnis Technology, noted, "This agreement
with Caldera combines the best technologies of both companies and is really
the
first product of its kind within the Linux community. The bundled software
will
provide superior value to the developer in the rapid development and
deployment
of e-business applications for Linux. Our collaboration is expected to
quickly
provide Caldera with more business applications than any competing Linux
version."

"I'll give you three reasons why OMNIS Studio is included in OpenLinux
eDesktop:
ease-of-use, speed and choice," said Benoy Tamang, vice president of
marketing
for Caldera Systems. "Developers create applications in OMNIS Studios
component-based environment. They do so much faster than most developer
tools.
The resulting applications are cross-platform--running equally well in
Linux,
Windows and MAC OS environments. This is big for Linux users. Choice is a
driving force for our industry."

OMNIS Studio is a high-performance visual Rapid Application Development
(RAD)
tool for Linux. It provides a component-based environment for building GUI
interfaces, e-commerce, database and server applications. Development and
deployment of OMNIS Studio applications can occur simultaneously in Linux,
Windows, and MacOS environments without changing the application. This
portability is achieved because Omnis utilizes a highly optimized
interpreter
engine to execute the object-oriented application at runtime. OMNIS Studio
applications support native data access to Oracle, Sybase, DB2/UDB, Informix
and
ODBC-compliant data sources including MySQL. The Omnis Web Client allows the
developer to create thin client interfaces that utilize forms or a highly
secure
plug-in. Using OMNIS Studio can cut application development time by as much
as
75% compared to 3GL environments (C++, Java) while allowing the developer to
use
objects developed in 3GL environments as components in Omnis applications.

Omnis is a registered trademark of Omnis Software Limited, a subsidiary of
Omnis
Technology Corporation. OMNIS Studio and Omnis 7 are trademarks of Omnis
Technology Corporation. All other products or service names mentioned herein
are
trademarks of their respective owners.




------------------------------

From: [EMAIL PROTECTED] (Markus Gyger)
Crossposted-To: comp.lang.c,comp.unix.solaris,comp.lang.c++,comp.unix.programmer
Subject: Re: To core or not to core - You tell me
Date: 4 Apr 2000 18:34:29 GMT

Rich Teer <[EMAIL PROTECTED]> writes:

> On Suns, you'd get a core dump, as de-referencing a NULL pointer is considered
> an error by default (rightly so, I think).  Other OSes (for examples an older
> HP-UX) let you get away with it, and return 0.

To change the default on HP-UX, compile with -z. On Solaris, you
can use [EMAIL PROTECTED] to change it at run-time.


Markus

------------------------------

From: [EMAIL PROTECTED] (Peter Mortensen)
Crossposted-To: 
comp.os.linux.development.apps,comp.os.linux.development,comp.os.ms-windows.programmer.win32,comp.os.ms-windows.programmer.misc,comp.unix.programmer,comp.programming
Subject: Re: porting WIN32 to UNIX (Linux)
Date: Tue, 04 Apr 2000 19:09:52 GMT



>I am currently working on a project where I have to port a WinNT
>Application to Linux. I am mainly focused on threads, processes,
>synchronization and messaging between processes. I've heard about the
>POSIX-Standard, but I really don't know where to begin.
>Are there any documents, links, ... available about porting in general?
>This problem sounds not so unusual, I am sure this has been done before!
>
>kind regards,            jo hacker.

I had a similar requirement (but the application was 
designed to be cross-platform - Mac/Win/UNIX/etc - from the 
beginning)  and have found the Linux SMP HOWTO to contain 
useful information:


http://metalab.unc.edu/pub/Linux/docs/HOWTO/SMP-HOWTO (
  Linux SMP HOWTO.
  Also at <http://www.phy.duke.edu/brahma/smp-faq/> and 
  <http://www.irisa.fr/prive/mentre/smp-howto/>.
  Includes: "Multi-threading has never been really 
    popular in the UN*X world though. For some reason, 
    applications requiring multiple processes or threads, 
    have mostly been written using fork(). Therefore, when 
    using the thread approach, one runs into problems of 
    incompatible (not thread-ready) libraries, compilers, 
    and debuggers.  GNU/Linux is no exception to this.",
    "Older C libraries are not thread-safe. It is very 
    important that you" use GNU LibC (glibc), also known 
    as libc6,
    "If two threads throw exceptions concurrently, the 
    program will segfault.", "The GNU Debugger GDB as of 
    version 4.18, should handle threads correctly".
  For threads; "use the -D_REENTRANT define in the compiler
  command line. This is necessary to make certain error-
  handling functions work like the errno variable."
  Good.)








--

Regards,
Peter Mortensen

========================================================================
Peter Mortensen,        E-mail: [EMAIL PROTECTED]
Software Engineer, M.Sc.E.E.                 FAX: +45 63 15 20 40
Bioinformatics Application developer       Phone: +45 63 15 20 37 
Protana A/S                                       +45 63 15 20 30 (SwB)
http://www.protana.com/~pm/
DKK 14000 (US$ 2000) charge to accept unsolicited commercial messages.

------------------------------


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [EMAIL PROTECTED]

You can send mail to the entire list (and comp.os.linux.development.system) via:

    Internet: [EMAIL PROTECTED]

Linux may be obtained via one of these FTP sites:
    ftp.funet.fi                                pub/Linux
    tsx-11.mit.edu                              pub/linux
    sunsite.unc.edu                             pub/Linux

End of Linux-Development-System Digest
******************************

Reply via email to