カーネルシンボルのエクスポートとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > カーネルシンボルのエクスポートの意味・解説 

カーネルシンボルのエクスポート

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/23 16:24 UTC 版)

ローダブル・カーネル・モジュール」の記事における「カーネルシンボルのエクスポート」の解説

概要述べた通り通常カーネル内にある関数名構造体名などのシンボルカーネルの外からは直接見えないLKMロードにはシンボル解決が必要であるが、シンボル解決するためにはinsmod等のモジュールローダを起動し様々なチェックに通る必要がある。この時前述通り、MODULE_LICENSEマクロにある文字列チェックされるシンボル名は通常、EXPORT_SYMBOLまたは、GPLにライセンスされたモジュールのみが参照可能なEXPORT_SYMBOL_GPLマクロ記述する。このマクロ記述されシンボル名はモジュールローディング時にモジュールから参照できるうになるが、あらゆるライセンス用に提供されるEXPORT_SYMBOLとは異なり、EXPORT_SYMBOL_GPLマクロプロプライエタリモジュールからは一切参照できない。すなわちプロプライエタリモジュール作成する場合はEXPORT_SYMBOL_GPLマクロでエクスポートされている関数利用できないことになる。プロプライエタリモジュール作成する企業にとっては、これは前述汚染フラグとは比べものにならないほど厳し制限思える。しかし、Linuxカーネル開発者にとってはカーネル内重要な理に関す決定イニシアティブ一貫してLinuxカーネルコミュニティが持つことができるという大きな利点がある。プロプライエタリドライバソースコードがない、もしくは自由な改変許可していないものが多く状況によりカーネルAPIはじめとして最新カーネル開発状況追随できていないものが存在するそのようなドライバによるバグやシステムクラッシュが発生したとしてもソースコード改変できないため、Linuxカーネルコミュニティ側では全く解決できない。これは昔からコミュニティ悩みの種となっているため、カーネル内極めて重要なオブジェクトや、問題ひとたび発生するシステムクラッシュするような処理を最初からバイナリオンリードライバには実行できないようにしようとしたのである

※この「カーネルシンボルのエクスポート」の解説は、「ローダブル・カーネル・モジュール」の解説の一部です。
「カーネルシンボルのエクスポート」を含む「ローダブル・カーネル・モジュール」の記事については、「ローダブル・カーネル・モジュール」の概要を参照ください。

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



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

辞書ショートカット

すべての辞書の索引

「カーネルシンボルのエクスポート」の関連用語

カーネルシンボルのエクスポートのお隣キーワード
検索ランキング

   

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



カーネルシンボルのエクスポートのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2024 GRAS Group, Inc.RSS