태스크

컴퓨팅에서 태스크(task)는 작업 단위의 실행 단위이다. 이 용어는 모호한데, 정확히 사용할 수 있는, 대안이 되는 용어로는 프로세스, 경량 프로세스, 스레드(실행을 위해), 스텝, 요청, 쿼리(작업을 위해)가 있다. 다이어그램에 따르면 들어오는 작업(할 작업)과 나가는 작업(완료된 작업)의 큐, 그리고 이 작업을 수행하기 위한 스레드들의 스레드 풀이 있다. 작업 단위 그 자체나 해당 작업을 수행하는 스레드를 "태스크"라고 부를 수 있으며 이것들은 각각 요청/응답/스레드, 들어오는 태스크/완료된 태스크/스레드(그림에 따라) 또는 요청/응답/태스크로 부를 수 있다.

용어 
실행 단위의 문맥에서 일부 운영 체제와 스레드가 있는 다른 운영 체제들에서 태스크는 프로세스와 동의어이다. 상호작용을 하지 않는 실행(일괄 처리)에서 태스크는 잡의 실행 단위이며, 여기서 태스크 그 자체는 일반적으로 프로세스이다. 멀티태스킹이라는 용어는 여러 개의 태스크를 동시에 "실행"한다는 면에서 주로 '처리'를 의미한다.

역사 
'태스크'라는 용어는 잡(job)의 일부를 위해 1960년대 초 멀티프로그래밍으로 거슬러 올라간다.

이 용어는 MFT(Multiprogramming with a Fixed number of Tasks)와 MVT(Multiprogramming with a Variable number of Tasks)를 제공했던 OS/360(1964년 발표)의 도입과 함께 보급되었다.

오늘날 '태스크'라는 용어는 매우 모호하게 사용된다. 이를테면 윈도우 작업 관리자는 (실행 중인) 프로세스를 관리하는 반면 윈도우 작업 스케줄러는 오늘날 잡 스케줄러로 알려진 앞으로의 프로그램을 스케줄링하며 .job 확장자를 사용한다. 이와 대조적으로 태스크 큐라는 용어는 "작업의 단위" 문맥에서 일반적으로 사용된다.

같이 보기 
 스케줄링 (컴퓨팅)

각주 

컴퓨터 용어