-
64bit 환경에서 변수의 크기는 정말 64bit일까?ME_BUILDING 2021. 9. 20. 15:06
카메라를 새로 사서 찍으러 돌아다닌다. 귀찮다. 엄청. 얼마 전 갑자기 64비트 환경에서의 변수의 크기가 64비트인 이유가 궁금해졌다.
그때까지는 신입 면접 질문에서 나오는 질문의 답만 알고 있었고 그 이유는 몰랐기에
바로 구글링 시작
헉 근데 웬걸? 64bit환경에서 integer변수와 long 변수의 크기가 무조건 64bit는 아니라네?
충격적인 답은 뒤로하고 그 이유가 궁금해졌다. 그래서 구글링 해대며 스택오버플로우도 뒤져가며 답을 찾으려고 노력해봤다.
정답부터 말하자면 64bit 환경인것은 변수의 크기와 상관이 없다.
다른건 다 제쳐두고 CPU와 OS의 영향을 받는단다.
windows OS는 LLP64 인터페이스를 사용하기 때문에 int, long 변수의 사이즈는 32bit고
Linux OS에서 int는 32bit, long은 64bit의 크기를 같는단다.
위키의 내용을 인용하자면 대부분의 Unix와 Unix-like OS는 LP64 인터페이스를 가진다.
하지만 윈도우만 조금 특이하게 LLP64 인터페이스를 사용하고있다.
사실 윈도우 점유율을 생각하면 윈도우가 특이한것은 아니기도함 ;
끝
'ME_BUILDING' 카테고리의 다른 글
형형색색과 흑백의 사이? 둘 다일수도 (0) 2022.04.01 짧고도 긴 것, 1년 (0) 2022.02.18 API 문서화 도구 Slate (0) 2021.07.23 단단해지기 (0) 2021.07.04 MAC에 MSSQL Server 설치하기 (0) 2021.06.19