<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-menu-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-os vector-sticky-header-enabled skin-thumbsize-clientpref-standard" lang="ja" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>System.map</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="./_res_/favicon.png">
    <link rel="canonical" href="https://ja.wikipedia.org/wiki/System.map"> <link href="./_mw_/ext.cite.parsoid.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/mediawiki.skinning.content.parsoid.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    <link href="./_mw_/ext.gadget.PDFLinkIcon.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.gadget.RedirectColor.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="./_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
  </head>
  <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-System_map rootpage-System_map skin-vector-2022 action-view">
    <div class="mw-page-container">
      <div class="mw-page-container-inner">
        <div class="mw-content-container">
          <main id="content" class="mw-body">
            <header class="mw-body-header vector-page-titlebar">
              <h1 id="firstHeading" class="firstHeading mw-first-heading"><span lang="ja" dir="ltr"><span class="mw-page-title-main">System.map</span></span></h1>
            </header>
            <a id="top"></a>
            <div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
              <div id="contentSub">
                <div id="mw-content-subtitle"></div>
              </div>
              <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="ja" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="ja" dir="ltr" data-mw-parsoid-version="0.24.0.0-alpha7" data-mw-html-version="2.8.0"><section data-mw-section-id="0" id="mwAQ"><p id="mwAg"><a rel="mw:WikiLink" href="Linux" title="Linux" id="mwAw">Linux</a>において、<b id="mwBA">System.map</b>ファイルとは<a rel="mw:WikiLink" href="%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB" title="カーネル" id="mwBQ">カーネル</a>が使用する<a rel="mw:WikiLink" href="%E3%82%B7%E3%83%B3%E3%83%9C%E3%83%AB%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB" title="シンボルテーブル" id="mwBg">シンボルテーブル</a>である。</p>

<p id="mwBw">シンボルテーブルは<a rel="mw:WikiLink" href="%E8%A8%98%E6%86%B6%E8%A3%85%E7%BD%AE" title="記憶装置" id="mwCA">メモリ</a>上でシンボル名と<a rel="mw:WikiLink" href="%E3%83%A1%E3%83%A2%E3%83%AA%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9" title="メモリアドレス" id="mwCQ">アドレス</a>の対応関係を示す。シンボル名は、<a rel="mw:WikiLink" href="%E5%80%A4_(%E6%83%85%E5%A0%B1%E5%B7%A5%E5%AD%A6)" title="値 (情報工学)" class="mw-redirect" id="mwCg">値</a>もしくは<a rel="mw:WikiLink" href="%E3%82%B5%E3%83%96%E3%83%AB%E3%83%BC%E3%83%81%E3%83%B3#数学の関数との違い" title="サブルーチン" id="mwCw">関数</a>名である場合が多い。System.mapファイルは、シンボル名のアドレスまたはアドレスの示すシンボル名が必要とされるケースにおいて要求される。とりわけこれは<a rel="mw:WikiLink" href="%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB%E3%83%91%E3%83%8B%E3%83%83%E3%82%AF" title="カーネルパニック" id="mwDA">カーネルパニック</a>や<a rel="mw:WikiLink" href="Linux_kernel_oops" title="Linux kernel oops" id="mwDQ">Linux kernel oops</a>が発生した場合、そのデバッグの役に立つ。カーネルは、コンフィグレーション(<a rel="mw:WikiLink/Interwiki" href="https://en.wikipedia.org/wiki/menuconfig" title="en:menuconfig" class="extiw external" id="mwDg">Kconfig</a>)にて<code id="mwDw">CONFIG_KALLSYMS</code>を有効化すると自身のアドレス-名前変換を行う。この処理にはksymoopsのようなツールは最早必要としない<sup class="mw-ref reference" id="cite_ref-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1" id="mwEA"><span class="mw-reflink-text" id="mwEQ"><span class="cite-bracket" id="mwEg">[</span>1<span class="cite-bracket" id="mwEw">]</span></span></a></sup>。</p>

<p id="mwFA">次の項目は<code id="mwFQ">System.map</code>ファイルの一部である。:</p>
<blockquote id="mwFg">
 <p id="mwFw">c041bc90 b packet_sklist<br id="mwGA">
 c041bc94 b packet_sklist_lock<br id="mwGQ">
 c041bc94 b packet_socks_nr<br id="mwGg">
 c041bc98 A __bss_stop<br id="mwGw">
 c041bc98 A _end<br id="mwHA">
 c041c000 A pg0<br id="mwHQ">
 ffffe400 A __kernel_vsyscall<br id="mwHg">
 ffffe410 A SYSENTER_RETURN<br id="mwHw">
 ffffe420 A __kernel_sigreturn<br id="mwIA">
 ffffe440 A __kernel_rt_sigreturn</p>
</blockquote>
<p id="mwIQ"><a rel="mw:WikiLink" href="Nm_(UNIX)" title="Nm (UNIX)" id="mwIg">nm</a>コマンドの出力結果そのものであることが理解できる。</p>

<p id="mwIw">スペースで区切られた、アドレスとシンボルの間の文字列は、そのシンボルの「型」を示している。<a rel="mw:WikiLink" href="UNIX" title="UNIX" id="mwJA">UNIX</a>システムにおける<a rel="mw:WikiLink" href="Nm_(UNIX)" title="Nm (UNIX)" id="mwJQ">nm</a>ユーティリティプログラムは<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB" title="オブジェクトファイル" id="mwJg">オブジェクトファイル</a>からシンボルをリストアップする。System.mapファイルは直接これと関係しており、すなわち、カーネル(をあたかも、プログラムとみなして)全体にnmコマンドを掛け、その出力結果をこのファイルに書き出したものであることが分かる。それは、カーネルよりももっと小さいオブジェクトファイルに対し、nmがシンボルとその型をリストアップすることと同様である。</p>

<p id="mwJw">カーネル<a rel="mw:WikiLink" href="%E3%83%93%E3%83%AB%E3%83%89_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)" title="ビルド (ソフトウェア)" id="mwKA">ビルド</a>のプロセスを含めて説明すると、通常、Linuxカーネルビルドの最終段階に到達すると、実行ファイル"<a rel="mw:WikiLink" href="Vmlinux" title="Vmlinux" id="mwKQ">vmlinux</a>"が生成される。このファイルに対し、nmコマンドを実行し、その出力結果をSystem.mapファイルとして生成する。ちなみにSystem.map生成後は、vmlinuxからシンボルがストリップされ、特殊なコードをリンク、圧縮し、"zImage"もしくは"bzImage"というファイルが生成される。これが通常目にするカーネル本体である。アドレスはコンパイル時に決定されるため、カーネルビルドの度に<code id="mwKg">System.map</code>ファイルが生成される。</p>

<p id="mwKw">型のいくつかを説明する(用語は<a rel="mw:WikiLink" href="Executable_and_Linkable_Format" title="Executable and Linkable Format" id="mwLA">ELF</a>に倣っている):</p>

<blockquote id="mwLQ">
<p id="mwLg">A 絶対アドレス<br id="mwLw">
B または b 未初期化データセクション(BSSと呼称される)<br id="mwMA">
D または d 初期化済データセクション<br id="mwMQ">
G または g 小さいオブジェクト用の初期化済データセクション (global)<br id="mwMg">
i <a rel="mw:WikiLink" href="%E3%83%80%E3%82%A4%E3%83%8A%E3%83%9F%E3%83%83%E3%82%AF%E3%83%AA%E3%83%B3%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA" title="ダイナミックリンクライブラリ" id="mwMw">DLL</a>特有のセクション<br id="mwNA">
N デバッギングシンボル<br id="mwNQ">
p <a rel="mw:WikiLink" href="%E3%82%B3%E3%83%BC%E3%83%AB%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF" title="コールスタック" id="mwNg">スタック</a>削除(stack unwind)セクション<br id="mwNw">
R または r 読み取り専用データセクション<br id="mwOA">
S または s 小さいオブジェクト用の未初期化データセクション<br id="mwOQ">
T または t テキスト(コード)セクション<br id="mwOg">
U 未定義<br id="mwOw">
V または v 弱いオブジェクト<br id="mwPA">
W または w タグ付けされていないままの弱いオブジェクト<br id="mwPQ">
- <a rel="mw:WikiLink" href="A.out%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88" title="A.outフォーマット" id="mwPg">a.out</a>オブジェクトファイルにおけるスタブシンボル<br id="mwPw">
? 'シンボル型不明'<br id="mwQA"></p>
</blockquote>

</section><section data-mw-section-id="1" id="mwQQ" aria-labelledby="ファイルシステムにおけるSystem.mapファイルの配置"><div class="mw-heading mw-heading2"><h2 id="ファイルシステムにおけるSystem.mapファイルの配置"><span id=".E3.83.95.E3.82.A1.E3.82.A4.E3.83.AB.E3.82.B7.E3.82.B9.E3.83.86.E3.83.A0.E3.81.AB.E3.81.8A.E3.81.91.E3.82.8BSystem.map.E3.83.95.E3.82.A1.E3.82.A4.E3.83.AB.E3.81.AE.E9.85.8D.E7.BD.AE" typeof="mw:FallbackId"></span>ファイルシステムにおけるSystem.mapファイルの配置</h2></div>
<p id="mwQg">カーネルのビルドが正常終了すると、<code id="mwQw">System.map</code>はカーネルソースコードのトップ<a rel="mw:WikiLink" href="%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA" title="ディレクトリ" id="mwRA">ディレクトリ</a>に作られるが、いくつかの上位のソフトウェアインストレーションステップにより、その他のディレクトリにコピーされ得る:</p>
<ul id="mwRQ"><li id="mwRg"><code id="mwRw">/boot/System.map-$(<a rel="mw:WikiLink" href="Uname" title="Uname" id="mwSQ">uname</a> -r)</code></li>
<li id="mwSg">SVGALibのビルドにおいては<code id="mwTA">/lib/modules/$(uname -r)/build/System.map</code>に存在することを仮定している。</li></ul>

<p id="mwTQ">また<code id="mwTg"><a rel="mw:WikiLink" href="Procfs" title="Procfs" id="mwTw">/proc</a>/kallsyms</code>はLinuxカーネルバージョン2.5.71以上のシステムにおいて、読み込まれているシンボル名とアドレスを表示する<sup class="mw-ref reference" id="cite_ref-2" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-2" id="mwUA"><span class="mw-reflink-text" id="mwUQ"><span class="cite-bracket" id="mwUg">[</span>2<span class="cite-bracket" id="mwUw">]</span></span></a></sup>。それはSystem.mapファイルの一部に相当する。</p>

</section><section data-mw-section-id="2" id="mwVA" aria-labelledby="脚注"><div class="mw-heading mw-heading2"><h2 id="脚注"><span id=".E8.84.9A.E6.B3.A8" typeof="mw:FallbackId"></span>脚注</h2></div>

<div class="reflist" style=" list-style-type: decimal;" typeof="mw:Transclusion" id="mwVQ">
<ol class="mw-references references" typeof="mw:Extension/references" id="mwVg"><li id="cite_note-1" data-mw-footnote-number="1"><span class="mw-cite-backlink" id="mwVw"><a href="#cite_ref-1" rel="mw:referencedBy" id="mwWA"><span class="mw-linkback-text" id="mwWQ">↑</span></a></span> <span id="mw-reference-text-cite_note-1" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;a=blob_plain;f=Documentation/oops-tracing.txt;hb=HEAD" class="external autonumber" id="mwWg"></a> NOTE: ksymoops is useless on 2.6.</span></li>
<li id="cite_note-2" data-mw-footnote-number="2"><span class="mw-cite-backlink" id="mwWw"><a href="#cite_ref-2" rel="mw:referencedBy" id="mwXA"><span class="mw-linkback-text" id="mwXQ">↑</span></a></span> <span id="mw-reference-text-cite_note-2" class="mw-reference-text reference-text">
<cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwXg"><a rel="mw:WikiLink" href="JM_Project" title="JM Project" id="mwXw">JM Project</a><span typeof="mw:Entity" id="mwYA"> </span>(2009年9月30日).<span typeof="mw:Entity" id="mwYQ"> </span>“<a rel="mw:ExtLink nofollow" href="http://linuxjm.sourceforge.jp/html/LDP_man-pages/man5/proc.5.html" class="external text" id="mwYg">Man page of PROC</a>”.<span typeof="mw:Entity" id="mwYw"> </span>  linuxjm.sourceforge.jp.<span typeof="mw:Entity" id="mwZA"> </span>2011年1月27日閲覧。</cite></span></li>
</ol></div>

</section><section data-mw-section-id="3" id="mwZQ" aria-labelledby="関連項目"><div class="mw-heading mw-heading2"><h2 id="関連項目"><span id=".E9.96.A2.E9.80.A3.E9.A0.85.E7.9B.AE" typeof="mw:FallbackId"></span>関連項目</h2></div>
<ul id="mwZg"><li id="mwZw"><a rel="mw:WikiLink" href="Linux_kernel_oops" title="Linux kernel oops" id="mwaA">Linux kernel oops</a></li>
<li id="mwaQ"><a rel="mw:WikiLink" href="%E3%83%95%E3%83%AA%E3%83%BC%E3%82%BA" title="フリーズ" id="mwag">カーネルパニック</a></li>
<li id="mwaw">vmunix</li>
<li id="mwbQ"><a rel="mw:WikiLink" href="Vmlinux" title="Vmlinux" id="mwbg">vmlinux</a></li></ul>

<span class="mw-empty-elt" typeof="mw:Transclusion" id="mwbw"><style data-mw-deduplicate="TemplateStyles:r96783592" typeof="mw:Extension/templatestyles">
/* start https://ja.wikipedia.org/ */


.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox{font-size:90%}.mw-parser-output .asbox-note{font-size:90%}.mw-parser-output .asbox .navbar{position:absolute;top:-0.90em;right:1em;display:none}


/* end   https://ja.wikipedia.org/ */
</style></span>
<span class="mw-empty-elt" typeof="mw:Transclusion" id="mwcQ"></span>


</section></div><!--htdig_noindex--><div><div class="zim-footer">
    This article is issued from <a class="external text" title="Last edited on 2025-10-28" href="https://ja.wikipedia.org/wiki/?title=System.map&amp;oldid=107010636">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ja">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
            </div>
          </main>
        </div>
      </div>
    </div>
     <script src="./_webp_/webpHandler.js"></script>
  

</body></html>