LP64

読み:エルピーろくじゅうよん
外語:LP64: long,pointer 64bit 英語
品詞:名詞

データ型モデルのうち、三種類ある主要な64ビット環境のうちの一つ。

目次

32ビットのILP32に対し、ポインターlongを64ビット化したもの。LP64は、longとポインターが64ビット、という意味である。

64ビット版のLinux、FreeBSD/OpenBSD等BSD、その他一般にUNIXと解釈されているOS全般で採用されている。

long

longを、ポインター長と一致させたデータ型モデルである。

もう一つの実装方法LLP64との違いは、longが64ビットであることである。ソースリストに相互の移植性が必要な場合は、処理の方法等を含めた検討が必要である。

intとlongの長さが違うため、漠然と同じであることを想定したようなプログラムで問題が生じる恐れがある。

UNIX

ポインターをint型に代入するようなプログラムは移植できないが、long型に代入するようなプログラムはデータ長が同じため問題が顕著化せず、そのまま移植することができる。

UNIXでは伝統的にポインターをlong型変数に入れて使う傾向にある。例えばコールバック関数の引数でunsigned longにポインターが入っており、これを(void *)などでキャストして使う、といったこともよくある。そのため、このデータ型モデルが採用されたものと思われる。

用語の所属
データ型モデル
関連する用語
LLP64
ILP64

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club