터미널 명령을 통해 실행되는 애플리케이션의 시작 시간 지정

터미널 명령을 통해 실행되는 애플리케이션의 시작 시간 지정

특정 애플리케이션이 완전히 실행되는 데 걸리는 시간을 확인하고 싶습니다.

특정 명령을 사용하여 터미널을 통해 애플리케이션을 시작하는 방법이 있습니까?

답변1

"완전 출시"에 대한 표준 정의는 없습니다. 정의를 생각해 내면 이를 감지할 방법이 있을 수도 있고 없을 수도 있습니다.

"전체 시작"에 대한 정의가 "애플리케이션이 유휴 상태가 될 때까지 기다렸다가 사용자 입력을 기다립니다"라면 해당 시스템 호출을 추적하여 사용자 입력 읽기를 시작하는 데 걸리는 시간을 확인할 수 있습니다.

strace -o myapp.strace -tt myapp

애플리케이션 시작이 완료되면 추적 파일을 검토 myapp.strace하고 애플리케이션이 사용자 입력을 기다리는 라인을 찾습니다. 예를 들어, 아래 예에서 select내가 보여주는 호출은 애플리케이션이 다른 작업을 수행하기 위해 사용자 입력을 기다리는 지점입니다. 다음 줄은 애플리케이션에 발생하는 상황에 해당합니다.

01:07:53.975957 execve("/usr/bin/xterm", ["xterm"], [/* 83 vars */]) = 0
01:07:54.319288 select(5, [3 4], [], NULL, NULL) = 1 (in [3])
01:07:57.129481 recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"\10\4\344\1\343q\257

일부 애플리케이션은 결코 유휴 상태가 아니며 영원히 폴링 상태를 유지합니다. 그런 다음 응용 프로그램이 "완전히 시작"되는 시기를 결정하기 위해 스스로 판단해야 합니다.

일부 응용 프로그램은 특정 파일을 로드하거나 미리 정의된 특정 시작 작업을 수행할 때 사용자 입력에 응답하기 시작할 수 있습니다. "전체 시작"에 대한 공식적인 정의는 없으므로 "전체 시작"에 해당하는 항목을 선택하는 것은 사용자의 몫입니다.

"전체 부팅"을 "GUI 창 표시"로 계산하면 다음을 사용할 수 있습니다.xtoolwait, 애플리케이션을 시작하고 창이 표시될 때까지 기다린 다음 종료됩니다. 창이 완전히 안정적인 방식으로 응용 프로그램과 연결되어 있지 않기 때문에 다른 응용 프로그램이 동시에 새 창을 표시하는 경우 잘못된 긍정을 반환할 수 있습니다.

time xtoolwait xterm

답변2

"신청"은(는) 무슨 뜻인가요? GUI 애플리케이션? 어떤 앱인가요? "시작하다"은(는) 무슨 뜻인가요?

모든 프로그램은 거의 즉시 시작됩니다. 지연은 출력 수신에 있습니다.

관련 정보