ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
Linuxカーネルで使われている修飾の一つで、主に読み込みに使用する変数であることを宣言する。
x86アーキテクチャーの場合
arch/x86/include/asm/cache.h
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
ARMアーキテクチャーの場合
arch/arm/include/asm/cache.h
#define __read_mostly __attribute__((__section__(".data..read_mostly")))
殆ど読み込みにしか使用しない変数を一つのセクションにまとめておき、読み書きする普通の変数とは別のキャッシュラインになるように配置することができる宣言。
こうすることでfalse sharingを防ぎ、延いては性能の低下を防ぐことができる。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます