sistemas
Um sistema operacional não executa somente os programa que podemos ver. Imagine que os aplicativos que você roda reúnem diversas instruções e comandos, porém, são os processos que efetivamente executam esses comandos. Isso significa que um único aplicativo pode ter vários processos relacionados a ele. Por exemplo, o navegador Mozila Firefox, que executa uma nova tarefa a cada aba aberta. Essa medida permite que cada aba seja gerenciada individualmente e, mesmo que uma trave, as outras continuam trabalhando normalmente.
Simplificando, os processos representam tarefas em execução, mas nem todas têm relação direta com algum aplicativo. Muitas delas são executadas em pano de fundo e mantêm o sistema trabalhando - gerenciando redes, memória, disco, checagem antivírus, etc. Logo, podemos definir processos como softwares que executam alguma ação e que podem ser controlados de alguma maneira, seja pelo usuário, pelo aplicativo correspondente ou pelo sistema operacional.
Componentes de um processo:
Um processo tem uma série de características próprias. A estrutura básica é formada por uma imagem do código executável associado a um programa. A memória contém o código executável e dados específicos. Há também a descrição de recursos do sistema alocados ao processo, informações de atributos de segurança e a indicação do estado atual.
Um processo passa por diferentes estados desde sua criação até seu término. Enquanto ele é criado, seu estado é considerado "Novo"; em ação, muda para "Executando"; quando depende da ocorrência de algum evento, vira "Esperando"; quando não mais necessário, o processo é "Terminado". O sistema operacional reúne todas essas informações através de estruturas específicas chamadas PCB (sigla de Process Control Blocks, o que em tradução livre seria Blocos de Controle de Processos).
Contexto de Hardware
O que faz:
– Armazena o conteúdo dos registradores gerais da CPU e de uso específico, como o program counter (PC), o stack