見習いプログラミング日記

Javaを中心に色々なことを考えてみます。目指せ本物のプログラマ。

OpenJDK

CentOS7でOpenJDKのソースツリー取得時に/dev/stdout: Permission denied

手元の環境を再構築したときにハマったのでメモ。 get_source.shでエラー CentOS7でOpenJDK9のソースコードを取得しようとすると、以下のようなエラーが発生してget_source.shでソースコードがhg cloneできない。 hg clone http://hg.openjdk.java.net/jdk9/…

JDK8(Linux 64bit)のデフォルトヒープサイズ

Oracleの公式ドキュメントには、-Xmxが未指定であった場合のエルゴノミクスによる最大ヒープサイズは『32GBを上限として、物理メモリの4分の1』書かれている。32GBは-XX:-UseCompressedOopsにより圧縮Oopを明示的に無効にした場合の最大デフォルトヒープサイ…

-XX:+DisableExplicitGCに関するJDK7とJDK8の違い

この記事は JVM Advent Calendar 2014の12/5分の記事*1です。昨日は @jyukutyoさんのJITWatchでJITコンパイルを見よう!でした。HotSpotには-XX:+DisableExplicitGCというオプションがありますが、この挙動がJDK8のリリースから変わっていたのでまとめます。…

ProcessBuilderの中を覗いてみる

UNIXカーネルの設計を読んでいて以下のような記述を見つけたとき、ふと疑問が浮かんだ。 UNIXカーネルの設計 p164 7.1 プロセスの生成 UNIXオペレーティングシステムで利用者が新しいプロセスを作る唯一の方法は, forkシステムコールを呼び出すことである。 …