On Thu, Aug 26, 2010 at 11:11 AM, Brandon S Allbery KF8NH <allbery@ece.cmu.edu> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 8/26/10 10:23 , David Leimbach wrote:
> Go, for example, has no shared libraries, and the runtime fits in every
> binary.  It does not even depend on libc.  Go binaries call the system call
> interface of the kernel, and the net result is that I get to test my go
> code, deploy it, and not worry about the state of deployed go environments
> quite so much as I do in the presence of shared libraries.

Um.  That's a really good way to have all your programs stop working when
the Linux kernel interface changes yet again ("ABIs? We don't need no
steenking ABIs!" --- see in /usr/src/linux/Documentation).  Solaris is
similar; the only approved interface is via libc and you must link to it
shared if you want your program to work across versions/releases.

(Which is the reason shared library support is important.  I personally like
my programs to keep working.)

So you have to keep the runtime as up to date as glibc?  Sounds ok :-).

Also, I don't know anyone that supports people updating kernels in linux in any sort of commercial setting for the very reason you just gave.  Sounds like asking for trouble.  In my experience, a  kernel upgrade is taken pretty seriously, and not done without very good reason.  Look at CentOS, it's on a pretty old kernel most of the time, because people in enterprise situations prefer stability over bleeding edge features.

Dave
 

- --
brandon s. allbery     [linux,solaris,freebsd,perl]      allbery@kf8nh.com
system administrator  [openafs,heimdal,too many hats]  allbery@ece.cmu.edu
electrical and computer engineering, carnegie mellon university      KF8NH
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkx2rmMACgkQIn7hlCsL25XmjACgmWne8rR0EYeeHIBZvp2gywLp
KDMAoKLGedOj5Dy2GXBo+NLcbCGemhS8
=XBmS
-----END PGP SIGNATURE-----