Okay first of a great many thanks for taking the time out to give me such a detailed explanation. I could'nt have got better. But I have a couple of questions.
Are you saying that for example I have a piece of source code like -:
And I compile it on a SCO UNIX machine and take the executable to Solaris Machine the executable won't run. Are you saying that I would need the source of the hello world program and then I would have to build it back on the Solaris Machine ?
I am sorry but could you elaborate what you mean by this. The kernel is at the end responsible for how software interacts with hardware, so it kinda does everything.
One last question it may be off-topic. You said -:
How do I contact someone like Don Cragun ? I am not saying that your answers were wrong or insufficient in any way but if I wanted to contact him then how would I do it ? By private message ?
Yes it did immensely.
I try to read through all posts concerning the shell and the "standard" utilities and will usually comment if I see something that doesn't look right; but I may miss a posting once in a while. If there is something that you think needs my attention and I haven't commented on it, send me a PM with a link to the discussion thread and state what you think needs to be clarified/verified. I won't make any promises about how quickly I'll get to it, but I try to be responsive.
If you build an application on SCO UNIX and try to run the binary produced on any other operating system (Linux, HP/UX, AIX, Solaris/SunOS, ...) it probably won't work (but some minimal applications like HelloWorld might actually run successfully more often than many of us would expect. You certainly can't run a Solaris/SunOS SPARC or Motorolla chipset binary on an SCO UNIX x86 box, but you can rebuild that program from source on all of those systems and get the same results. (Of course your application source code can't get any guarantees about portability if it uses anything that the standards don't specify; or if it uses what the standards call "implementation-defined", "unspecified", or "undefined" behavior.)
To expand on what bakunin said, the POSIX Standards and the Single UNIX Specifications (which defines part of what is required to be certified by The Open Group as a UNIX System) are API (Application Portability Ineterface) standards; not ABI (Application Binary Ineterface) standards. Some systems also adhere to ABI standards. (For example, the SPARC Compliance Definition standards (SCDs) allowed you to build a binary on certain SPARC based Sun/Oracle Solaris systems and be guaranteed that it would also run correctly on some Fujitsu SPARC systems without rebuilding and vice versa.)
Cheers,
Don
These 4 Users Gave Thanks to Don Cragun For This Post:
Hi Friends
I'm new to this UNIX - I'm working on the porting project from Solaris To Linux i just want to map some commands from solaris to Linux so can any one please tell me how to get the source code of the commands like "ls", "cu", "du"
Regards
sabee (1 Reply)
Hi,
I am a mid-career programmer with extensive experience in object-oriented design and development in C, C++, and C#. I've written a number of multi-threaded server applications and background services, although my grasp of networking protocols is a bit weak: my current job drifted away from... (2 Replies)
Hello guys,
I need an open source tool that can list all the softwares installed in my unix/linux servers, the tool should list all the softwares installed and the current version, grouped by the hostname, anybody know any solution for this specific problem?
Thanks guys, have a good day! (7 Replies)