Carlos O'Donell - The GNU C Library version 2.16 is now available.
[Phoronix] GNU C Library 2.16 Brings Many Features (GLIBC)
GNU C Library 2.16がリリースされた。
今回の目玉は、x32をサポートしたことだろう。これにより、x32をサポートするための環境である、カーネル、コンパイラー、libcがひと通り揃ったことになる。
x32については、もう読者は知っているだろう。x84_64環境における、64bitコードだが32bitアドレス長という変則的なABIのことである。これにより、64bitコードの恩恵(追加の汎用レジスタや機能など)を受けつつ 、しかもアドレス長を32bitに抑えることで、32bit、64bitよりもパフォーマンスの向上をはかることができる。
もちろん、32bitアドレスを使うわけだから、ひとつのプロセスから見えるメモリ空間は、ユーザーとカーネルあわせて4GBに制限されてしまうわけだが、未だに多くのソフトウェアは、32bitアドレス空間だという現状からすれば、それほど問題にはならない。
しかし問題は、x32はまったく別のABIだということである。比較的最近のx86_64カーネルを使い、コンパイラーにx32用のコードを吐かせ、もちろんライブラリもすべてx32に対応しなければならない。さらに、動的なライブラリをどこに置くのかという問題もある。Debian系列ならMultiarchが使えるが、その他のディストロではどうするのか。
ディストロでのサポートは、現在のところGentooが先行している。まあ、Gentooは仕組み的に早く対応できるのだろう。しかし、いくら対応したとしても、結局ライブラリをx32用にコンパイルしなければならないわけだ。僅かなパフォーマンス向上には、どうも見合わないような気がする。それに結局32bitアドレス空間は、ますます、実感として狭くなっていくことに疑いはない。640KBは、もはや誰にとっても十分ではないように。
No comments:
Post a Comment
You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.