Faz o papel de gerente do processador?

As 2 principais funções do gerenciamento do processador são:

-Garantir que cada processo e aplicativo recebam tempo suficiente do processador para funcionar corretamente;

-Usar quantos ciclos de processador quanto possível para realizar as tarefas.

A unidade básica do software com a qual o sistema operacional trabalha para organizar as tarefas realizadas pelo processador é representada pelo processo ou thread, dependendo do sistema operacional.

Podemos até pensar em um processo como um aplicativo, mas isso dá uma idéia incompleta de como os processos se relacionam com o sistema operacional e com o hardware. O aplicativo que você vê (processador de texto, planilha eletrônica ou jogo) é, de fato, um processo. Porém, os aplicativos podem ativar outros processos para se comunicarem com outros dispositivos ou computadores. Também existe uma série de processos que são executados sem que você perceba. O Windows e o UNIX podem executar, em background, dezenas de processos para lidar com a rede, gerenciar a memória e o disco rígido, verificar vírus etc.

Em resumo, um processo é um software que executa ações e pode ser controlado pelo usuário, por outros aplicativos ou pelo sistema operacional.

São os processos, e não os aplicativos, que o sistema operacional controla e faz sua escala para que a CPU os execute. Em um sistema monotarefa, este trabalho é bastante simples. O sistema operacional permite que o aplicativo seja iniciado, suspendendo sua execução somente para tratar as interrupções e inserções do usuário.

Interrupções são sinais especiais enviados pelo hardware ou software para a CPU. É como se alguma parte do computador levantasse a mão e chamasse a atenção da CPU em uma reunião animada. Algumas vezes, o sistema operacional vai priorizar alguns processos e ignorar as interrupções (mascarar as interrupções) para que uma tarefa seja cumprida o mais rápido possível. Entretanto, existem algumas interrupções (condições de erro ou problemas com a memória) que são tão importantes que não podem ser ignoradas. Essas interrupções não-mascaráveis (NMI - Non-maskable Interrupts) devem ser atendidas imediatamente.

As interrupções podem causar alguma complicação na execução dos processos em um sistema monotarefa. Porém, o trabalho do sistema operacional se torna muito mais complicado em um sistema multitarefa. Ele deve organizar a execução dos aplicativos para que você acredite que várias coisas estão acontecendo ao mesmo tempo. Isto é complicado porque a CPU só pode fazer uma coisa de cada vez. Para criar esta aparência de coisas acontecendo ao mesmo tempo, o sistema operacional precisa mudar de um processo para o outro milhares de vezes por segundo. Vamos ver o que acontece.

Um processo ocupa uma certa quantidade de memória RAM. Ele também utiliza os registradores, pilhas e filas da CPU e memória do sistema operacional.

Quando 2 processos acontecem ao mesmo tempo, o sistema operacional aloca uma certa quantidade de ciclos da CPU para um programa.

Depois que os ciclos são executados, o sistema operacional faz uma cópia de todos os registradores, pilhas e filas utilizados pelos processos e registra o ponto em que a execução foi interrompida.

Ele então carrega todos os registradores, pilhas e filas utilizados pelo segundo processo e aloca outra quantidade de ciclos de CPU para ele.

Quando os ciclos terminam, o sistema operacional copia todos os registradores, pilhas e filas utilizadas pelo segundo programa e carrega o primeiro programa.

Todas as informações necessárias para controlar a mudança dos processos são armazenadas num pacote de dados chamado de bloco de controle de processo, que contém:

-um número ID que identifica o processo;

-ponteiros para as localizações do programa e seus dados quando o último processamento ocorreu;

-conteúdo dos registradores;

-estado de vários flags e switches;

-ponteiros para os limites superior e inferior da memória requisitada para o processo;

-uma lista de arquivos abertos pelo processo;

-a prioridade do processo;

-o status de todos os dispositivos de entrada/saída requisitados pelo processo.

Cada processo tem um status associado a ele. Muitos processos não consomem tempo da CPU até que recebam algum tipo de comando. O processo pode estar, por exemplo, esperando que o usuário aperte alguma tecla, enquanto ele espera, a CPU não é utilizada. Neste momento, o processo está "suspenso". Quando o usuário aperta a tecla, o sistema operacional muda o status do processo. Quando o status do processo muda de "pendente" para "ativo" ou de "suspenso" para "em execução", as informações no bloco de controle de processo devem ser usadas, assim como os dados de programa, para direcionar a execução da alternância de tarefas do sistema operacional.

Essa troca de processo acontece sem a interferência direta do usuário e cada processo consegue ciclos de CPU suficientes para realizar suas tarefas em um período razoável de tempo. O problema acontece quando o usuário tenta executar muitos processos ao mesmo tempo. O próprio sistema operacional precisa de alguns ciclos de CPU para salvar todos os registradores, filas e pilhas dos processos e realizar a alternância entre eles. Se uma determinada quantidade de processos é iniciada, e se o sistema operacional não foi cuidadosamente planejado, o sistema pode começar a usar a maioria dos ciclos de CPU disponível para alternar os processos em vez de executá-los. Isso se chama thrashing e geralmente requer algum tipo de intervenção direta do usuário para interromper os processos e reorganizar o sistema.

Uma forma de reduzir o thrashing é diminuir a necessidade de criação de novos processos para realizar as tarefas. Alguns sistemas operacionais utilizam um processo mais "leve" chamado thread. Uma thread pode controlar o trabalho mas, geralmente, não lida com os vários tipos de entrada/saída e não estabelece estruturas que exijam o longo bloco de controle de processo de um processo regular. Um processo pode iniciar muitas threads ou outros processos, mas uma thread não pode iniciar um processo.

Até agora, tudo o que discutimos diz respeito a uma única CPU. Em um sistema com duas ou mais CPUs, o trabalho é dividido. O sistema operacional deve equacionar a demanda de cada processo para as diferentes CPUs. Os sistemas operacionais assimétricos utilizam uma CPU para suas próprias necessidades e dividem os processos dos aplicativos entre as outras CPUs. Os sistemas operacionais simétricos compartilham as várias CPUs e equacionam a demanda e a disponibilidade da CPU, mesmo quando o sistema operacional é o único aplicativo em execução.

A CPU não é o único recurso requisitado mesm­o quando somente o sistema operacional está sendo executado. O gerenciamento da memória é um passo crucial para que todos os processos sejam executados de maneira tranqüila.

Quais são as funções básicas da gerência do processador?

As 2 principais funções do gerenciamento do processador são: -Garantir que cada processo e aplicativo recebam tempo suficiente do processador para funcionar corretamente; -Usar quantos ciclos de processador quanto possível para realizar as tarefas.

O que é gerência do processador?

A gerencia do processador permite garantir o uso adequado do processador para atender ao diversos processos em execução pelo sistema operacional.

Faz o papel de gerente do processador indica e fiscaliza o que deve ser feito e comanda os demais componentes do processador?

Unidade de Controle Faz o papel de gerente do processador, indica e fiscaliza o que deve ser feito e comanda os demais componentes do processador.

Quais são as 3 funções de um processador?

Um processador é uma espécie de microchip especializado. A sua função é acelerar, endereçar, resolver ou preparar dados, dependendo da aplicação.