アガサガ
『第五輪の独り言』その2。
英語の文献その2 ~Stardust Memories~
今日は研究室のセミナーの日。
ところで、私に此処の大学の推薦は来るのでしょうか?
准教授に聞かないとなぁ(知っているかどうか知らないけど)と思いつつも、怖くて聞けませんでした。
ところで、私に此処の大学の推薦は来るのでしょうか?
准教授に聞かないとなぁ(知っているかどうか知らないけど)と思いつつも、怖くて聞けませんでした。
『組み込みシステム(ウィキペディアより)』
組み込みシステム(くみこみシステム)、エンベデッドシステム (Embedded system) は、特定の機能を実現する目的でコンピュータを組み込んでいる、特定目的のシステム。
『Java仮想マシン(ウィキペディアより)』
Java仮想マシン(Java VM)は、Javaバイトコードとして定義された命令セット実行するスタック型の仮想マシン。
APIやいくつかのツールとセットでJava Runtime Environment(JRE) としてリリースされている。
この環境を移植することで、さまざまな環境でJavaのプログラムを実行することができる。
いつぞや、文献は"JavaME"のやつと書きましたが、文献が面白くなかったので変更です。
内容は上記のウィキペディアっぽい話で、"JavaME"よりもうちょっと前な感じです。
現在読んだ感じでは。
『Java批評(ウィキペディアより)』
【リソース管理】
Javaはメモリを管理するが、他のリソース(JDBCデータベース接続など)は管理しない。
これらはC++でメモリを解放する必要があったのと同様、プログラマによって解放されなければならない。
Javaはメモリ管理機能をもつ。
これはプログラマにメモリリークを起こすようなプログラムを作らせることを非常に困難にした(起こり得ない訳ではない)。
Javaは、オブジェクトは常にヒープに(JITコンパイラによって最適化されない限り)、ローカル変数はスタックやレジスタに確保される。
C++ではオブジェクトが確保される場所をプログラマが選択することができたが、Javaではそれが不可能になっている。
ガーベジコレクションはオブジェクトをいつメモリから解放されるかを制御する。
Javaはプログラマに、(例えSystem.gc()を用いても)ガーベジコレクションがいつ起こるかを保証しない。
プログラマはガーベジコレクションを阻止することも特定のオブジェクトを削除することもできない。
これはプログラミングを簡易にしメモリリークの可能性を軽減するが、より効果的なメモリ処理を行うための柔軟性が犠牲になっている。
Cやアセンブリのような低水準言語はこの柔軟性を提供する。
ここら辺を英語で説明しているような気がする。(全然違うかも)
あ゛ー、推薦はどうなってるんだー。
来ないなら来ないと早く言ってくれー。
PR
この記事へのトラックバック
トラックバックURL
この記事へのコメント