
The Six Million Dollar LibC (2008) - arunc
http://codingrelic.geekhold.com/2008/11/six-million-dollar-libc.html
======
revelation
I think in every modern libc implementation exception handling imposes no
extra cost on function calls. In fact, exceptions might well make code faster,
as you can take a bunch of error checks out of hot code paths. Pretty much the
only downside is the complexity of implementing exceptions for libc
maintainers and some extra space in the binary to store information that make
the stack unwinding possible, but that data is far, far away from the crucial
.text.

So exceptions are very expensive _when you cause one_ , but for free or even
an improvement when you don't.

------
vezzy-fnord
This was written back in 2008.

That said, the future of Android, at least if it is to become a self-hosting
development environment, is in musl and Toybox:
[http://landley.net/toybox/](http://landley.net/toybox/)

~~~
joezydeco
And before the NDK. I'm 100% confident termios is in the NDK because I've used
it.

------
snarfy
As a user, I find nothing encumbering about the LGPL. I'd argue it's
liberating. It might be encumbering for a developer to release a proprietary,
for profit version based off the work of others, but for a user it's great.

~~~
mindslight
My first computer running GNU/Linux: Single core, 66MHz, 8MiB RAM.

Galaxy S4 i9500: Octa-core, 1200/1600MHz, 2048MiB RAM.

That's an advancement of two orders of magnitude.

Getting rid of the GPL so the platform could be locked down is basically the
_only_ reason for Google/Android's NIH.

For all the techie mindshare, "open source" is worth about as much as
Microsoft's "shared source" \- essentially nothing when it comes to _user_
freedom.

Thank goodness for the (thoroughly pwned GPL2) kernel putting _slight_
pressure on manufacturers to be open.

~~~
sedachv
Android is the best argument for the AGPL.

~~~
RRRA
Everyone (MacOS X, Android, Jolla, etc.) is building there products, thanks to
free Software, (GPL & not GPL) and than adding proprietary wrappers to lock
things down & making sure they use non-Copyleft licences for anything else
they add as "open"-ed.

Free Software is about governance, community, open development, etc: not only
the licence! These company are just grabbing what is now infrastructure built
by everyone to sell it back to everyone, locked down, and doing code dumping
with not-so-open development and communities to trap people who don't get it.

So, since the free and open aspect could be built with Public Domain or non-
copyleft licences by a community or company doing the right thing (tm), I
agree, AGPL "all the things!" is the best way to eliminate part of this
problem.

(Yes, they can always relicence the code if they own it all, but that's the
community & open development part that is harder to evaluate...)

------
justincormack
Old article, it supports mips, mips64, arm64 now too, and there have been lots
of bug fixes, and maybe some additional support. But if you want a BSD
licensed libc, Musl is much nicer.

------
Animats
If you want to see a tiny version of libc, get the source for the original
JOVE editor, Jonathan's Own Version of EMACS, written 1983 by Jonathan Payne
while at Lincoln-Sudbury Regional High School. He was able to cram EMACS into
a PDP-11, and to make it fit, had to rewrite all the low-level libraries.

~~~
sedachv
Thanks a lot for that tip!

JOVE from 1983 as part of 2.9BSD:
[http://www.retro11.de/ouxr/29bsd/usr/contrib/jove/](http://www.retro11.de/ouxr/29bsd/usr/contrib/jove/)

JOVE circa 1988 in 2.11BSD:
[http://www.tuhs.org/Archive/PDP-11/Trees/2.11BSD/usr/src/new...](http://www.tuhs.org/Archive/PDP-11/Trees/2.11BSD/usr/src/new/jove/)

