低レベルコードとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 低レベルコードの意味・解説 

低レベルコード

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/17 21:54 UTC 版)

C SharpとJavaの比較」の記事における「低レベルコード」の解説

C/C++などで書かれネイティブコード資産再利用や、オペレーティングシステムあるいはハードウェアへのローレベルなアクセスを可能とするため、JavaおよびC#はともにネイティブ相互運用のための機能提供している。 Java Native Interface (JNI) ではJavaコード内で非Javaコードnativeメソッドとして呼び出すことができる。しかしながらJNI呼び出されるコードインターフェイスシグネチャ)に制限がある。このためJava既存ネイティブコード資産との間に余分なレイヤー必要になることがよくある。このレイヤーJavaではない言語書かれる必要があり、CやC++がよく用いられるJNI利用することで、逆にC/C++側からJavaクラスライブラリアクセスすることも可能である。 .NETプラットフォーム呼び出しPlatform InvokeP/Invoke)はC#からアンマネージコード呼び出し可能にする。プログラマメタデータ通してメソッド引数戻り値どのように橋渡しマーシャリング)されるかを完全に制御することができる。このため既存コードインターフェイスC言語形式関数でありさえすれば余分なレイヤー必要にならないP/Invokeは(Win32POSIXなどの)手続き型APIにはほぼ完全にアクセスすることができるが、C++クラスライブラリへの直接的なアクセスきわめて困難である。そのほかC++/CLI言語介することで、C#C/C++間の相互運用行なうことも可能である。またCOM相互運用により、コード資産相互に利用することも可能である。 C#通常のチェックなどのCLR安全のための機能無効にし、ポインタ変数利用することができる。この時、プログラマコードをunsafeキーワードでマークする必要があるJNIP/Invoke、unsafeコードはどれも同様に危険な機能であり、セキュリティホールアプリケーション不安定性につながる恐れがある。unsafeコードP/InvokeJNIに対して優れている点は、アンマネージコード呼び出すことなくC#機能内でタスク完結できる点である。unsafeコードを含むアセンブリコンパイル時そのように明示的に指定する必要がある。これにより、実行環境危険な可能性があるコードであるということ実行する前に知ることができる。

※この「低レベルコード」の解説は、「C SharpとJavaの比較」の解説の一部です。
「低レベルコード」を含む「C SharpとJavaの比較」の記事については、「C SharpとJavaの比較」の概要を参照ください。

ウィキペディア小見出し辞書の「低レベルコード」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「低レベルコード」の関連用語

低レベルコードのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



低レベルコードのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのC SharpとJavaの比較 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS