반응형
Linux에서 pid_t, uid_t, gid_t의 크기
Linux 시스템(32비트 또는 64비트)의 경우 크기는pid_t
,uid_t
,그리고.gid_t
?
#include <stdio.h>
#include <sys/types.h>
int main()
{
printf("pid_t: %zu\n", sizeof(pid_t));
printf("uid_t: %zu\n", sizeof(uid_t));
printf("gid_t: %zu\n", sizeof(gid_t));
}
편집: 일반적인 요청에 따라(실제로 이 질문에 응답하는 사람의 99%가 x86 또는 x86_64를 실행할 예정이기 때문에)...
Linux >= 3.0.0을 실행하는 i686 및 x86_64(32비트 및 64비트) 프로세서에서는 다음과 같이 답합니다.
pid_t: 4
uid_t: 4
gid_t: 4
intel 아키텍처에서 크기는 다음과 같이 정의됩니다./usr/include/bits/typesizes.h
:
#define __UID_T_TYPE __U32_TYPE
#define __GID_T_TYPE __U32_TYPE
#define __PID_T_TYPE __S32_TYPE
다른 말로 하면,uid_t
그리고.gid_t
부호 없는 32비트 정수이고pid_t
는 부호 있는 32비트 정수입니다.이는 32비트와 64비트 모두에 적용됩니다.
현재 사용 가능한 아키텍처가 없기 때문에 다른 아키텍처에 무엇이 있는지는 잘 모르겠지만, 최종적인 방법은 출력을 출력하는 프로그램을 컴파일하는 것입니다.sizeof(uid_t)
,기타.
이 표준은 다음을 정의합니다.pid_t
"서명된 정수 유형" 및uid_t
그리고.gid_t
단순히 "모뎀 유형"으로 간주됩니다(따라서 휴대용 코드는 특정 유형을 가정해서는 안 됩니다).
언급URL : https://stackoverflow.com/questions/1922761/size-of-pid-t-uid-t-gid-t-on-linux
반응형
'source' 카테고리의 다른 글
Flutter : 코드의 각 목록 항목 사이에 구분자를 추가하려면 어떻게 해야 합니까? (0) | 2023.06.13 |
---|---|
그룹당 여러 변수(예: 합, 평균) 집계/요약 (0) | 2023.06.13 |
대형 R 프로그램을 어떻게 구성합니까? (0) | 2023.06.13 |
루비 전송 vs __send__ (0) | 2023.06.13 |
data.table이 다른 data.table에 대한 참조(복사본)일 때 정확하게 이해 (0) | 2023.06.13 |