On Sun, Mar 27, 2011 at 03:47:43PM -0700, Tim wrote:
> I haven't read the entire (verbose) thread on this topic, but one
> thing I'd like to point out if someone else hasn't:
>
> Using multiple versions of the same library across multiple
> applications costs you more than disk space. It also costs you
> additional memory (RAM) and therefore program exec start time, due to
> greater I/O.
That is certainly an issue. On the other hand:
free:
total used free shared buffers cached
Mem: 3114664 794856 2319808 0 57404 404636
-/+ buffers/cache: 332816 2781848
Swap: 4032304 0 4032304
I've got the RAM (*). What I don't have time for is dependency
hell. Which at best costs me hours at inopportune times, and
at worst means deleting applications that I've invested data in.
All my apps should not be so tightly bound together. That makes
my system too fragile.
In another thread, I talked about libgd, which underlies a lot of
applications, but has gone without development in almost four years.
The stuff that it depends on - libz, libpthreads - changes, and I
vaguely recall libpthreads is being replaced with the new flavor
of the month. At the other end, gnuplot and indirectly inkscape
depend on it, and I will abandon those, and the dozens of quick
hacks I wrote based directly on libgd, when they pry libgd out
of my cold, dead fingers.
Certainly, everything that can be upgraded - net connected stuff,
for example - should be upgraded. And I do want to minimize the
amount of library bytes I depend on. But some things aren't
getting the TLC they need, and if there was 200 of me I couldn't
keep them all synchronized with the newer stuff else.
Sometimes you just need to keep the old stuff alive, because
"they don't make it like that anymore". The Tōdai-ji temple
in Nara, Japan, is the largest wooden structure in the world.
It was completed in 751 AD. Every stick in it has been
replaced multiple times. And it is still neat to look at, and
still "compatable with the original API". While a glass and
concrete hangar with a video wall Buddha might be more modern,
rich architectural ecosystems still need wooden temples.
A rich Linux ecosystem needs the same. While sparse, lean, and
optimized has its advantages, it leaves some users behind, and
makes everything in the system vulnerable to a few weak links.
If the old libraries and applications are still usable, keep
them around. They might not have the same weaknesses as the
latest and greatest code.
I hope some Linux programs will still be around in 1260 years,
even if every line of the source has been replaced multiple
times. Perhaps tuxracer will be preserved for its Buddha Nature.
Keith
(*) Full disclosure: I rebooted about two hours ago, after a
failed restore-from-suspend. When firefox has had a few days
to leak X's memory, free() will report higher usage numbers.
But swap hasn't swapped in months, even when I run hacks (**)
with many "double foo[5000][5000]" matrices.
(**) ionizing particle scattering in the van Allen belt. A
whole bunch of matrix squaring and multiplication, rather
than doing about 100 million convolutions. Runtime
O( 1.5*log2(1E8)*5000^3 ), rather than O( 1E8*5000^2 ), 5
hours rather than 3 months. Why I like lots of memory.
--
Keith Lofstrom [email protected] Voice (503)-520-1993
KLIC --- Keith Lofstrom Integrated Circuits --- "Your Ideas in Silicon"
Design Contracting in Bipolar and CMOS - Analog, Digital, and Scan ICs
_______________________________________________
PLUG mailing list
[email protected]
http://lists.pdxlinux.org/mailman/listinfo/plug