INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ
O QUE SÃO PROCESSOS 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 Google Chrome, 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. Professor Carlos Muniz carlosmuniz@globo.com 2
O QUE SÃO PROCESSOS 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. Professor Carlos Muniz carlosmuniz@globo.com 3
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. Professor Carlos Muniz carlosmuniz@globo.com 4
COMPONENTES DE UM PROCESSO 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). Professor Carlos Muniz carlosmuniz@globo.com 5
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Agora que você sabe um pouco mais sobre processos, vai entender melhor a importância do Gerenciador de Tarefas do Windows. Lembrando como acessá-lo: use a combinação Ctrl+Alt+Del e selecione Gerenciador de Tarefas. Com a janela aberta, acesse a aba Processos. Esta é a lista dos processos em execução no momento. Atente para um detalhe: à primeira vista, a lista pode não ser tão grande. Isso se explica porque o Gerenciador de Tarefas filtra alguns processos por padrão. Para visualizar a relação completa, clique no botão "Mostrar processos de todos usuários". Professor Carlos Muniz carlosmuniz@globo.com 6
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Professor Carlos Muniz carlosmuniz@globo.com 7
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Você vê o nome do processo, o nome do usuário relacionado e dois indicadores fundamentais para se certificar de que tudo está correndo bem: CPU e Memória. Atente para os níveis destes campos, pois um valor muito alto indica algum problema. Na imagem anterior, o navegador Firefox acusa o consumo de quase 300 MB de memória RAM. Isso significa que o navegador está com muitas abas abertas ou executando alguma tarefa pesada. Quem não tem tanta memória RAM sobrando deve ponderar se é necessário manter tantas tarefas simultâneas no navegador. Professor Carlos Muniz carlosmuniz@globo.com 8
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Observe outros processos que consomem muita memória ou processador, pois significa que eles estão bastante ativos. Além de desperdiçar memória, os comilões podem esconder um grande perigo: os vírus ou outros arquivos perigosos como programas espiões em ação. Mesmo quando não perigosos, os processos podem ser simplesmente inúteis. Isso é comum, pois nem sempre o sistema consegue se desfazer completamente. No entanto, alguns processos podem parecer inativos, mas eles não podem ser terminados. Para terminar um processo, basta selecioná-lo e clicar em "Finalizar processo". Professor Carlos Muniz carlosmuniz@globo.com 9
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Não é tarefa fácil observar todos os processos para assegurar que eles não são maliciosos, nem mesmo para usuários avançados. Mas há ferramentas que ajudam você a identificar cada processo ativo. No Baixaki você encontra o Fileinspect, um banco de dados onde você só precisa digitar o nome do processo para descobrir qual programa ativou e qual a utilidade para o sistema. Professor Carlos Muniz carlosmuniz@globo.com 10
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Professor Carlos Muniz carlosmuniz@globo.com 11
O IMPORTANTÍSSIMO GERENCIADOR DE TAREFAS Se o Fileinspect não ajudar, a internet é uma vasta fonte. É comum achar discussões em fóruns de informática sobre processos comilões e/ou perigosos. Basta pesquisar pelo nome, dificilmente você ficará sem informações. Há programas que podem substituir o Gerenciador de Tarefas do Windows. Um dos mais baixados do Baixaki é o System Explorer. Outras opções bem avaliadas são o Security Process Explorer e o System Explorer Portable. Para finalizar um processo na marra, experimente o Kill Process. Professor Carlos Muniz carlosmuniz@globo.com 12
PROBLEMAS COM PROCESSOS Alguma vez você fechou um programa, precisou executá-lo novamente, mas ele não abriu? E você recebeu um aviso de que uma instância do programa já estava em execução? Fique tranquilo, este é um problema muito simples de resolver. O que aconteceu é que, por algum motivo, o processo do programa não foi terminado corretamente. Tudo que você precisa fazer é acessar o Gerenciador de Tarefas e finalizar o aplicativo em questão. Um programa que frequentemente passa por essa situação é o Steam. Professor Carlos Muniz carlosmuniz@globo.com 13
PROBLEMAS COM PROCESSOS Agora que você sabe mais sobre processos, explore mais o Gerenciador de Tarefas e veja quantas execuções inúteis você pode finalizar. O computador pode ficar mais rápido com menos tarefas simultâneas. Mas tenha cuidado: se você não tem certeza, então deixe o processo como está. Professor Carlos Muniz carlosmuniz@globo.com 14
SISTEMAS DE ARQUIVOS O sistema de arquivos é a parte do sistema operacional mais visível para os usuários. Durante o tempo todo, usuários manipulam arquivos contendo textos, planilhas, desenhos, figuras, jogos, etc. Os arquivos são normalmente implementados a partir de discos magnéticos. Como um acesso a disco demora cerca de 10000 vezes mais tempo do que um acesso à memória principal, são necessárias estruturas de dados e algoritmos que otimizem os acessos ao disco. É importante observar que os sistemas de arquivos implementam um recurso em software que não existe no hardware. O hardware oferece simplesmente espaço em disco, na forma de setores que podem ser acessados (gravados e lidos) individualmente, em ordem aleatória. O conceito de arquivo, muito mais útil que o simples espaço em disco, é uma abstração criada pelo SO. Professor Carlos Muniz carlosmuniz@globo.com 15
O CONCEITO DE ARQUIVO Um arquivo pode ser genericamente definido como uma coleção de dados relacionados entre si. Normalmente, arquivos contém programas (tanto fonte como objeto) ou dados. Arquivos são referenciados através de nomes. Além de um nome, cada arquivo possui também outros atributos, tais como: tipo, momento da criação, identificação do criador, tamanho, etc. Professor Carlos Muniz carlosmuniz@globo.com 16
TIPOS DE ARQUIVOS Diferentes tipos de informação podem ser armazenados em um arquivo: programas fonte, programas objeto, texto, dados numéricos, registros de funcionários, som, imagem, etc. Cada arquivo possui uma estrutura interna, conforme sua aplicação. Por exemplo, um arquivo texto é uma seqüência de caracteres organizados em linhas e parágrafos; um programa executável é uma seqüência de bytes representando instruções em código de máquina; um programa fonte é uma seqüência de caracteres que representam comandos de uma linguagem de programação (normalmente estes arquivos são do tipo somente texto, não admitindo qualquer tipo de formatação especial). Professor Carlos Muniz carlosmuniz@globo.com 17
TIPOS DE ARQUIVOS Uma questão importante é até que ponto o SO deve conhecer a estrutura interna dos arquivos. Para ter esse conhecimento, o SO vai ser maior e mais complexo. Além disso, para evoluir, deverá permitir a definição de novos tipos de arquivos, uma vez que novas aplicações podem expor novas demandas, e com elas, tipo de arquivos diferentes. Isto inviabiliza a pretensão de conhecer a estrutura interna dos arquivos, na prática. Em geral, o conhecimento do SO se limita às informações contidas no registro descritor do arquivo. Isto já lhe permite bloquear algumas operações inválidas. Por exemplo, pode recusar-se a imprimir um arquivo que contenha um programa executável. Professor Carlos Muniz carlosmuniz@globo.com 18