유닉스 시간

시각을 나타내는 방식, 1970년 1월 1일 자정 협정 세계시부터의 경과 시간을 윤초는 무시하고 초로 환산하여 정수로 나타낸 것

현재의 Unix 시간[주 1]
1713424581 (업데이트)
(ISO 8601:2024-04-18T07:16:21Z)

UNIX 시간(UNIX time)은 시각을 나타내는 방식이다. POSIX 시간이나 Epoch 시간이라고 부르기도 한다. 1970년 1월 1일 00:00:00 협정 세계시(UTC) 부터의 경과 시간을 로 환산하여 정수로 나타낸 것이다.[1][note 1] 유닉스 시간에서 윤초는 무시된다.[1][2][note 2] 유닉스 계열 운영 체제나 여러 다른 운영 체제, 그리고 파일 형식들에서 사용된다. 윤초 처리 방식 때문에 시간을 선형으로 표현하지 못하며, 협정 세계시의 윤초를 표현할 수 없다.[note 3] 유닉스 시간은 대다수의 유닉스 운영 체제에서 date +%s를 명령행에 입력하여 확인할 수 있다.

유닉스 시간 10억초 달성 기념 행사.(2001-09-09T01:46:40Z) 덴마크 유닉스 사용자 그룹이 현지 시간 03:46:40에 코펜하겐에서 기념하였다.

32비트로 표현된 유닉스 시간은 1970년 1월 1일 00:00 (UTC)에서 2,147,483,647 (231 - 1) 지난 후인 2038년 1월 19일 03:14:08 UTC에 2038년 문제를 발생시킨다. 이는 산술 오버플로와 관련 있는 문제이다.

정의 편집

유닉스 시간은 두 단계의 부호화를 거쳐 구성된다. 첫 단계에서 1970년 1월 1일 00:00:00 UTC부터 몇 초 경과했는지를 스칼라 실수로 나타낸다.[3] 두번째 단계에서는 그 실수를 이진수나 십진수로 부호화한다.

같이 보기 편집

각주 편집

내용주
  1. 유닉스 시간의 정의이다. 다만, 값이 음수인 경우는 1970년 1월 1일 이전을 나타낸다.
  2. 윤초는 국제지구자전연구소가 결정하며, 예측이 불가능하다.
  3. 유닉스 시간이 표현할 수 없는 UTC의 예시는 다음과 같다(e.g. 1998년 12월 31일 23:59:60)
  1. 이 페이지가 사용자의 컴퓨터에서 마지막으로 갱신된 시각을 표시합니다
출처주