Oracle has a strict policy about not discussing product features
until they appear in shipping product.
Now that Solaris 11 is publically available, it is time to catch
up. I will be shortly posting articles on a variety of
new developments in the Solaris linkers and related bits:
64-bit Archives
After 40+ years of Unix, the archive file format has run
out of room. The ar and link-editor (ld) commands have been
enhanced to allow archives to grow past their previous 32-bit limits.
Guidance
The link-editor is now willing and able to tell you how to
alter your link lines in order to build better objects.
Stub Objects
This is one of the bigger projects I've undertaken since joining the
Solaris group. Stub objects
are shared objects, built entirely from mapfiles, that supply the same
linking interface as the real object, while containing no code or data.
You can link to them, but cannot use them at runtime.
It was pretty simple to add this ability to the link-editor, but the
changes to the OSnet in order to apply them to building Solaris were
massive. I discuss how we came to invent stub objects, how we apply
them to build the OSnet in a more parallel and scalable manner, and
about the follow on opportunities that have emerged from the new stub
proto area we created to hold them.
The elffile Utility
A new standard Solaris utility, elffile is a variant of the file
utility, focused exclusively on linker related files.
elffile is of particular value for examining archives, as it allows
you to find out what is inside them without having to first extract
the archive members into temporary files.
This release has been a long time coming. I joined
the Solaris group in late 2005, and this will be my first FCS. From a user
perspective, Solaris 11 is probably the biggest change to Solaris
since Solaris 2.0. Solaris 11 polishes
the ground breaking features from Solaris 10 (DTrace, FMA, ZFS, Zones),
and uses them to add a powerful new packaging system, numerous
other enhacements and features, along with a huge modernization effort. I'm
excited to see it go out into the world.
I hope you enjoy using it as much as we did creating it.
Software is never done. On to the next one...