現在、C++11 で OS カーネルを開発中ですが、質問に出くわしました。自分で答えを見つけることができないようです。
現在、コンパイラ固有の属性 (gcc など__attribute__(aligned)
) を使用してページング構造を調整していますが、代わりに C++ 11 alignas 指定子を使用したいと考えています。ただし、G++ はそうではありません。
alignas specifier
まず第一に、 と gccの主な違いは何__attribute__(aligned)
ですか?明らかにどちらも特定の値へのアライメントを保証しますが、gcc の alignas 指定子には 128 の制限があるようですが、属性はほとんど無制限に見えますが、これはなぜですか?
また、 const 整数を alignas 指定子に渡せないのはなぜですか?