てがみ: qatacri at protonmail.com | 統計 | 2022

202211702

プログラムに決め打ちの定数を持ち込むことは一般に好ましいことではないけれど、実際のところ現実のコンピュータにはそういう定数がたくさんある。とくにメモリ周りに多い印象で、レジスタ数、キャッシュサイズ、ページサイズなど、普遍性のない定数だらけである。 OS のスケジューラにもヒューリスティクスなのかなんなのか、たくさんのパラメータがある。

この定数は何によって決まるのか。メモリ周りであれば、半導体による実装の特性 (コストなども含む) を反映していると考えられる。スケジューラのパラメータは、ヒトの反応時間や、その OS が使用される環境で必要となる応答時間を反映している。ロボット制御などでは必要となる応答時間が短いので、専用の OS や特殊なパッチがあったりする。

理論的にみたコンピュータというのはとても普遍性の高いもので、それこそ物理空間の次元が一つや二つ上がっても大半の理論やアルゴリズムは影響を受けない。それくらい普遍性の高い存在にちょっと紛れこんだ現実がこれらの定数であるともいえる。そう考えるとこれらの厄介な定数も愛おしく見えてきたりし…