“사용자 CPU 시간”과 “시스템 CPU 시간”에 대해 자세히 설명해 주시겠습니까? 많이 읽었지만 잘 이해하지 못했습니다.
답변
차이점은 시간이 사용자 공간 또는 커널 공간에서 소비되는지 여부입니다. 사용자 CPU 시간은 프로그램의 코드 (또는 라이브러리의 코드)를 실행하는 프로세서에 소요 된 시간입니다. 시스템 CPU 시간은 프로그램을 대신하여 운영 체제 커널에서 코드를 실행하는 데 소요 된 시간입니다.
답변
사용자 CPU 시간 : 프로세서가 특정 프로그램에서 작업 한 시간입니다.
시스템 CPU 시간 : 프로세서가 특정 프로그램에 연결된 운영 체제의 기능에 대해 작업 한 시간입니다.
답변
‘사용자 CPU 시간’이라는 용어는 처음에는 약간 오해의 소지가 있습니다. 명확하게 말하면, 총 시간 (실제 CPU 시간)은 CPU가 프로그램에 대해 일부 작업을 수행하는 데 소비하는 시간과 CPU가 프로그램을 대신하여 커널에 대한 시스템 호출을 수행하는 데 소비하는 시간의 조합입니다. 프로그램이 배열을 반복 할 때 사용자 CPU 시간이 누적됩니다. 반대로 프로그램이 exec 또는 fork와 같은 시스템 호출을 실행하면 시스템 CPU 시간이 누적됩니다.
답변
위키 백과를 기반으로 :
- 사용자 시간 은 CPU가 사용자 공간에서 코드를 실행 하느라 바빴던 시간입니다.
- 시스템 시간 은 CPU가 커널 공간에서 코드를 실행 하느라 바빴던 시간입니다. 이 값이 스레드 또는 프로세스에 대해보고되는 경우, 예를 들어 스레드가 시스템 호출을 발행 한 후 커널이 실행 컨텍스트를 대신하여 작업을 수행 한 시간을 나타냅니다.