Multitarefa

Um sistema operacional multitarefa divide o tempo de processador disponível entre os processos ou threads que precisam dele. O sistema foi projetado para multitarefa preventiva; ele aloca uma fatia de tempo do processador para cada thread executado. O thread em execução no momento é suspenso quando sua fatia de tempo decorre, permitindo que outro thread seja executado. Quando o sistema alterna de um thread para outro, ele salva o contexto do thread preempcionado e restaura o contexto salvo do próximo thread na fila.

A duração da fração de tempo depende do sistema operacional e do processador. Como cada fatia de tempo é pequena (aproximadamente 20 milissegundos), vários threads parecem estar sendo executados ao mesmo tempo. É esse o caso em sistemas de multiprocessador, em que os threads executáveis são distribuídos entre os processadores disponíveis. No entanto, você deve ter cuidado ao usar vários threads em um aplicativo, pois o desempenho do sistema pode diminuir se houver muitos threads.

Para obter mais informações, consulte estes tópicos: