1 1.0 Histrico e Evoluo...................................................................................................................................... 5 2 2.0 Definio de Sistema Operacional ............................................................................................................... 6 3 3 - Classificao................................................................................................................................................... 6 3.1 Tipos de sistemas operacionais ................................................................................................................... 7 3.1.1 Batch (de lote) ............................................................................................................................................ 7 3.1.2 De rede ....................................................................................................................................................... 7 3.1.3 Distribudo................................................................................................................................................... 7 3.1.4 Multi-usurio ............................................................................................................................................... 7 3.1.5 Desktop....................................................................................................................................................... 8 3.1.6 Servidor....................................................................................................................................................... 8 3.1.7 Embutido..................................................................................................................................................... 8 3.1.8 Tempo real .................................................................................................................................................. 8 4 4 - Aplicaes....................................................................................................................................................... 8 4.1 Sistemas Monoprogramveis (ou monotarefa)............................................................................................ 9 4.2 Sistemas Multiprogramveis (multitarefa).................................................................................................... 9 4.3 Sistemas "Batch" ......................................................................................................................................... 10 4.4 Sistemas "Time Sharing" ............................................................................................................................ 10 4.5 Sistemas de Tempo Real ............................................................................................................................ 11 4.6 Sistemas Mono e Multitarefa ...................................................................................................................... 11 4.7 Sistemas Multiprocessados ........................................................................................................................ 11 4.8 Sistemas em Rede...................................................................................................................................... 12 4.9 Sistemas Distribudos.................................................................................................................................. 12 5 5 - Arquitetura do Sistema Operacional ........................................................................................................... 12 5.01 Definio de Arquitetura de Sistemas Operacionais............................................................................... 12 5.02 Componentes da Arquitetura de Sistemas Operacionais....................................................................... 12 5.02.1 Ncleo..................................................................................................................................................... 12 5.02.2 Drivers..................................................................................................................................................... 12 5.02.3 Cdigo de inicializao .......................................................................................................................... 12 5.02.4 Programas utilitrios............................................................................................................................... 13 5.03 Monoprogramao .................................................................................................................................... 13 5.04 Multiprogramao...................................................................................................................................... 14 5.05 Kernel ......................................................................................................................................................... 15 5.05.1 Responsabilidades do kernel................................................................................................................. 15 5.05.2 Gerenciamento de processos....................................................................................................................... 16 5.05.3 Gerenciamento de memria ........................................................................................................................ 16 5.05.4 Gerenciamento de dispositivo..................................................................................................................... 16 5.05.5 Chamadas de sistema.................................................................................................................................. 16 5.06 Gerncia de Processos............................................................................................................................. 16 5.07 Comunicao entre Processos................................................................................................................. 17 5.07.1 Condies de disputa............................................................................................................................. 17 5.07.2 Sees (ou regies) Crticas ................................................................................................................. 17 5.07.3 Excluso mtua atravs da espera ocupada (busy waiting) ............................................................... 18 5.08 Sincronizao (Semforos e Monitores).................................................................................................. 18 Prof. Miguel Angel Mrquez Galleguillos 3 5.08.1Sincronizao de Processos com Semforos....................................................................................... 19 5.08.2 Monitores ................................................................................................................................................ 19 5.09 Sistemas de Arquivos................................................................................................................................ 20 5.09.1 Arquivos.................................................................................................................................................. 20 5.09.1.1 Organizao de Arquivos ................................................................................................................... 20 5.09.2 Tipos de Arquivos................................................................................................................................... 20 5.09.3 Diretrios................................................................................................................................................. 20 5.09.4 O Projeto de um Sistema de Arquivos.................................................................................................. 21 5.09.5 Implementao de Arquivos .................................................................................................................. 21 5.09.6 Implementao de Diretrios................................................................................................................. 21 5.09.7 Arquivos Compartilhados....................................................................................................................... 21 5.09.8 Gerenciamento do Espao em Disco.................................................................................................... 22 5.10 Chamadas de sistema............................................................................................................................... 22 5.11 Interrupes............................................................................................................................................... 22 5.13 Controles de concorrncia (Deadlock e Starvation)................................................................................ 23 5.13.1 Deadlock................................................................................................................................................. 23 5.13.2 Starvation................................................................................................................................................ 24 5.13.2.1 Processos em Starvation.................................................................................................................... 24 5.14 Gerncia de memria................................................................................................................................ 25 5.14.1 Endereos Lgicos e Fsicos................................................................................................................. 25 5.14.2 Alocao................................................................................................................................................. 25 5.14.3 Memria Virtual ...................................................................................................................................... 25 5.14.4 Paginao............................................................................................................................................... 26 5.14.5 Segmentao.......................................................................................................................................... 26 5.15 Gerncia de dispositivos de Entrada e Sada.......................................................................................... 27 5.15.1 Dispositivos de E/S................................................................................................................................ 27 5.15.2 Controladores de Dispositivos............................................................................................................... 27 5.15.3 Acesso Direto Memria....................................................................................................................... 27 5.16 Chamada Remota de Procedimento (RPC)............................................................................................. 28 6 6.0 Sistemas Operacionais de Cdigo Fechado.............................................................................................. 29 6.1 Instalao e Configurao .......................................................................................................................... 29 6.1.1 Particionamento de Dispositivos de Armazenamento............................................................................ 29 6.1.2 Procedimentos de Inicializao............................................................................................................... 36 6.1.2.1 Manipulando o Ambiente Grfico do Windows XP.............................................................................. 32 6.1.2.2 Diferenas entre as parties do Windows XP................................................................................... 33 6.2 Ferramentas do Sistema............................................................................................................................. 36 6.2.1 Arquivos e Pastas..................................................................................................................................... 36 6.2.1.1 Cpia...................................................................................................................................................... 36 6.2.1.2 Movimentao....................................................................................................................................... 36 6.2.1.3 Excluso ................................................................................................................................................ 36 6.2.1.4 Localizao............................................................................................................................................ 37 6.2.2.01 Adicionar novo Hardware ................................................................................................................... 38 6.2.2.02 Sistema................................................................................................................................................ 39 6.2.2.03 Impressoras......................................................................................................................................... 39 6.2.2.04 Modems............................................................................................................................................... 40 6.2.2.05 Teclado................................................................................................................................................ 40 6.2.2.06 Mouse.................................................................................................................................................. 41 6.2.2.08 Configuraes regionais..................................................................................................................... 43 6.2.2.09 Data e hora.......................................................................................................................................... 43 6.2.2.10 Adicionar ou remover programas....................................................................................................... 45 6.2.2.12 Opes de acessibilidade................................................................................................................... 47 6.2.2.13 Fontes.................................................................................................................................................. 47 6.2.2.14 Ferramentas administrativas .............................................................................................................. 48 6.2.3 Ferramentas de Administrao de usurios........................................................................................... 53 6.2.3.1 Incluso.................................................................................................................................................. 55 6.2.3.3 Edio.................................................................................................................................................... 56 6.2.3.4 Gerenciamento de Perfis...................................................................................................................... 56 6.2.4 Registro (Registry).................................................................................................................................... 58 6.2.4.1 Adio.................................................................................................................................................... 59 6.2.4.2 Edio.................................................................................................................................................... 59 6.2.4.3 Remoo de Chaves ou valores .......................................................................................................... 60 6.2.4.4 Principais chaves .................................................................................................................................. 60 6.2.4.5 Mtodos de Backup do Registro.......................................................................................................... 62 6.2.4.6 Recuperao do Registro..................................................................................................................... 63 Prof. Miguel Angel Mrquez Galleguillos 4 6.2.5.1 Deteo de erros................................................................................................................................... 64 6.2.5.1 Ferramentas de Manuteno de Mdia................................................................................................ 64 6.2.5.2 Cpias de Segurana e Salvaguarda .................................................................................................. 64 6.3 Agendamento de Tarefa ............................................................................................................................. 65 6.4 Scripts de Automao (BAT, VBS)............................................................................................................. 66 Prof. Miguel Angel Mrquez Galleguillos 5
1.0 Histrico e Evoluo No incio da computao os primeiros "sistemas operacionais" eram nicos, pois cada mainframe vendido necessitava de um sistema operacional especfico. Esse problema era resultado de arquiteturas diferentes e da linguagem utilizada no caso, assembly (linguagem de baixo nvel). Aps essa fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de tarefas (jobs), pois os sistemas eram mono-usurio e tinham cartes perfurados como entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para trocar os cartes perfurados). Um dos primeiros sistemas operacionais de propsito geral foi o CTSS, desenvolvido no MIT. Aps o CTSS, o MIT, os laboratrios Bell da AT&T e a General Eletric desenvolveram o Multics, cujo objetivo era suportar centenas de usurios. Apesar do fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de sistemas operacionais. Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken Thompson, comeou a reescrever o Multics num conceito menos ambicioso, criando o Unics (em 1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram geralmente programados em assembly, at mesmo o Unix em seu incio. Ento, Dennis Ritchie (tambm da Bell) criou a linguagem C a partir da linguagem B, que havia sido criada por Thompson. Finalmente, Thompson e Ritchie reescreveram o Unix em C. O Unix criou um ecossistema de verses, onde destacam-se: System V e derivados (HP-UX, AIX); famlia BSD (FreeBSD, NetBSD, OpenBSD, etc.), Linux e at o Mac OS X (que deriva do Mach e FreeBSD). Na dcada de 1970, quando comearam a aparecer os computadores pessoais, houve a necessidade de um sistema operacional de utilizao mais fcil. Em 1980, William (Bill) Gates e seu colega de faculdade, Paul Allen, fundadores da Microsoft, compram o sistema QDOS ("Quick and Dirty Operating System") de Tim Paterson por $50.000, batizam-no de DOS (Disk Operating System) e vendem licenas IBM. O DOS vendeu muitas cpias, como o sistema operacional padro para os computadores pessoais desenvolvidos pela IBM. No comeo da dcada de 1990, um estudante de computao finlands postou um comentrio numa lista de discusso da Usenet dizendo que estava desenvolvendo um kernel de sistema operacional e perguntou se algum
Introduo aos Sistemas Operacionais
Prof. Miguel Angel Mrquez Galleguillos 6 gostaria de auxili-lo na tarefa. Este estudante chamava-se Linus Torvalds e o primeiro passo em direo ao to conhecido Linux foi dado naquele momento. 2.0 Definio de Sistema Operacional Um Sistema operacional pode ser definido como:
Um programa que atua como um intermedirio entre os usurios e o hardware [Silberschatz 1997].
Um conjunto de programas que controla os recursos do computador e prov a base sobre a qual as aplicaes so escritas [Tanenbaum 1992].
Um sistema de computador composto de hardware, programas de sistemas e programas de aplicao
3 - Classificao Em relao ao seu projeto (arquitetura), segundo Tanenbaum: Kernel monoltico ou monobloco: o kernel consiste em um nico processo executando numa memria protegida (espao do kernel) executando as principais funes. Ex.: Windows, Linux, FreeBSD. Microkernel ou modelo cliente-servidor: o kernel consiste de funes mnimas (comunicao e gerenciamento de processos), e outras funes, como sistemas de arquivos e gerenciamento de memria, so executadas no espao do usurio como servios; as aplicaes (programas) so os clientes. Ex.: GNU Hurd, Mach. Sistema em camadas: funes do kernel iro executar em camadas distintas, de acordo com seu nvel de privilgio. Ex.: Multics. Monitor de mquinas virtuais: fornece uma abstrao do hardware para vrios sistemas operacionais. Ex.: VM/370, VMware, Xen. Quanto capacidade de processamento, pode-se usar a seguinte classificao: Sistema Bancrio Controle de Estoques Jogos Compiladores Editores Interpretador de comandos (Shell) Sistema Operacional Linguagem de Mquina Microprogramao Dispositivos Fsicos Programas de Aplicaes Programas de Sistema (software bsico) Hardware Prof. Miguel Angel Mrquez Galleguillos 7 Monotarefa: pode-se executar apenas um processo de cada vez Ex.: DOS. Multitarefa: alm do prprio SO, vrios processos (tarefas) esto carregados em memria, sendo que um pode estar ocupando o processador e outros ficam enfileirados, aguardando a sua vez. O compartilhamento de tempo no processador distribudo de modo que o usurio tenha a impresso que vrios processos esto sendo executados simultaneamente. Ex: Windows, Linux, FreeBSD. Multiprocessamento ou multiprogramao: o SO pode distribuir as tarefas entre vrios processadores.
3.1 Tipos de sistemas operacionais
Os sistemas operacionais podem ser classificados segundo diversos parmetros e perspectivas, como tamanho, velocidade, suporte a recursos especficos, acesso rede, etc. A seguir so apresentados alguns tipos de sistemas operacionais usuais (muitos sistemas operacionais se encaixam bem em mais de uma das categorias apresentadas):
3.1.1 Batch (de lote) : os sistemas operacionaismais antigos trabalhavam por lote, ou seja,todos os programas a executar eram colocados em uma fila, com seus dados e demais informaes para a execuo. O processador recebia um programa aps o outro, processando-os em seqncia, o que permitia um alto grau de utilizaco do sistema. Ainda hoje o termo em lote usado para designar um conjunto de comandos que deve ser executado em seqncia, sem interferncia do usurio. Exemplos desses sistemas incluem o OS/360 e VMS, entre outros.
3.1.2 De rede : um sistema operacional de rede deve possuir suporte operaco em rede, ou seja, a capacidade de oferecer s aplicaes locais recursos que estejam localizados em outros computadores da rede, como arquivos e impressoras. Ele tambm deve disponibilizar seus recursos locais aos demais computadores, de forma controlada. A maioria dos sistemas operacionais atuais oferece esse tipo de funcionalidade.
3.1.3 Distribudo : em um sistema operacional distribudo, os recursos de cada mquina esto disponveis globalmente, de forma transparente aos usurios. Ao lanar uma aplicao, o usurio interage com sua janela, mas no sabe onde ela est executando ou armazenando seus arquivos: o sistema e quem decide, de forma transparente. Os sistemas operacionais distribudos j existem h tempos (Amoeba [TKvRB91] e Clouds [DRJLAR91], por exemplo),mas ainda no so uma realidade de mercado.
3.1.4 Multi-usurio : Um sistema operacional multi-usurio deve suportar a identificao do dono de cada recurso dentro do sistema (arquivos, processos, reas de memria, conexes de rede) e impor regras de controle de acesso para impedir o uso desses recursos por usurios no autorizados. Essa Prof. Miguel Angel Mrquez Galleguillos 8 funcionalidade fundamental para a segurana dos sistemas operacionais de rede e distribudos. Grande parte dos sistemas atuais so multi-usurios.
3.1.5 Desktop : um sistema operacional de mesa voltado ao atendimento do usurio domstico e corporativo para a realizao de atividades corriqueiras, como edio de textos e grficos, navegao na Internet e reproduo de mdias simples. Suas principais caractersticas so a interface grfica, o suporte `a interatividade e a operao em rede. Exemplos de sistemas desktop so o Windows XP, MacOS e Linux.
3.1.6 Servidor : um sistema operacional servidor deve permitir a gesto eficiente de grandes quantidades de recursos (disco, memria, processadores), impondo prioridades e limites sobre o uso dos recursos pelos usurios e seus aplicativos. Normalmente um sistema operacional servidor tambm tem suporte a rede e multi-usurios.
3.1.7 Embutido : um sistema operacional dito embutido (embedded) quando construdo para operar sobre um hardware com poucos recursos de processamento, armazenamento de energia. Aplicaes tpicas desse tipo de sistema aparecem em telefones celulares, controladores industriais e automotivos, equipamentos eletrnicos de uso domstico (leitores de DVD, TVs, fornos-micro-ondas, centrais de alarme, etc). Muitas vezes um sistema operacional embutido se apresenta na forma de uma biblioteca a ser ligada ao programa da aplicao (que fixa). Exemplos de sistemas operacionais embutidos so o C/OS, Xylinx, LynxOS e VxWorks.
3.1.8 Tempo real : ao contrrio da concepo usual, um sistema operacional de tempo real no precisa ser necessariamente ultra-rpido; sua caracterstica essencial ter um comportamento temporal previsvel (ou seja, seu tempo de resposta deve ser conhecido no melhor e pior caso de operao). A estrutura interna de um sistema operacional de tempo real deve ser construda de forma a minimizar esperas e latncias imprevisveis, como tempos de acesso a disco e sincronizaes excessivas. Existem duas classificaes de sistemas de tempo real: soft real-time systems, nos quais a perda de prazos implica na degradao do servio prestado. Um exemplo seria o suporte gravao de CDs ou reproduo de msicas. Caso o sistema se atrase, pode ocorrer a perda da mdia em gravao ou falhas na msica que est sendo tocada. Por outro lado, nos hard real-time systems a perda de prazos pelo sistema pode perturbar o objeto controlado, com graves conseqncias humanas, econmicas ou ambientais. Exemplos desse tipo de sistema seriam o controle de funcionamento de uma turbina de avio a jato ou de uma caldeira industrial. Exemplos de sistemas de tempo real incluem o QNX, RT-Linux e VxWorks. Muitos sistemas embutidos tm caractersticas de tempo real, e vice-versa.
4 - Aplicaes
Diversos tipos de sistemas operacionais podem ser identificados: monoprogramveis, multiprogramveis, multiprocessveis, sistemas em rede, Prof. Miguel Angel Mrquez Galleguillos 9 sistemas distribuidos, sistemas em lote ("batch"), sistemas de tempo compartilhado ("time sharing") e de tempo real.
4.1 Sistemas Monoprogramveis (ou monotarefa)
Se caracterizam pela execuo de uma nica tarefa (processo) por vez, sendo que todos os recursos (processador, memria e perifricos) ficam exclusivamente a ela dedicados. Nesses sistemas, enquanto o programa aguarda a ocorrncia de um evento qualquer, o processador ficar ocioso ("idle"); a memria ficar subutilizada, caso o programa no a ocupe totalmente e os perifricos tambm ficaro ociosos se no utilizados.
Os processos, como mostrado na figura 4.1 abaixo, so executados em seqncia e um s inicia aps o trmino do anterior. Os espaos em branco representam os perodos de ociosidade da UCP, enquanto aguarda a realizao ou execuo de um evento externo qualquer solicitado pelo programa.
Figura 4.1 - Eexecuo de 3 tarefas em um sistema monoprogramvel
4.2 Sistemas Multiprogramveis (multitarefa) Se caracterizam por permitir que vrios programas (tarefas) residam simultaneamente na memria e concorram pelo uso dos recursos disponveis (apenas um programa detm, num determinado instante, o controle da UCP). So muito mais complexos e eficientes que os sistemas monoprogramveis. Nestes Sistemas, enquanto uma tarefa aguarda a ocorrncia de um evento externo a UCP, esta pode atender outra tarefa qualquer, que esteja em condies de ser executada. O sistema operacional se encarrega de gerenciar o acesso concorrente das diversas tarefas aos diversos recursos, de forma ordenada e protegida. Como pode ser visto na figura 4.2, o throughput do sistema melhora, isto , o nmero de processos concludos por unidade de tempo aumenta, embora o tempo de execuo de cada processo possa sofrer uma piora. Prof. Miguel Angel Mrquez Galleguillos 10
Figura 4.2 - Execuo de 3 tarefas em um sistema multiprogramvel
4.3 Sistemas "Batch"
Se caracterizam pela execuo de programas previamente introduzidos e armazenados no computador. No h interao com o usurio e os programas armazenados vo sendo executados na medida que haja disponibilidade de recursos.
Figura 4.3 - Sistema "Batch" tpico em cartes
4.4 Sistemas "Time Sharing"
Surgiram com o aparecimento dos terminais de vdeo (terminais "burros") que permitiam ao usurio compartilhar distncia o uso dos recursos do computador. Dessa forma o usurio acessa e interage com o computador tanto na fase de desenvolvimento de suas aplicaes como nas fases de execuo e anlise dos resultados. Os terminais eram chamados "burros" (padro TTY) por serem disprovidos de qualquer capacidade de processamento local, que era todo executado pela UCP do sistema central. Prof. Miguel Angel Mrquez Galleguillos 11 Para que cada usurio tenha chances equilibradas de utilizar os recursos, o sistema aloca uma fatia de tempo ("time slice") do processador para cada terminal ativo e os atende num esquema de fila circular. Esgotado o "time slice" de um usurio, ele perde automticamente o controle da UCP, que passa para o usurio seguinte da fila. Alguns sistemas permitem a adoo de nveis de prioridade que alteram a sequncia de atendimento da fila ou o tamanho do "time slice" adotado para um usurio. No s o processador compartilhado neste sistema, mas tambm a memria e os perifricos, como discos e impressoras. O sistema cria para o usurio um ambiente de trabalho prprio, dando a impresso de que todo o sistema est dedicado, exclusivamente a ele.
4.5 Sistemas de Tempo Real
So estrutural e conceitualmente semelhantes aos sistemas multiprogramados, a diferena fundamental est no tempo de resposta exigido na execuo (atendimento) das tarefas. Enquanto nos primeiros o tempo de resposta pode variar sem comprometer as aplicaes em execuo, nos sistemas de tempo real os tempos de resposta geralmente esto dentro de limites rgidos que, se no observados, podem inviabilizar a aplicao ou trazer problemas crticos de funcionamento. Nos sistemas de tempo real no existe a idia de fatia de tempo ("time slice"). Neles um programa mantm o controle da UCP pelo tempo que for necessrio ou at que outro processo de maior prioridade aparea. Sistemas de tempo real so comuns em aplicaes de controle de processos tais como o monitoramento de refinarias de petrleo, de usinas termoeltricas e nucleares, controle de trfego areo ou qualquer aplicao onde a fator tempo de resposta crtico e fundamental.
4.6 Sistemas Mono e Multitarefa
Uma outra terminologia mais recentemente introduzida no jargo da informtica a de sistemas monotarefa e multitarefa. O conceito por trs desta terminologia subjetivo onde monotarefa entendido como um sistema monoprogramvel / monousurio, como nos sistemas PC com DOS, e multitarefa como um sistema multiprogramvel / monousurio, como no sistema Linux, onde apenas um usurio faz uso do sistema porm podendo disparar diversas tarefas concorrentes.
4.7 Sistemas Multiprocessados
Caracterizam-se por permitir a execuo simultnea de duas ou mais instrues, o que requer a existncia de mais de um processador. O multiprocessamento mantm todos os conceitos da multiprogramao agora aplicados a vrios processadores ao mesmo tempo. O multiprocessamento pode ser obtido pela configurao de mltiplos processadores que compartilham de uma mesma memria primria (fortemente acoplados) ou de mltiplos computadores independentes do tipo sistemas em rede e sistemas distribudos (fracamente acoplados), onde cada um tem seus prprios recursos. Prof. Miguel Angel Mrquez Galleguillos 12 Os sistemas multiprocessados permitem que vrios programas sejam executados em paralelo (granularidade grossa), ou que um programa tenha duas ou mais de suas instrues executadas em paralelo (granularidade fina).
4.8 Sistemas em Rede
Se caracterizam pela existncia de vrios computadores independentes interligados em rede e compartilhando alguns recursos tais como disco, impressora, scanner e outros. Um sistema operacional de rede se encarrega de propiciar o protocolo para comunicao e transferncia de dados entre os usurios e servidores da rede. Cada n da rede independente e capaz de executar sua prpria aplicao.
4.9 Sistemas Distribudos
So conceitualmente sistemas em rede que possibilitam uma integrao e uma cooperao transparente entre os diversos ns que compem a rede. Desta forma, sob o enfoque dos usurios e das tarefas, o sistema um e se comporta como uma arquitetura multiprocessada possibilitando tanto paralelismo de granularidade grossa como fina. Sistemas 100% distribudos ainda no esto comercialmente disponveis, mas representam uma tendncia natural e desejada para os atuais sistemas em rede.
5 - Arquitetura do Sistema Operacional
5.01 Definio de Arquitetura de Sistemas Operacionais
Podemos definir a arquitetura de um Sistema Operacional como a estrutura que est composta de diversos componentes com objetivos e funcionalidades complementares.
5.02 Componentes da Arquitetura de Sistemas Operacionais
Alguns dos componentes mais relevantes de um sistema operacional tpico so:
5.02.1 Ncleo : o corao do sistema operacional, responsvel pela gerncia dos recursos do hardware usados pelas aplicaes. Ele tambm implementa as principais abstraes utilizadas pelos programas aplicativos. 5.02.2 Drivers : mdulos de cdigo especficos para acessar os dispositivos fsicos. Existe um driver para cada tipo de dispositivo, como discos rgidos IDE, SCSI, portas USB, placas de vdeo, etc. Muitas vezes o driver construdo pelo prprio fabricante do hardware e fornecido em forma binria para ser acoplado ao restante do sistema operacional. 5.02.3 Cdigo de inicializao : a inicializao do hardware requer uma srie de tarefas complexas, como reconhecer os dispositivos instalados, test-los e configur-los adequadamente para seu uso posterior. Outra tarefa importante carregar o ncleo do sistema operacional em memria e iniciar sua execuo. Prof. Miguel Angel Mrquez Galleguillos 13 5.02.4 Programas utilitrios : so programas que facilitam o uso do sistema computacional, fornecendo funcionalidades complementares ao ncleo, como formatao de discos e mdias, configurao de dispositivos, manipulao de arquivos (mover, copiar, apagar), interpretador de comandos, interface grfica, gerncia de janelas, etc.
As diversas partes do sistema operacional se relacionam entre si conforme apresentado na figura 5.1. A forma como esses diversos componentes so interligados e se relacionam varia de sistema para sistema; algumas possibilidades sero discutidas na seo correspondente.
Figura 5.1: Estrutura de um sistema operacional
O ncleo do sistema de computao o processador. Ele responsvel por continuamente ler instrues e dados da memria ou de perifricos, process- los e enviar os resultados de volta memria ou a outros perifricos. Um processador convencional normalmente constitudo de uma unidade lgica e aritmtica (ULA), que realiza os clculos e operaes lgicas, um conjunto de registradores para armazenar dados de trabalho e alguns registradores para funes especiais (contador de programa, ponteiro de pilha, flags de status, etc).
5.03 Monoprogramao
Nos sistemas operacionais monoprogramados existe um nico programa de usurio em execuo. Nos multiprogramados existem vrios programas de usurio em execuo simultnea. A figura a seguir mostra a organizao de um sistema operacional monoprogramado. formado por cinco componentes lgicos: Prof. Miguel Angel Mrquez Galleguillos 14
Tratador de Interrupes: software do SO responsvel pelo tratamento das interrupes; Drivers dos dispositivos: responsveis pela execuo das operaes de entrada e sada. Existe um driver para cada classe de perifrico; Gerenciador de Arquivos: responsvel pela implementao do sistema de arquivos, permitindo ao usurio o armazenamento e a recuperao de informaes. Seqenciador de programas: mdulo que, ao trmino da execuo de um programa, faz com que o sistema passe a executar um novo programa; Programas de usurios: representa o programa em execuo. Existe um nico programa de usurio na memria. Ao trmino da execuo, um outro programa ser carregado pelo seqenciador de programas e passar a ser executado.
5.04 Multiprogramao
Um sistema operacional multiprogramado suporta a execuo de mltiplos programas de usurios, em paralelo. Em sua organizao possui Tratador de Interrupes, Drivers dos dispositivos, um gerenciador de memria, um gerenciador de processos que possui um escalonador, responsvel pela seleo e disparo de programas, por um gerenciador de arquivos, por um seqenciador de programas e pelos programas de usurios em execuo. Num sistema multiprogramado o tempo do processador distribudo entre os programas em execuo. Cada programa executa por um certo tempo, ou at que solicite uma operao de entrada e sada, ou at que necessite esperar a ocorrncia de algum outro evento. Nestes casos, o sistema operacional executa a rotina de tratamento referente ao pedido do processo e, aps isso, um novo processo selecionado e passa a ser executado. A figura a seguir mostra esquematicamente os componentes de um sistema operacional multiprogramado.
Prof. Miguel Angel Mrquez Galleguillos 15
5.05 Kernel O Kernel de um sistema operacional entendido como o ncleo deste ou, numa traduo literal, cerne. Ele representa a camada mais baixa de interface com o Hardware, sendo responsvel por gerenciar os recursos do sistema computacional como um todo. no kernel que esto definidas funes para operao com perifricos (mouse, discos, impressoras, interface serial/interface paralela), gerenciamento de memria, entre outros. Resumidamente, o kernel um conjunto de programas que fornece para os programas de usurio (aplicativos) uma interface para utilizar os recursos do sistema. Quanto sua arquitetura, o kernel pode ser monoltico em um nico bloco, com todas as funcionalidades carregadas na memria , ou modular com os mdulos especficos para cada tarefa carregados opcionalmente, dinamicamente. O kernel a parte mais importante do sistema operacional, pois, sem ele, a cada programa novo que se criasse seria necessrio que o programador se preocupasse em escrever as funes de entrada/sada, de impresso, entre outras, em baixo nvel, causando uma duplicao de trabalho e uma perda enorme de tempo. Como o kernel j fornece a interface para que os programas possam acessar os recursos do sistema de um nvel mais alto e de forma transparente, fica resolvido o problema da duplicao do trabalho. 5.05.1 Responsabilidades do kernel As responsabilidades do kernel consistem, genericamente, em abstrair interfaces de hardware diversas e gerir os recursos do computador, permitindo que os processos utilizem estes recursos concorrentemente de forma segura e padronizada, fornecendo a estes uma interface unificada para os diversos componentes do sistema computacional. Prof. Miguel Angel Mrquez Galleguillos 16 5.05.2 Gerenciamento de processos A principal tarefa do kernel de um sistema operacional (SO) permitir a execuo de aplicaes e dar suporte a elas atravs de nveis de abstrao sobre o hardware. Para executar uma aplicao, o kernel precisa carregar na memria o arquivo que contm o cdigo da aplicao (e eventualmente inicializar o seu prprio espao de endereamento), inicializar a pilha de execuo do programa e assim iniciar a sua execuo. 5.05.3 Gerenciamento de memria O kernel tem acesso completo memria do sistema e deve permitir que os programas do espao do usurio tenham acesso seguro memria quando o requisitam. O primeiro passo para permitir esta funcionalidade o endereamento virtual, usualmente obtido atravs da paginao ou segmentao. O endereamento virtual permite ao kernel fazer com que um dado endereo aparea como outro, o endereo virtual. Isto permite ao programa acreditar que ele o nico em execuo (com exceo do kernel) e assim previne que as aplicaes colidam umas com as outras. 5.05.4 Gerenciamento de dispositivo Para realizar algum trabalho real, o SO precisa acessar os perifricos conectados ao computador, que so controlados por drivers de dispositivo disponibilizados por desenvolvedores e/ou fabricantes deste dispositivo (hardware). Por exemplo, para mostrar algo na tela, o kernel delega o trabalho ao driver de monitor (VGA ou VESA) que fica responsvel por mostrar os caracteres. 5.05.5 Chamadas de sistema Para que seja possvel realizar algum trabalho til, um programa no espao do usurio deve ter acesso a todos os servios disponibilizados pelo kernel. Esta implementao diferente em cada kernel, mas deve disponibilizar uma API ao programa, que por sua vez invoca as funes do kernel relacionadas, seja atravs do sistema de IPC, memria compartilhada ou interrupes. 5.06 Gerncia de Processos O conceito mais central em qualquer S.O. o conceito de processo. Um processo uma abstrao de um programa em execuo. Os computadores modernos so capazes de fazer vrias coisas ao mesmo tempo: executar um programa, ler de um disco, imprimir em um terminal ou impressora. Num sistema de multiprogramao, a CPU tambm chaveia de programa para programa, executando cada um deles durante algumas dezenas ou centenas de milisegundos. Isto significa que em 1 segundo, a CPU pode trabalhar sobre vrios programas, dando aos usurios a iluso de paralelismo. O termo pseudo-paralelismo usado para definir este chaveamento rpido da CPU entre programas, para contrastar com o verdadeiro paralelismo de hardware da CPU em sistemas multi-processadores. Prof. Miguel Angel Mrquez Galleguillos 17
Um processo basicamente um programa em execuo. Ele consiste, resumidamente, do programa executvel, os dados e pilha do programa, seu contador de programa, ponteiro de pilha, e outros registradores, alm de todas as outras informaes necessrias para executar o programa. Uma forma intuitiva de entender o que um processo pensar nos sistemas de tempo compartilhado (timesharing). Num sistema de tempo compartilhado, vrios processos compartilham uma mesma CPU. Periodicamente, o S.O. decide parar de executar um processo e comear a executar outro porque o primeiro j teve a poro que lhe cabe da CPU.
Quando um processo suspenso temporariamente da forma acima descrita, ele tem que ser reinicializado mais tarde, exatamente no mesmo estado em que se encontrava quando foi interrompido. Isto significa que toda a informao sobre o processo tem que ser explicitamente salva durante a suspenso deste processo.
5.07 Comunicao entre Processos
Os processos normalmente precisam se comunicar com outros processos. No seguinte exemplo :
cat arq1 arq2 | grep alunos
a sada do primeiro processo cat tem que ser passada para o segundo processo grep. Esta necessidade de comunicao entre processos deve ser feita, preferencialmente, de forma bem estruturada, sem usar interrupes. As questes envolvendo a comunicao entre processos ser vista nas sees seguintes.
5.07.1 Condies de disputa
Em alguns S.Os, processos que trabalham juntos normalmente compartilham alguma memria comum que cada um pode ler e escrever. A memria compartilhada pode estar na memria principal ou pode ser um arquivo compartilhado. Um exemplo prtico de comunicao entre processos o spooler de impressora.
Quando um processo quer imprimir um arquivo, ele entra o nome do arquivo num diretrio spooler especial. Um outro processo, o daemon de impressora, verifica, periodicamente, se existem arquivos para serem impressos e, se houverem, ele os imprime e remove seus nomes do diretrio spooler.
5.07.2 Sees (ou regies) Crticas
A forma de se prevenir contra situaes de disputa envolvendo memria compartilhada, arquivos compartilhados, ou qualquer outro recurso compartilhado, encontrar uma forma de proibir mais de um processo de ler e escrever o dado compartilhado ao mesmo tempo. O que se precisa de Prof. Miguel Angel Mrquez Galleguillos 18 excluso mtua - uma forma de certificar-se que se um processo est usando uma varivel ou arquivo compartilhado, o outro processo vai ser impedido de fazer o mesmo. A situao de disputa descrita na seo acima ocorreu porque o processo B comeou a usar uma das variveis compartilhadas antes do processo A ter terminado de utiliza-la.
5.07.3 Excluso mtua atravs da espera ocupada (busy waiting)
Enquanto um processo est ocupado atualizando memria compartilhada em sua seo crtica, nenhum outro processo vai entrar na sua regio crtica e causar problemas.
5.08 Sincronizao (Semforos e Monitores)
Dijkstra conseguiu abstrair as principais noes de excluso mtua em seu conceito de semforos. Um semforo uma varivel protegida cujo valor somente pode ser acessado e alterado pelas operaes P e V, e por uma operao de inicializao que chamaremos inicializa_semforo. Semforos binrios podem assumir somente os valores 0 ou 1. Semforos contadores (tambm chamados de semforos genricos) podem assumir somente valores inteiros no negativos. A operao P no semforo S, denotada por P(S), funciona da seguinte maneira: if S > 0 then S := S - 1 else (espera no semforo S)
A operao V no semforo S, denotada por V(S), funciona da seguinte maneira: if (um ou mais processos esto esperando em S) then (deixe um desses processos continuar) else S := S + 1;
Ns podemos assumir que existe uma poltica de enfileiramento FIFO (first-in- first-out o primeiro a entrar o primeiro a sair) para os processos esperando para uma operao P(S) completar.
Assim como testandset, as operaes P e V so indivisveis. A excluso mtua no semforo S garantida pelas operaes P(S) e V(S). Se vrios processos tentam executar P(S) simultaneamente, somente um deles poder prosseguir. Os outros ficaro esperando, mas a implementao de P e V garante que os processos no sofrero adiamento indefinido.
Semforos e operaes com semforos podem ser implementados tanto em software quanto em hardware. Eles so comumente implementados no ncleo do sistema operacional, onde a mudana de estado dos processos controlada.
Prof. Miguel Angel Mrquez Galleguillos 19 5.08.1Sincronizao de Processos com Semforos
Quando um processo invoca uma requisio de E/S, ele se auto-bloqueia para esperar o trmino da operao de E/S. Alguns outros processos devem acordar o processo bloqueado. Tal interao um exemplo de um protocolo bloqueia/acorda (block/wakeup).
5.08.2 Monitores
A comunicao interprocessos utilizando semforos e contadores de eventos parece ser a soluo definitiva. Entretanto, se analisarmos mais diretamente estas tcnicas, veremos que elas possuem alguns problemas: So to primitivos que difcil expressar solues para problemas de concorrncia mais complexos.
Particularmente com semforos, alguns outros problemas podem ocorrer: Se a operao P for omitida, no garantida a excluso mtua; se a operao V for omitida, tarefas esperando em uma operao P entrariam em deadlock; uma vez que a operao P usada e o processo fica nela bloqueado, ele no pode desistir e tomar um curso de ao alternativo enquanto o semforo estiver em uso; um processo s pode esperar em um semforo por vez, o que pode lev-lo a deadlock em algumas situaes de alocao de recursos.
Para tornar mais fcil a escrita de programas corretos, Hoare (1974) e Brinch Hansen (1975) propuseram uma primitiva de sincronizao de alto nvel chamada de monitor. Um monitor uma coleo de procedimentos, variveis, e estruturas de dados que so todos agrupados em um tipo especial de mdulo ou pacote. Processos podem chamar os procedimentos em um monitor sempre que o desejarem, mas eles no podem diretamente acessar as estruturas de dados internas do monitor atravs de procedimentos declarados fora do monitor.
Monitores possuem uma importante propriedade que os torna uteis para atingir excluso mtua: somente um processo pode estar ativo em um monitor em qualquer momento. Monitores so uma construo da prpria linguagem de programao utilizada, de forma que o compilador sabe que eles so especiais, e pode manipular chamadas a procedimentos dos monitores de forma diferente da qual manipula outras chamadas de procedimentos.
Ao fazer a excluso mtua de regies crticas automticas, monitores fazem com que a programao paralela seja muito menos sujeita a erros do que com semforos. Entretanto, monitores possuem suas desvantagens. Como j foi dito, monitores so um conceito da linguagem de programao. O compilador deve reconhec-los e arranjar a excluso mtua de acordo. C, Pascal e outras linguagens no possuem monitores, portanto no se pode esperar que os compiladores dessas linguagens dem algum suporte a excluso mtua. De fato, como poderia o compilador saber quais procedimentos esto em monitores e quais no esto? Prof. Miguel Angel Mrquez Galleguillos 20 Estas mesmas linguagens no possuem semforos, mas adicion-los a elas fcil: basta escrever algumas rotinas para as operaes P e V e adicionar estas rotinas s bibliotecas de funes. Para utilizar monitores, necessria uma linguagem que os tenha por natureza. Muito poucas linguagens, como Concurrent Euclid os possuem, e compiladores para elas so raros. 5.09 Sistemas de Arquivos A parte mais visvel de qualquer SO o sistema de arquivo. A maioria dos programas lem ou escrevem pelo menos um arquivo e os usurios esto sempre atentos existncia de arquivos e suas propriedades, e sobre o sistema de arquivos que versam as prximas sees.
5.09.1 Arquivos
Arquivos so um mecanismo de abstrao, que oferecem uma forma de armazenar a informao em disco e acess-la depois. Isto deve ser feito de tal forma a poupar o usurio dos detalhes de como e onde a informao est armazenada, e de como os disco funcionam na realidade.
Uma das caractersticas mais importantes de qualquer mecanismo de abstrao a forma como os objetos sendo gerenciados so chamados, por isto, a nomeao de arquivos importante.
5.09.1.1 Organizao de Arquivos
O SO permite que os usurios definam objetos chamados arquivos, os quais armazenam programas, dados, ou qualquer coisa que o usurio queira. Estes arquivos no so parte do espao de endereo de qualquer processo. Ao invs disto, o SO oferece operaes especiais (i.e., chamadas do sistema) para criar, destruir, ler, escrever e gerenciar estes arquivos.
5.09.2 Tipos de Arquivos
Vrios SOs suportam vrios tipos de arquivos, dentre eles:
Arquivos Regulares contm informao do usurio (texto, GIF, binrio etc); Diretrios arquivos do sistema que mantm a estrutura do sistema de arquivo; Arquivos especiais de caracteres relacionados E/S e usados para modelar dispositivos seriais de E/S como terminais, impressoras e redes; Arquivos especiais de bloco usados para modelar discos.
5.09.3 Diretrios
Um diretrio contm, tipicamente, um nmero de entradas, uma por arquivo. Existem pelo menos duas possibilidades de estruturao das entradas:
Prof. Miguel Angel Mrquez Galleguillos 21 (a) cada entrada do diretrio contm o nome do arquivo, os atributos do arquivo e os endereos em disco de onde os dados esto armazenados (DOS). (b) cada entrada contm o nome do arquivo e um ponteiro para uma outra estrutura de dados que mantm os atributos e endereos em disco.
Quando um arquivo aberto, o S.O. busca seu diretrio at que encontra o nome do arquivo a ser aberto. Ele ento extrai os atributos e endereos em disco, colocando-os em uma tabela na memria principal.
5.09.4 O Projeto de um Sistema de Arquivos
O projetista de um sistema de arquivos est interessado nos seguintes aspectos do sistema: . Como o espao em disco gerenciado . Como os arquivos so armazenados . Como fazer o sistema funcionar de um modo eficiente e confivel
5.09.5 Implementao de Arquivos
A questo chave na implementao de um sistema de arquivos manter informao para saber determinar quais blocos de disco pertencem a qual arquivo. Vrios mtodos so utilizados para isso. Alguns deste mtodos incluem: alocao contgua, alocao atravs de lista encadeada, alocao atravs de lista encadeada usando um ndice e I-nodes.
5.09.6 Implementao de Diretrios
A principal funo de um diretrio mapear um nome de arquivo em ASCII sobre a informao necessria para localizar os dados.
Estrutura de um Diretrio no MS-DOS:
5.09.7 Arquivos Compartilhados
Quando vrios usurios esto trabalhando juntos em um mesmo projeto, normalmente precisam compartilhar arquivos. Quando arquivos so compartilhados, os blocos do disco no so listados nos diretrios, mas sim numa estrutura de dados associada ao arquivo em si. Os diretrios ento devem apontar para esta pequena estrutura de dados
Nome de Arquivo
Tamanho
Extenso Atributos Reservado Hora Data Nm. do 1 o Bloco Prof. Miguel Angel Mrquez Galleguillos 22 5.09.8 Gerenciamento do Espao em Disco
Existem 2 estratgias gerais possveis para armazenar um arquivo de "n" bytes: 1. alocando "n" bytes consecutivos de espao em disco 2. quebrando o arquivo num nmero de blocos (no necessariamente) contguos.
5.10 Chamadas de sistema Na computao, uma chamada de sistema (system call) o mecanismo usado pelo programa para requisitar um servio do sistema operacional, ou mais especificamente, do kernel do sistema operacional. Os processadores modernos podem executar instrues com diferentes privilgios. Em sistemas com dois nveis de privilgio, eles so chamados de modo usurio e modo protegido. Os sistemas operacionais disponibilizam diferentes nveis de privilgio que restringem as operaes executadas pelos programas, por razes de segurana e estabilidade. Dentre estas operaes podem ser includas o acesso a dispositivos de hardware, habilitar e desabilitar interrupes ou alterar o modo de privilgio do processador. O kernel deve ser executado no modo protegido e as aplicaes em modo usurio. 5.11 Interrupes Em Cincia da Computao, uma interrupo um sinal de um dispositivo que tipicamente resulta em uma troca de contexto, isto , o processador para de fazer o que est fazendo para atender o dispositivo que pediu a interrupo. Computadores digitais geralmente oferecem uma maneira de iniciar rotinas de software em resposta a eventos eletrnicos assncronos. Esses eventos so sinalizados para o processador atravs de pedidos de interrupo (IRQs). O processamento da interrupo compem uma troca de contexto para uma rotina de software especificamente escrita para tratar a interrupo. Essa rotina chamada rotina de servio de interrupo, ou tratador de interrupo (interrupt handler). Os endereos dessas rotinas so chamados vetores de interrupo e so armazenados geralmente em uma tabela na memria RAM, permitindo sua modificao caso seja necessrio. 5.12 Escalonamento de Processos Chamamos de escalonamento (scheduling) de processos, o ato de realizar o chaveamento de processos prontos para executar de acordo com regras bem estabelecidas, de forma a que todos os processos tenham a sua chance de utilizar a CPU. A parte do SO responsvel por este chaveamento de processos o escalonador que usa um algoritmo de escalonamento para decidir, a cada instante, qual o prximo processo a ser executado. Nos sistemas em lote dos anos 60, o algoritmo de escalonamento era simples: execute o prximo Prof. Miguel Angel Mrquez Galleguillos 23 trabalho (job) da fita. Hoje, com os sistemas de tempo compartilhado, multiusurio, o algoritmo de escalonamento bem mais complexo.
Um bom algoritmo de escalonamento tem que incluir os seguintes critrios:
a) Justia - cada processo tem que ter uma parte justa do tempo de CPU; b) Eficincia - garantir uma ocupao de 100% do tempo de CPU; c) Tempo de Resposta Mnimo- minimizar o tempo de resposta para os usurios interativos; d) Minimizar o intervalo de tempo entre a submisso de um trabalho e a obteno dos resultados de volta; e) Maximizar o nmero de trabalhos processados por hora.
5.13 Controles de concorrncia (Deadlock e Starvation) 5.13.1 Deadlock (blocagem, impasse), no contexto do sistemas operacionais (SO), caracteriza uma situao em que ocorre um impasse e o SO fica impedido de continuar suas atividades normais indefinidamente. Trata-se de um problema bastante estudado no contexto dos Sistemas Operacionais, assim como em outras disciplinas, como banco de dados, pois inerente prpria natureza desses sistemas. O deadlock ocorre com um conjunto de processos e recursos no- preemptveis, onde um ou mais processos desse conjunto est aguardando a liberao de um recurso por um outro processo que, por sua vez, aguarda a liberao de outro recurso alocado ou dependente do primeiro processo. A definio textual de deadlock normalmente, por ser muito abstrata, mais difcil de se compreender do que a representao por grafos, que ser resumida mais adiante. No entanto, algumas observaes so pertinentes: O deadlock pode ocorrer mesmo que haja somente um processo no SO, considerando que este processo utilize mltiplos threads e que tais threads requisitem os recursos alocados a outros threads no mesmo processo; O deadlock independe da quantidade de recursos disponveis no sistema; Normalmente o deadlock ocorre com recursos como dispositivos, arquivos, memria etc. Apesar da CPU tambm ser um recurso para o SO, em geral um recurso facilmente preemptvel, pois existem os escalonadores para compartilhar o processador entre os diversos processos, quando trata-se de um ambiente multitarefa. Um exemplo onde erros de deadlock ocorrem no banco de dados. As aplicaes clientes, usando a base de dados, exigem acesso exclusivo a uma certa tabela e, para ganhar acesso exclusivo, eles pedem um travamento desta tabela. Se duas aplicaes clientes tentam travar a mesma tabela ao mesmo Prof. Miguel Angel Mrquez Galleguillos 24 tempo, ento nem um nem outra aplicao receber o acesso e a trava. Uma vez que no h meio geral para decidir para quem dar a trava, ambos os clientes esperaro eternamente pela trava. Devido a este erro de deadlock, alguns sistemas precisam trat-lo. Usando o mesmo exemplo acima, quando os clientes buscarem uma trava ao mesmo tempo, o sistema tem que definir uma soluo para isso e trat-la, por exemplo, atravs da prioridade entre os clientes. 5.13.2 Starvation 5.13.2.1 Processos em Starvation Em um ambiente computacional de multiprogramao, a execuo de diversos processos simultneos deve seguir a uma regra de escalonamento destes para uso do processador. Isto se deve ao fato de que, durante a mudana de contexto pelo processador, feita a escolha do prximo processo a ser executado a partir da prioridade deste. Isto pode gerar uma situao de starvation (do ingls, fome, inanio) quando um processo nunca executado (morre de fome) pois processos de prioridade maior sempre o impedem de ser. Uma soluo para esta situao a delegao de um tempo mximo de espera. O algoritmo round robin assume que todos os processos so igualmente importantes. Freqentemente, as pessoas que possuem e operam centros de computao possuem um pensamento diferente sobre este assunto. Em uma Universidade, por exemplo, as prioridades de processamento normalmente so para a administrao em primeiro lugar, seguida de professores, secretrias e finalmente estudantes. A necessidade de se levar em conta fatores externos nos leva ao escalonamento com prioridades. A idia bsica direta: cada processo possui uma prioridade associada, e o processo pronto para executar com a maior prioridade quem ganha o processador. Para evitar que processos com alta prioridade executem indefinidamente, o escalonador pode decrementar a prioridade do processo atualmente executando a cada tick de relgio (isto , a cada interrupo de relgio). Se esta ao fizer com que a prioridade do processo se torne menor do que a prioridade do processo que possua a segunda mais alta prioridade, ento uma troca de processos ocorre. Prioridades podem ser associadas a processos estaticamente ou dinamicamente. Em um computador militar, por exemplo, processos iniciados por generais deveriam comear com a prioridade 100, processos de coronis com 90, de majores com 80, de capites com 70, de tenentes com 60, e assim por diante. Alternaticamente, em um centro de computao comercial (incomum hoje em dia), jobs de alta prioridade poderiam custar 100 dlares por hora, os de mdia prioridade a 75 por hora, e os de baixa prioridade a 50 por hora. Prof. Miguel Angel Mrquez Galleguillos 25 Prioridades podem tambm ser atribudas dinamicamente pelo sistema para atingir certos objetivos do sistema. Por exemplo, alguns processos so altamente limitados por E/S, e passam a maior parte do tempo esperando por operaes de E/S. Sempre que um desses processos quiser a CPU, ele deve obt-la imediatamente, para que possa iniciar sua prxima requisio de E/S, e deix-la sendo feita em paralelo com outro processo realmente processando. 5.14 Gerncia de memria A cada dia que passa os programadores necessitam de mais memria e mais programas rodando simultaneamente para poderem tratar cada vez mais informaes. O tratamento necessrio da memria utilizada no uma tarefa fcil de ser implementada. Existem vrios requisitos que devem ser observados para o correto funcionamento, tais como, Segurana, Isolamento, Performance, entre outros. Para isto a funo de gerenciar a memria passa a ser do sistema operacional e no mais do aplicativo. 5.14.1 Endereos Lgicos e Fsicos Um endereo gerado pela CPU normalmente referido como sendo um endereo lgico, enquanto que um endereo visto pela unidade de memria do computador (isto , aquele carregado no registrador de endereo de memria do controlador de memria) normalmente referido como sendo um endereo fsico. 5.14.2 Alocao A memria principal deve acomodar tanto o sistema operacional como os processos dos usurios. A memria usualmente dividida em duas parties, uma para o sistema operacional residente, e outra para os processos dos usurios. possvel que o sistema operacional fique alocado tanto no incio da memria, quanto no fim. O principal fator que afeta esta deciso a localizao do vetor de interrupes. 5.14.3 Memria Virtual
H alguns anos atrs, quando algum programa era maior do que a memria disponvel, a soluo adotada era dividir o programa em pedaos chamados de overlay, que funcionava do seguinte modo: Os overlays eram mantidos em disco e eram trazidos para a memria e levados de volta ao disco pelo sistema operacional O overlay 0 seria o primeiro a rodar Quando este overlay terminava de executar ele chamava outro
Alguns destes sistemas eram altamente complexos, permitindo mltiplos overlays em memria ao mesmo tempo. Apesar do trabalho de trazer e levar os overlays do/para o disco ser feito pelo SO, o trabalho de dividir o programa em pedaos tinha que ser feito pelo programador o que alm de muito chato consumia muito tempo.
Prof. Miguel Angel Mrquez Galleguillos 26 Foi ento que se pensou em atribuir este trabalho para o computador. O mtodo foi elaborado em 1961 e veio a ser conhecido como memria virtual.
Na memria virtual, como a combinao do tamanho do programa, dos dados, e da pilha podem exceder a quantidade de memria fsica disponvel para isto, o SO mantm as partes do programa atualmente em uso na memria, e o resto no disco.
A memria virtual pode tambm ser aplicada em um sistema de multiprogramao: enquanto um programa est esperando por uma outra parte de si prprio sendo trazida do disco para a memria, isto , esperando E/S, ele no pode rodar e a CPU chaveada para outro processo.
5.14.4 Paginao
A maioria dos sistemas de memria virtual usam uma tcnica chamada de paginao, que ser descrita a seguir.
Nos computadores sem memria virtual, o endereo colocado diretamente no barramento de memria e causa a leitura ou escrita de uma palavra de memria fsica que tenha o mesmo endereo daquele que foi colocado no barramento.
Quando a memria virtual usada, os endereos virtuais no vo diretamente para o barramento de memria. Em vez disso, eles vo para uma Unidade de Gerenciamento de Memria (MMU) que um chip ou uma coleo de chips que mapeiam os endereos virtuais nos endereos fsicos da memria.
5.14.5 Segmentao
A paginao implementa um amplo espao linear numa memria fsica limitada, onde os programas so executados num segmento contnuo de memria.
Na segmentao, esta restrio removida sendo permitido a um programa (e seus dados) ocupar vrios segmentos separados de memria real. Cada segmento consiste de uma sequncia linear de endereos, de 0 a um mximo permitido. Segmentos diferentes podem e normalmente tm comprimentos diferentes. Mais ainda, os comprimentos dos segmentos podem mudar durante a execuo. O comprimento de um segmento de pilha pode ser aumentado toda vez que alguma coisa colocada na pilha e diminudo sempre que alguma coisa tirada da pilha. Como cada segmento constitui um espao de endereo separado, segmentos diferentes podem crescer ou encolher de forma independente, sem afetar um ao outro.
Um segmento uma entidade lgica, que o programador sabe que existe e usa como uma nica entidade lgica. Um segmento pode conter um procedimento, um arranjo, uma pilha, uma coleo de variveis escalares, mas normalmente no contm uma mistura de tipos diferentes.
Prof. Miguel Angel Mrquez Galleguillos 27 5.15 Gerncia de dispositivos de Entrada e Sada Uma das principais funes de um S.O. controlar todos os diposisitvos de E/S de um computador. Ele tem que emitir comandos para os dispositivos, atender interrupes e tratar erros, alm de oferecer uma interface entre os dispositivos e o resto do sistema que seja simples e fcil de usar. O assunto agora analisar como o S.O. gerencia dispositivos de E/S.
5.15.1 Dispositivos de E/S
Os dispositivos de E/S podem ser dividos basicamente em duas categorias: Dispositivos de bloco armazena a informao em blocos de tamanho fixo, cada um com seu endereo prprio. Tamanhos comuns de blocos variam de 128 a 1024 bytes. A propriedade essencial de um dispositivo de bloco que os blocos podem ser lidos independentes uns dos outros. Desta forma, em qualquer instante um programa pode ler ou escrever qualquer um dos blocos. Exemplos inclui os discos.
Dispositivos de caractere entrega ou aceita uma cadeia de caracteres, sem considerar qualquer estrutura de bloco.No enderevel e no suporta qualquer operao de busca. Exemplos incluem os terminais, impressoras de linha, interfaces de rede, mouse etc.
Entretanto esta classificao no cobre todos os dispositivos existentes. O relgio, por exemplo, no se encaixa nas descries acima j que ele no gera nem aceita blocos ou cadeias de caracteres. Tudo o que o relgio faz causar interrupes a intervalos bem definidos de tempo. Ainda assim, o modelo de dispositivos de bloco e de caracteres genrico o suficiente para poder ser usado como uma base para se construir a parte do software do S.O. que trata dispositivos de E/S independentes. O sistema de arquivos, por ex., trata apenas com dispositivos de bloco abstratos, deixando a parte que dependo do dispositivo para os drivers de dispositivo.
5.15.2 Controladores de Dispositivos
As unidades de I/O consistem tipicamente de um componente mecnico (o dispositivo em si) e um componente eletrnico (chamado de controlador do dispositivo). O carto controlador tem normalmente um conector com um cabo que conecta o dispositivo em si. Vrios controladores podem tratar dois, quatro ou oito dispositivos. O S.O. quase sempre interage com o controlador, no com o dispositivo.
5.15.3 Acesso Direto Memria
Uma leitura de disco ocorre da seguinte forma: O controlador l serialmente o bloco (um ou mais setores) do drive, bit a bit, at que o bloco todo esteja no buffer interno do controlador O controlador calcula o checksum para verificar a ocorrncia de erros O controlador causa uma interrupo Prof. Miguel Angel Mrquez Galleguillos 28 O S.O. pode ento ler o bloco do disco a partir do buffer do controlador, byte a byte ou uma palavra por vez. Isto feito atravs de um loop em que cada iterao l um byte ou palavra do registrador do controlador e armazena na memria (gastando tempo de CPU).
O acesso direto memria ou DMA foi inventado para liberar a CPU deste trabalho de baixo nvel. Com o DMA, a leitura de disco ocorre da seguinte forma: 1. A CPU d ao controlador o endereo de disco do bloco a ser lido, alm do endereo de memria para onde o bloco deve ir e do nmero de bytes a transferir. 2. O controlador l o bloco todo do dispositivo para o seu buffer interno e verifica checksum 3. O controlador ento entra num loop com as seguintes operaes: copia o primeiro byte ou palavra na memria principal no endereo DMA especificado no item 1 acima; incrementa o endereo de DMA; decrementa o contador de DMA do nmero de bytes que acabaram de ser transferidos. 4. Quando o contador de DMA se torna zero (o bloco todo foi transferido do buffer do controlador para a memria), o controlador causa uma interrupo. 5. O S.O. pega os dados direto da memria.
5.16 Chamada Remota de Procedimento (RPC)
A Chamada de procedimento remoto ou RPC (Remote Procedure Call) o tipo de protocolo para chamada remota de procedimentos em qualquer lugar da rede ou uma chamada de funo para o mtodo de transferncia de controle de parte de um processo para outra, permite a diviso de um software em vrias partes, compartilhamento de arquivos e diretrios. O protocolo RPC pode ser implementado sobre diferentes protocolos de transporte, o RPC no especifica como a mensagem enviada, somente especifica e interpreta. As camadas de transporte que o RPC implementa so a TCP e a UDP. Chamada Remota de Procedimento (Remote Procedure Call RPC) permite que programas invoquem procedimentos ou funes localizados em outras mquinas como se ele estivesse localmente definidos. A nvel do programa, as informaes so passadas do chamador para o procedimento chamado atravs do parmetros e resultados so retornados atravs do resultado do procedimento. Deste modo, nenhuma mensagem de entrada/sada visvel ao programador. Apesar de simples e elegante esse paradigma tem como problemas potenciais os seguintes pontos:
- chamador e chamado executam em espaos de endereamento distintos; - como fazer a passagem de parmetros e resultados quando mquinas com arquiteturas distintas; - possibilidades de falhas. Prof. Miguel Angel Mrquez Galleguillos 29
6.0 Sistemas Operacionais de Cdigo Fechado
O sistema operacional famlia Microsoft Windows XP Professional o sucessor direto do Windows 2000 Professional. um sistema operacional multitarefa, controla todos os dispositivos instalados na mquina e permite que sejam executadas todas as tarefas bsicas de um computador atravs de interface grfica, ou seja, as operaes podem ser executadas atravs de seleo de elementos na tela, como, cones, atalhos, opes de menus, janelas,opes de caixas de dilogos, etc. Qualquer pessoa, mesmo sem grande experincia em informtica, pode manipul-lo com bastante facilidade, pois toda a sua interface voltada para uma melhor compreenso e segurana nos recursos.Com isso, o usurio pode operar o computador de maneira fcil e rpida. Portanto, ao final deste trabalho, os usurios mais experientes conhecero as novas tecnologias adotadas e os menos conhecedores no ficaro sem a devida explicao e conhecimento de toda a estrutura deste sistema operacional Informaes gerais sobre o Windows A Microsoft lanou no mercado o Windows XP, composta das verses: Home e Professional,so verses para uso residencial ,para servidores temos as verses do Windows 2003 Windows XP Home Edition Voltado para o uso residencial, multimdia jogos e entretenimento. XP Professional O Windows XP fornece as ferramentas que voc precisa para trabalhar e se divertir no ambiente atual de comunicaes de alta velocidade, estando repleto de novos recursos, ferramentas e programas aprimorados. 6.1 Instalao e Configurao 6.1.1 Particionamento de Dispositivos de Armazenamento
Introduo ao Windows XP Professional
Prof. Miguel Angel Mrquez Galleguillos 30 Se no houver parties na unidade de disco rgido, ser necessrio criar uma partio e format-la. Como alternativa, convm reparticionar a unidade de disco rgido caso voc queira mesclar vrias parties menores para formar uma maior, ou se desejar criar vrias parties menores para poder definir uma configurao multi-inicializadora. Se voc deseja particionar ou formatar a unidade de disco rgido, recomendvel usar as ferramentas de particionamento e formatao de disco internas da Instalao do Windows XP. Essas ferramentas permitem excluir as parties existentes e criar uma ou mais parties novas. IMPORTANTE: se essas etapas forem seguidas em uma unidade de disco rgido que no esteja vazia, todos os dados armazenados nesse disco rgido sero excludos permanentemente. Para usar as ferramentas de particionamento e formatao da Instalao do Windows XP: Insira o CD do Windows XP na unidade de CD/DVD (ou insira o primeiro disco de inicializao da Instalao do Windows XP na unidade de disquete) e reinicie o computador. Observao: para iniciar a partir do CD do Windows XP (ou do disco de inicializao da Instalao), o computador deve estar configurado para iniciar a partir da unidade de CD/DVD (ou unidade de disquete). Em alguns casos, pode ser necessrio modificar as configuraes da BIOS do computador para fazer isso. Para obter mais informaes, consulte "Configurar um computador para inicializar a partir do CD". Se voc estiver iniciando o computador a partir do CD do Windows XP, pressione uma tecla para inicializar a partir do CD quando solicitado. Se voc estiver iniciando a partir dos discos de inicializao da Instalao do Windows XP, insira cada um dos discos adicionais quando solicitado e pressione ENTER para continuar aps cada insero. Na pgina Bem-vindo instalao, pressione ENTER para continuar. Na pgina Contrato de Licena, leia o contrato e siga as instrues para aceit- lo ou rejeit-lo. Se for detectada uma instalao do Windows XP, ser solicitado que voc a repare. Pressione ESC (no reparar). Todas as parties e os espaos no particionados existentes so listados para cada disco rgido fsico. Use as teclas de direo para selecionar a partio ou o espao no particionado em que voc deseja criar uma nova partio. Em seguida, pressione D para excluir uma partio existente ou pressione C para criar uma nova partio usando o espao no particionado. Prof. Miguel Angel Mrquez Galleguillos 31 Se voc pressionar D para excluir uma partio existente, dever pressionar L (ou pressionar ENTER e depois L se essa for a partio Sistema) para confirmar que voc deseja excluir a partio. Repita esse processo para cada uma das parties existentes que voc deseja usar para a nova partio. Quando todas elas tiverem sido excludas, selecione o espao no particionado resultante e pressione C para criar uma nova partio. Observao: para criar uma partio na qual j existe uma ou mais parties, necessrio primeiro excluir as parties existentes para depois criar a nova. Digite o tamanho (em megabytes ou MB) desejado para a nova partio e pressione ENTER, ou apenas pressione ENTER para criar a partio usando o tamanho mximo. Para criar parties adicionais, repita as etapas 6 e 7. 6.1.2 Procedimentos de Instalao Se voc deseja instalar o Windows XP, use as teclas de direo para selecionar a partio na qual ele deve ser instalado e pressione ENTER. Se voc no deseja formatar a partio e instalar o Windows XP, pressione F3 duas vezes para sair da Instalao e no continue com as etapas seguintes. Nesse caso, necessrio usar outro programa para formatar a partio. Selecione a opo de formatao a ser usada na partio e pressione ENTER. As opes so: Formatar a partio usando o sistema de arquivos NTFS (Rpida) Formatar a partio usando o sistema de arquivos FAT (Rpida) Formatar a partio usando o sistema de arquivos NTFS Formatar a partio usando o sistema de arquivos FAT Deixar o sistema de arquivos atual intacto (sem alteraes) Para a maioria das configuraes, o NTFS uma boa opo de segurana e flexibilidade. No entanto, se voc planeja instalar uma configurao multi- inicializadora e acessar dados na unidade usando sistemas operacionais mais antigos, como Windows 95, Windows 98 ou Windows Millennium Edition, selecione FAT. Quando um volume formatado, os arquivos so removidos desse volume e a unidade de disco rgido examinada para verificar a existncia de setores defeituosos. A maior parte do tempo necessrio para formatar um volume usada no exame do disco. Se voc escolher a opo de formatao Rpida, os arquivos sero removidos da partio, porm o disco no ser examinado para verificar a existncia de setores defeituosos. Essa opo s deve ser usada se Prof. Miguel Angel Mrquez Galleguillos 32 o disco rgido tiver sido formatado anteriormente e voc tiver certeza de que ele no est danificado. Observao: durante a Instalao do Windows XP, a opo de deixar o sistema de arquivos atual intacto no estar disponvel se a partio selecionada for nova. Para parties de at 2 gigabytes (GB), a Instalao usa o sistema de arquivos FAT (tambm conhecido como FAT16). Para parties com mais de 2 GB e menos de 32 GB, a Instalao usa o sistema de arquivos FAT32. Para parties com mais de 32 GB, a Instalao usa o NTFS. Observao: se voc tiver excludo e criado uma nova partio do sistema mas estiver instalando o Windows XP em outra partio, neste ponto ser solicitado que voc selecione um sistema de arquivos para as parties do sistema e de inicializao. Depois que a Instalao formatar a partio, siga as instrues na tela para continuar a Instalao. Uma vez concluda a Instalao, voc poder usar as ferramentas de Gerenciamento de disco no Windows XP para criar ou formatar parties adicionais. 6.1.2.1 Manipulando o Ambiente Grfico do Windows XP A utilizao do ambiente grfico do Windows XP muito simplificada. Utilizando os botes do mouse do computador podemos abrir e manipular os programas e arquivos. Um clique com o boto direito do mouse nos cones podemos ativar os menus rpidos, que possuem os principais comandos de configurao dos componentes. Por exemplo: clicando com o boto direito do mouse no cone Meu Computador, ativamos o menu rpido de configuraes daquele item do sistema, escolhendo a opo Propriedades podemos acessar a tela de Propriedades do Sistema , como ilustrado abaixo. Prof. Miguel Angel Mrquez Galleguillos 33
6.1.2.2 Diferenas entre as parties do Windows XP No Windows XP podemos trabalhar com parties do tipo FAT32 e NTFS, a principal diferena entre as duas parties a segurana das pastas. Nas parties NTFS temos mais configuraes de acesso e de permisses do que nas parties do tipo FAT. Sem mencionar o fato que em discos particionados com FAT podemos acessar os dados nele contidos simplesmente iniciando a mquina com um disquete de boot comum (Windows 9x ou mesmo MS/DOS), burlando todo o esquema de segurana de login da mquina, o que impossvel em parties NTFS. Convertendo uma partio de FAT32 para NTFS: No necessrio formatar a partio novamente para que a convertamos numa partio NTFS; para isto basta entrarmos no prompt do MS/DOS e digitarmos o comando o Convert. A sintaxe correta deste comando a seguinte: CONVERT [unidade:] /FS:NTFS (por exemplo: CONVERT D: /FS:NTFS), onde: [unidade:] a unidade que deve ser convertida, por exemplo, C:, D:, F;, etc. /FS:NTFS a denominao do Sistema de Arquivos (FS = File System). Com este comando a partio ou unidade FAT32 ser convertida para NTFS, se a unidade a ser convertida no for uma unidade usada pelo sistema no momento, a converso ser automtica e sem a necessidade de reiniciar o sistema. Prof. Miguel Angel Mrquez Galleguillos 34 Caso seja a unidade usada pelo sistema, a partio por onde o sistema foi carregado, por exemplo, a unidade C:\, voc receber a informao de que na prxima iniciao da mquina a unidade ser convertida. No ocorre nenhuma perda de dados com este processo, sendo assim, pode ser utilizado em unidades que j contm dados gravados. Para visualizarmos as parties e unidades de disco do Windows XP utilizamos o mtodo semelhante ao usado nos Windows 2000, ou seja, simplesmente abrimos o cone Meu Computador da rea de Trabalho do Computador. Com isso, aberta uma janela com as parties e discos instalados no computador.
Exemplo de contedo da janela aberta Meu Computador Ao clicarmos com o boto direito do mouse numa unidade de disco (onde aberta uma tela de menu rpido do Windows) podemos clicar na opo Propriedades desta unidade de disco. A janela Propriedades de um disco particionado com o sistema de arquivos do tipo FAT contm praticamente as mesmas opes contidas no Windows 2000. A nica diferena aparente seria a existncia da pasta Hardware que informa as unidades de disco instaladas no computador. Prof. Miguel Angel Mrquez Galleguillos 35
Exemplo de janela Propriedades da partio FAT32 Entrando no item de Compartilhamento (Shared) da janela de Propriedades de uma partio FAT32 encontramos as opes simples de compartilhamento de pasta e as opes de permisses mais simples para este compartilhamento, esta janela muito semelhante ao existente nos Windows 2000.
Exemplo de pasta Compartilhamento da partio FAT32 Prof. Miguel Angel Mrquez Galleguillos 36
6.2 Ferramentas do Sistema 6.2.1 Arquivos e Pastas 6.2.1.1 Cpia O Explorer permite copiar e movimentar arquivos com muita facilidade, bastando utilizar o arraste do mouse.
Para realizar uma cpia entre unidades de disco diferentes, arraste os arquivos ou diretrios desejados para a unidade de disco desejada. Observe que o cursor do mouse aparece com uma pequena caixa com um sinal de adio (+) indicando execuo da cpia.
Para fazer cpias na mesma unidade de disco, proceda da mesma maneira, porm, mantenha a tecla <Ctrl> pressionada at soltar o boto do mouse aps o arraste. 6.2.1.2 Movimentao Para realizar movimentao de arquivos, utilize a opo de arraste do mouse. Para movimentar na mesma unidade de disco, basta arrastar os arquivos ou diretrios selecionados para o local desejado. Para efetuar a movimentao para unidades de disco diferentes, pressione a tecla <Shift> do teclado, enquanto arrasta o boto do mouse ao seu destino. 6.2.1.3 Excluso Para excluir arquivos e pastas, basta arrastar os arquivos ou diretrios selecionados para a lixeira.
No Microsoft Windows XP, tudo que for apagado, seja um arquivo, pasta, atalho ou outro objeto qualquer, colocado em um diretrio especial, deferente dos demais da rvore de diretrios do disco rgido. Esse diretrio chamado Lixeira.
A Lixeira um dos recursos mais teis para os usurios do Microsoft Windows XP. Sua finalidade armazenar os arquivos apagados por um determinado tempo de forma a permitir uma recuperao segura desses arquivos em caso de arrependimento.
Para verificar o contedo da Lixeira, d um clique sobre o seu cone no Windows Explorer.
No incio de seu trabalho, a Lixeira dever estar vazia, a no ser que voc tenha excludo arquivos recentemente. Quando a Lixeira no contm nada, o seu cone representativo uma Lixeira vazia.
Prof. Miguel Angel Mrquez Galleguillos 37 Caso voc acesse a Lixeira vazia, a janela da Lixeira no exibir nenhum arquivo para ser recuperado.
Caso voc exclua algum arquivo, pasta, atalho ou qualquer objeto, o cone da Lixeira cheia se abrir exibindo os ltimos arquivos excludos com o seu local de origem, a data da excluso, o tipo e o tamanho.
Para recuperar arquivos contidos na Lixeira, basta seleciona-los e, atravs do menu Arquivo, escolher o comando Restaurar. 6.2.1.4 Localizao Para localizar arquivos e pastas, clique no menu Exibir, Barra do Explorer, Pesquisa.
Clique sobre uma opo. Digite o nome do arquivo e clique em Pesquisar. Prof. Miguel Angel Mrquez Galleguillos 38 Finalizando a pesquisa clique no boto Voltar.
Para exibir a barra do explorer Pastas, clique no menu Exibir, Barra do Explorer, Pastas. 6.2.2 Painel de Controle 6.2.2.01 Adicionar novo Hardware Instala hardware e soluciona problemas.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Adicionar hardware. Prof. Miguel Angel Mrquez Galleguillos 39
Para continuar, clique em Avanar.
Para finalizar, clique em Concluir. 6.2.2.02 Sistema Veja informaes sobre o sistema do seu computador e altere configuraes de hardware, desempenho e atualizaes automticas.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Sistema.
Altere as opes e clique em OK. 6.2.2.03 Impressoras Adicione, remova e configure impressoras e impressoras de fax locais e de rede. Prof. Miguel Angel Mrquez Galleguillos 40
Clique em Iniciar, aponte para Configuraes, clique em Impressoras e aparelhos de fax.
6.2.2.04 Modems Configurar as regras de discagem do telefone e as propriedades do modem.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Opes de telefone e modem.
Altere as opes e clique em OK. 6.2.2.05 Teclado Personaliza as configuraes do teclado, como a taxa de intermitncia do cursor e a taxa de repetio de caracteres. Prof. Miguel Angel Mrquez Galleguillos 41
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Teclado.
Altere as opes e clique em OK. 6.2.2.06 Mouse Personaliza as configuraes do mouse, como as configuraes dos botes, a velocidade do clique duplo, os ponteiros do mouse e a velocidade de movimentao.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Mouse.
Para testar a velocidade do clique duplo, clique duas vezes sobre a pasta.
Prof. Miguel Angel Mrquez Galleguillos 42
6.2.2.07 Vdeo Para alterar as configuraes do vdeo: Clique com o boto direito do mouse sobre a rea de trabalho, clique sobre Propriedades, Configuraes.
Resoluo da tela - Exibe as configuraes atuais da resoluo de tela do monitor cujo adaptador de vdeo aparece em Exibir. Arraste o controle deslizante para especificar a resoluo de tela desejada. medida que voc aumenta o nmero de pixels, exibir mais informaes na tela, mas o tamanho dessas informaes diminuir. Qualidade da cor - Exibe as configuraes atuais de cor para o monitor conectado ao adaptador de vdeo que aparece em Exibir. Para usar uma configurao de cor diferente, clique na seta e, em seguida, clique em uma configurao. Se voc precisar definir a qualidade de cor como 256 cores para executar um jogo ou um outro programa de software que requeira essa qualidade, clique no cone ou no nome do programa na rea de trabalho ou no menu Iniciar e, em seguida, clique em Propriedades. Clique na guia Compatibilidade e marque a caixa de seleo Executar em 256 cores. O monitor retornar configurao padro de cor quando voc fechar o programa.
Clique no boto OK.
Prof. Miguel Angel Mrquez Galleguillos 43 6.2.2.08 Configuraes regionais Personaliza as configuraes para exibio de idiomas, nmeros, horas e datas.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Opes regionais e de idioma.
Altere as opes e clique em OK.
6.2.2.09 Data e hora Clique duas vezes sobre o relgio do computador. A funo do programa Data/Hora alterar a data e a hora do sistema. Ao acessa-lo, exibida uma caixa de dilogo com duas pginas. Na primeira, pode-se alterar a data dando um clique sobre uma data da pgina do calendrio ou rolando os meses e os anos atravs das caixas de listagem. Para alterar a hora, ser necessrio acessar a caixa de digitao que contm a hora. Isso deve ser feito selecionando o valor a ser alterado e digitando o novo valor ou utilizando as setas de incremento ou decremento localizadas direita da caixa de valores. Prof. Miguel Angel Mrquez Galleguillos 44
Para atualizar a hora na Internet. Na janela de Propriedades de Data e hora, clique sobre a guia Horrio na Internet. Servidor - Permite selecionar o servidor de horrio na Internet com o qual voc deseja sincronizar o relgio do computador. Clique em uma das opes ou digite um endereo. O servidor de horrio time.windows.com mantido pela Microsoft e o time.nist.gov mantido pelo governo dos E.U.A. Outros servidores de horrio fornecidos pelo fabricante do seu computador tambm podem ser includos na lista. Voc pode digitar o nome de um servidor de horrio se desejar usar um que no esteja na lista. Somente os servidores de horrio que usam o protocolo de horrio de rede simples (SNTP) funcionaro. A insero de um endereo de Internet que utilize o protocolo de transferncia de hipertexto (HTTP) no funcionar. Clique sobre o boto Atualizar agora. Clique no boto OK. Prof. Miguel Angel Mrquez Galleguillos 45
A sincronizao s pode ocorrer quando o computador est conectado Internet. Obtenha mais informaes sobre o horrio da sincronizao no Centro de ajuda e suporte. 6.2.2.10 Adicionar ou remover programas Adiciona e remove programas e componentes do Windows.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Adicionar ou remover programas, clique em Adicionar novos programas, clique em CD ou disquete.
Para continuar, clique em Avanar.
Prof. Miguel Angel Mrquez Galleguillos 46 Para finalizar, clique em Concluir. 6.2.2.11 Opes de Internet A Word Wide Web um sistema para a explorao da Internet, utilizando hyperlinks. Quando voc utiliza um navegador da Web, a Web aparece como uma coleo de textos, figuras, sons e filmes digitais.
Browsers So os programas especiais usados para acessar a parte multimdia da Internet, chamada World Wid Web. Os browsers (algo como exploradores, em ingls) mais conhecidos so o Internet Explorer e o Natscape Navigator. Sem eles, seria quase impossvel ver o contedo das pginas multimdia que esto na Internet. So eles que retiram arquivos dos sites, ou seja, os endereos com textos, imagens e sons, para mostr-los, de uma forma mais atraente, na tela do computador.
Para executar o Internet Explorer: Iniciar, Todos os programas, Internet Explorer.
Para Conectar muito simples. Voc se conecta a Internet, abre o programa e digita um endereo, no espao livre que costuma ficar no alto da tela. Depois s dar <Enter>, para que o contedo da pgina seja mostrado na tela, logo aps ser retirado da Internet.
Endereo ou site Um endereo ou site o caminho que leva o browser at as pginas multimdia da Internet. Geralmente eles comeam por www e so seguidos por um ponto, um domnio (remington.hpg, por exemplo), uma designao de entidade (comercial .com, e educacional .edu), alm de um complemento no endereo, que mostra o pas de origem da pgina (.br Brasil e caso no tenha nada, o padro Estados Unidos). Desse modo, um site comum da World Wide Web no Brasil seria, por exemplo:
www.uol.com.br
No preciso digitar http://, que aparece ao lado do www, quando voc for acessar um site qualquer. Os browsers mais modernos fazem isso por voc.
Prof. Miguel Angel Mrquez Galleguillos 47 http://uol.com.br
As Pginas multimdia HTML As pginas retiradas da Internet so arquivos comuns, que lembram um documento do Word, por exemplo. O formato deles o HTML (Hiper Text Markup Language, ou Linguagem de Marcao para Hipertexto). Um documento HTML pode carregar vrias combinaes de imagens e textos, alm de links. Ou seja: os hipertextos, que so atalhos para acessar outros endereos em pginas diferentes. 6.2.2.12 Opes de acessibilidade Ajustar as configuraes do computador para viso, audio e mobilidade. Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Opes de acessibilidade.
Altere as opes e clique em OK. 6.2.2.13 Fontes Adiciona, altera e gerencia fontes no computador.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Fontes.
Prof. Miguel Angel Mrquez Galleguillos 48 Para instalar novas fontes em seu computador, clique em Arquivo, Instalar nova fonte, define o caminho de busca e clique em OK. 6.2.2.14 Ferramentas administrativas Gerenciamento do Windows XP O Windows XP possui ferramentas muito importantes e especficas para as configuraes e gerenciamento dos componentes instalados no sistema. Estas ferramentas pertencem a um grupo denominado de Ferramentas Administrativas e, no Windows XP Professional, esto localizadas dentro do Painel de Controle, juntamente com outras ferramentas importantes para administrao do sistema, como por exemplo: Adicionar e Remover Programas ou Adicionar e Remover Hardware. Este grupo de ferramentas de utilidade fundamental para o gerenciamento e configurao do Windows XP, sendo amplamente utilizadas em todas as verses.
Tela do Painel de Controle do Windows XP
Prof. Miguel Angel Mrquez Galleguillos 49 Exemplo de tela de Ferramentas Administrativas do Windows XP Contedo da Ferramenta (Gerenciamento do Computador) Otimizando o Windows XP Professional A configurao default (padro) do Windows XP Professional deixam um grande espao para otimizaes. Seguindo as dicas a seguir, o Win 2K pode apresentar um desempenho aceitvel at mesmo em um microcomputador Pentium 233 MHz com 64 MB de memria RAM. Em um Microcomputador Pentium III com 128 MB de memria RAM. O Windows XP Professional bem configurado ir apresentar um bom desempenho ao trabalhar com vrios aplicativos abertos superior ao obtido com Windows 98. Veja abaixo algumas configuraes: Desabilite os servios desnecessrios Esta configurao deve ser feita apenas por usurios mais experientes, pois, desabilitar os servios errados, pode causar vrios efeitos colaterais, por exemplo, impedir que voc se conecte a Internet, acesse a rede ou use a impressora. Claro que de qualquer modo bastar habilitar novamente o servio para que tudo volte ao normal, desde que voc se lembre do que havia desabilitado. Desabilitado servios desnecessrios, voc poder liberar alguns megabytes preciosos de memria, teis sobre tudo em micro que tem apenas 64 MB de memria RAM. Prof. Miguel Angel Mrquez Galleguillos 50 Comeando do princpio, os servios so aplicativos que rodam em segundo plano, ficam carregados como se fossem partes do sistema. Alguns programas ficam habilitados como servios, por isso que voc no consegue desativ- los removendo-os do menu iniciar / iniciar (Start/Startup), ou atravs do registro. Para ver uma lista de todos os servios que esto instalados, basta acessar o Painel de controle / Ferramentas administrativas/ Servios. Voc ver uma janela como a seguir:
Em termos de navegao seguem o padro para as janelas do Windows, na coluna da esquerda esto os nomes dos servios, ao lado est uma breve descrio da sua funo, a seguir est a coluna de status, que mostra quais servios esto iniciados, e quais esto desativados. A ltima coluna, tipo de iniciao, pode ter trs valores, Automtico, indicando que o servio ser inicializado junto com o Windows, Desativado, ou Manual, quando o servio ficar desativado at que ativado manualmente. Para alterar o modo de iniciao dos servios, basta dar um duplo-click sobre o desejado.Isto abrir uma janela: Prof. Miguel Angel Mrquez Galleguillos 51
Na aba principal voc poder alterar o modo de iniciao, ou mesmo desativar o servio, caso ache que no v precisar dele. Uma dica que no preciso reiniciar o micro ao desativar algum servio, voc pode simplesmente fechar a janela e verificar se algo deixou de funcionar. Podemos, tambm, entrar na aba dependncia, que mostra se algum outro servio dependente deste para ser executado, ou se este depende de algum outro. Aqui vai uma lista de alguns servios que podem ser desabilitados, dependendo do uso seu micro: Servio de registro remoto: Permite manipular o registro do Windows remotamente. Desabilite esta opo a menos que seu microcomputador seja gerenciado remotamente pelo administrador de rede da empresa ou algo parecido. Notificao de eventos de sistema: Armazena informaes sobre eventos de sistema como login, erros, notificaes,etc. A menos que voc utilize um no- break inteligente (ligado porta serial, que desliga o micro e envia os alertas ao faltar energia ) ou outros dispositivos semelhantes, este servio pode ser seguramente desativado. Prof. Miguel Angel Mrquez Galleguillos 52 Auxiliar NetBIOS TCP/IP: Este servio oferece suporte a NetBIOS via TCP/IP. Mantenha este servio desativado a menos que voc esteja conectado a uma rede local que utilize este recurso (bastante raro atualmente). Este servio habilitado expe uma das brechas de segurana do Windows XP. Gerenciador de discos lgicos: Monitora o gerenciamento de discos lgicos. Deixe em Manual para este servio ser habilitado apenas quando necessrio. Mensageiro: Permite mensagens pop-up para outros micros da rede local. Desative se voc no estiver conectado a uma rede local ou caso no use este recurso. O recurso consome cerca de 300 KB de memria. Servidor: Este servio necessrio para ativar o compartilhamento de arquivo e impressoras atravs de redes. Entretanto, caso seu computador no esteja ligado em rede, apenas seja usado para acessar a Internet, por exemplo, voc poder desativar este servio. Alm de deixar o sistema mais leve, melhora a sua segurana. Spooler de Impresso: Voc pode desativar este servio caso no tenha nenhuma impressora instalada, liberando 3.5 MB de memria. Armazenamento protegido: O Windows XP oferece um recurso de criptografia de pastas, que impede que outros usurios acessem os arquivos previamente criptografados. Para criptografar uma pasta clique com o boto direito sobre ela, acessa Propriedades e em seguida Avanada, marque a opo Criptografar Contedo. Caso voc no pretenda utilizar este recurso, pode desabilitar este servio para livrar 150 KB de memria. Desabilite os efeitos visuais: Assim como no Windows 98 e o ME, o Windows XP por padro (default) mantm habilitados vrios efeitos visuais, que carregam mais ainda o sistema. Se a idia um melhor desempenho o melhor desabilit-los. Para isso, abra o Painel de Controle/ Opes de Pasta e escolha a seguinte opo: Usar pastas clssicas do Windows Abrir cada pasta em sua prpria janela (esta opo no tem um imediato muito significativo no desempenho total, voc pode manter os valores default se preferir) e clicar duas vezes para abrir um item (escolhendo abrir os itens com apenas um clique o Active desktop tambm ficar ativo). Podendo, tambm, desativar para melhorar o desempenho os efeitos sonoros do sistema. Para isso basta acessar o Painel de Controle/ Sons e multimdia, clicar na aba Sons e configurar a opo esquema de som como Sem Som. Instale s o necessrio: Esta dica de otimizao de desempenho vale para qualquer sistema operacional e no s para o Windows XP. Faa o possvel para manter Prof. Miguel Angel Mrquez Galleguillos 53 instalados apenas os programas que vo ser realmente utilizados. Qualquer programa instalado, principalmente os programas mais complexos, como o Office, CorelDraw, AutoCAD, entre outros, tornam o sistema mais pesado, mesmo no estando constantemente abertos. O motivo simples, com a instalao dos programas so instalados novos arquivos de biblioteca DLL, tambm so adicionadas chaves no registro, novas fontes, etc. Mesmo que o programa esteja fechado estes arquivos so carregados pelo Windows na iniciao, consumindo recursos do computador. Isto sem citar que muitos programas deixam aplicativos residente na memria, que passam a ser inicializados juntos com o Windows. Manter instalados apenas os aplicativos de que precisa, ir contribuir bastante para o desempenho do sistema. 6.2.2.15 Atualizaes automticas Agendar as tarefas do computador para execuo automtica.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Tarefas agendadas. 6.2.3 Ferramentas de Administrao de usurios No caso das parties NTFS o sistema de permisses de acesso s pastas e aos arquivos mais completa, onde voc pode configurar as permisses individualmente para cada um dos usurios ou grupos de usurios do computador (ou da rede).
Prof. Miguel Angel Mrquez Galleguillos 54 As permisses que podemos conceder aos usurios so as seguintes: Controle total: O usurio tem poder total sobre a pasta e/ou arquivos com esta permisso, inclusive incluir e retirar permisses, troca de nome da pasta, alterao do proprietrio das pastas e arquivos e a excluso da pasta e dos arquivos. Modificar: O usurio tem poder total sobre a pasta e/ou arquivos com esta permisso, somente no poder trocar de nome, alterar permisses, alterar o proprietrio e excluso da pasta e dos arquivos. Ler e Executar: O usurio s poder ler, abrir os arquivos da pasta e executar os programas existentes nesta pasta. Listar Contedo de Pastas: O usurio com esta permisso apenas pode ver (listar) os arquivos existentes dentro da pasta, no podendo copiar, executar, gravar ou alterar nenhum arquivo dentro dela. Leitura: O usurio com esta permisso s poder ler os arquivos existentes dentro da pasta, no podendo alterar, copiar ou gravar os arquivos. Gravar: Com esta permisso, o usurio poder ler os arquivos existentes dentro da pasta, podendo alterar, copiar ou gravar os arquivos.
Exemplo de pasta segurana da partio NTFS Prof. Miguel Angel Mrquez Galleguillos 55
Janela para adicionar permisses da partio NTFS
6.2.3.1 Incluso Criao de Usurios e Grupos de Usurios No Windows XP podemos criar e alterar usurios, alterar suas propriedades e alterar suas senhas e horrios de acesso. Para isto utilizamos a ferramenta Gerenciamento do Computador, que pertence ao grupo de Ferramentas Administrativas no Painel de Controle do Windows XP.
Prof. Miguel Angel Mrquez Galleguillos 56 Exemplo da janela do aplicativo Computer Management(Grenciamento do Computador) A instalao padro vem com os usurios Administrador (Administrator) e Convidado (Guest) criados, sendo que este ltimo desabilitado por razes de segurana. Para adicionarmos um novo usurio basta clicarmos com o boto direito do mouse no objeto usurios da rvore de objetos do sistema e escolhermos a opo Novo Usurio (New User). O sistema abre a janela de Novo Usurio, com os campos de dados do novo usurio que vamos criar. So estes campos:
Nome de Usurio Nome Completo Descrio Senha e confirmao de senha Opes de alterao de senha e desativao de conta do Usurio.
6.2.3.2 Excluso Exclui configuraes de contas de usurio e senha das pessoas que compartilharem este computador.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Contas de usurio, clique em Excluir uma conta. 6.2.3.3 Edio Altera configuraes de contas de usurio e senha das pessoas que compartilharem este computador.
Clique em Iniciar, aponte para Configuraes, clique em Painel de Controle, clique duas vezes em Contas de usurio, clique em Alterar uma conta. 6.2.3.4 Gerenciamento de Perfis Perfil de Usurio Prof. Miguel Angel Mrquez Galleguillos 57 Toda vez que um novo usurio faz o logon numa estao com Windows XP, criado um perfil particular para este usurio. Neste perfil do usurio so criados: Pasta Meus Documentos do usurio Desktop de trabalho do usurio (Wallpapers, cones, atalhos, etc) Arquivos temporrios da Internet Certificados da Internet deste usurio Menu iniciar com os programas usados pelo usurio Pastas compartilhadas e Impressoras do Usurio Caso houver algum problema na mquina e este perfil se perder, todas as configuraes para este usurio tambm sero perdidas, como por exemplo, arquivos de trabalho, acesso a aplicativos instalados, configuraes de Internet e e-mails, etc. Para evitarmos este problema devemos fazer uma cpia da pasta de trabalho do usurio, para isto devemos seguir o seguinte procedimento: com o boto direito do mouse clicamos no cone meu computador na rea de trabalho e clicamos em Propriedades. Na janela de propriedades de Meu Computador clicamos na aba Avanados e clicamos no boto de configuraes de perfil do usurio.
Exemplo de tela de perfis do Usurio do Windows XP Prof. Miguel Angel Mrquez Galleguillos 58 Clicando no boto Copiar para podemos criar uma cpia em pasta do perfil selecionado:
Agora basta indicarmos um caminho para uma pasta (ou criamos uma nova pasta) no disco para que a cpia do perfil selecionado seja feita. Nesta mesma janela tambm podemos alterar o usurio do Perfil selecionado, clicando no boto alterar do item de Uso Permitido da janela e depois escolhermos o usurio na lista de usurio que ser apresentada. 6.2.4 Registro (Registry) Viso geral sobre o Editor do Registro O Editor do Registro uma ferramenta avanada para exibir e alterar as configuraes no Registro do sistema, e que contm informaes sobre como o computador deve funcionar. O Windows armazena suas informaes de configurao em um banco de dados (o Registro) que est organizado em um formato de rvore. Embora o Editor do Registro permita que voc inspecione e modifique o Registro, geralmente no necessrio faz-lo. Alteraes incorretas podem danificar o sistema. Um usurio avanado que esteja preparado para editar e restaurar o Registro pode usar o Editor do Registro com segurana para executar tarefas como, por exemplo, eliminar entradas duplicadas ou excluir entradas de programas que foram desinstalados ou excludos. As pastas representam chaves no Registro e so mostradas na rea de navegao no lado esquerdo da janela do Editor do Registro. Na rea de tpicos do lado direito, as entradas de uma chave so exibidas. Clique duas vezes em uma entrada para abrir uma caixa de dilogo de edio. Prof. Miguel Angel Mrquez Galleguillos 59 No edite o Registro, a menos que seja absolutamente necessrio. Se ocorrer um erro no Registro, seu computador poder no funcionar de maneira adequada. Se isso acontecer, voc poder restaurar o Registro para a verso que utilizou quando iniciou com xito o computador pela ltima vez. Para obter instrues, consulte Tpicos relacionados. 6.2.4.1 Adio Para melhorar a velocidade de acesso rede Se voc usa o Windows XP em rede, deve ter percebido uma demora de at 30 segundos para abrir a lista de compartilhamentos de microcomputadores da rede atravs do Windows Explorer ou pelo cone Meus Locais de rede. Isto pode ser resolvido atravs de uma pequena modificao no Registro do Windows. O que ocorre que o Windows, por padro, sempre procura por arquivos compartilhados para as tarefas agendadas, o que provoca essa demora. Para desativar esta busca, basta abrir o Regedit e acessar a seguinte pasta: HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explore r/RemoteComputer/NameSpace. Nesta pasta voc encontrar duas chaves e podemos apagar a seguinte chave: {D6277990-4C6A-11CF-8D87- 00AA0060F5BF}. Lembre-se de fazer uma cpia da chave para o caso de qualquer problema. Esta chave no deve ser excluda caso voc utilize o recurso de arquivos compartilhados para tarefas agendadas. Alm de resolver o problema da lentido ao acessar os computadores da rede local, remover esta chave tambm melhorar o tempo de carregamento do seu Internet Explorer e assim o carregamento das pginas da Internet. Esta modificao no exige a reiniciar o computador, por isso voc poder testar imediatamente o ganho de desempenho, ou voltar atrs caso perceba qualquer comportamento estranho 6.2.4.2 Edio Editando e Otimizando o Registro do Windows XP No Windows XP devemos evitar o mximo possvel em editar e manusear o Registro, pois ao contrrio do Windows 9x/ME, o Windows XP faz um melhor gerenciamento das chaves do Registro e possui, como vimos, outras formas de gerenciar os programas e servios. Porm, existem duas opes no Registro que podem ser habilitadas para melhorar ainda mais o desempenho do sistema. Vejamos: Prof. Miguel Angel Mrquez Galleguillos 60 DisableExecutivePaging: Esta opo diz respeito memria virtual. Mesmo que voc tenha memria RAM suficiente (acima de 128 MB ), o Windows continuar usando o arquivo de troca no disco rgido para armazenar alguns componentes do sistema, que no so usados freqentemente. Ou seja, mesmo que voc tenha 512 MB ou 1GB de RAM, o Windows continuar usando memria virtual. Para desabilitar isto, fazendo com que o Windows use memria virtual apenas quando a memria RAM se esgote, abra o Regedit (Iniciar / Executar / Regedit) e acesse a pasta: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management. Abra a chave DisableExecutivePaging e mude o valor de 0 para 1. recomendvel ativar essa opo apenas caso voc tenha 128 MB de memria RAM ou mais, caso contrrio o desempenho poder cair ao invs de aumentar. LargeSystemCache: Ao contrrio da primeira opo, habilitar essa opo traz mais benefcios para quem tem pouca memria RAM. Esta chave se encontra na mesma pasta da chave anterior. Mude o valor de 0 para 1, isto habilitar o recurso, permitindo que o Windows altere dinamicamente o tamanho do cache de sistema na memria RAM. Em micros com pouca memria isto ir liberar mais memria para os aplicativos, enquanto nos micros com memria RAM de sobra, ir melhorar a velocidade do sistema. 6.2.4.3 Remoo de Chaves ou valores Desabilitar os programas que inicializam com o Windows Uma das configuraes para melhorar o desempenho do sistema desabilitar os programas que so inicializados com o Windows. Algum deles se encontram na pasta Iniciar / Programas / Iniciar, e podem ser localizados e desabilitados facilmente, mas existem outros que se ocultam no Registro. Para encontr-los, basta abrir a pasta: [HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTV ERSION\RUN] Para desativar os programas indesejados basta apagar as chaves correspondentes. Por segurana, recomendvel exportar as chaves a serem apagadas, criando um backup para o caso de acontecer algum erro. 6.2.4.4 Principais chaves A rea de navegao do Editor do Registro exibe pastas, cada uma delas representando uma chave predefinida no computador local. Quando o Registro acessado de um computador remoto, somente duas chaves predefinidas aparecem, HKEY_USERS e HKEY_LOCAL_MACHINE. Prof. Miguel Angel Mrquez Galleguillos 61 Pasta/chave predefinida Descrio HKEY_CURRENT_USER Contm a base das informaes de configurao para o usurio que estiver conectado no momento. As configuraes de pastas, de cores de tela e do Painel de controle do usurio so armazenadas aqui. Essas informaes so chamadas de perfil do usurio.
HKEY_USERS Contm a base de todos os perfis do usurio no computador. HKEY_CURRENT_USER uma subchave de HKEY_USERS.
HKEY_LOCAL_MACHINE Contm informaes de configuraes especficas do computador (para qualquer usurio).
HKEY_CLASSES_ROOT uma subchave de HKEY_LOCAL_MACHINE\Software. As informaes armazenadas aqui garantem que o programa correto ser aberto quando voc abrir um arquivo usando o Windows Explorer.
HKEY_CURRENT_CONFIG Contm informaes sobre o perfil de hardware usado pelo computador local na inicializao do sistema. A tabela a seguir lista os tipos de dados definidos no momento e usados pelo sistema. Tipo de dados Descrio REG_BINARY Dados binrios no processados. As informaes dos componentes de hardware, em sua maioria, so armazenadas como dados binrios e exibidas em formato hexadecimal no Editor do Registro.
REG_DWORD Os dados representados por um nmero com 4 bytes. Vrios parmetros para drivers de dispositivos e servios so desse tipo e esto exibidos em formato binrio, hexadecimal ou decimal no Editor do Registro. Prof. Miguel Angel Mrquez Galleguillos 62 REG_EXPAND_SZ Uma seqncia de dados de comprimento variado. Esse tipo de dado inclui variveis que so resolvidas quando um programa ou servio usa os dados.
REG_MULTI_SZ Uma seqncia mltipla. Esse tipo representado geralmente por valores que contm listas ou valores mltiplos em um formato que as pessoas podem ler. As entradas so separadas por espaos, vrgulas ou outras marcas.
REG_SZ Uma seqncia de texto de comprimento fixo.
REG_FULL_RESOURCE_DESCRIPTOR Uma srie de matrizes aninhadas criadas para armazenar uma lista de recursos para um componente de hardware ou driver.
Cuidado A edio incorreta do Registro pode danificar gravemente o sistema. Antes de alter-lo, faa backup dos dados importantes contidos no computador. Observaes Para abrir o Editor do Registro, clique em Iniciar, clique em Executar, digite regedit e clique em OK. Para usar o Editor do Registro com segurana para executar tarefas como eliminar entradas duplicadas ou excluir entradas para programas que foram desinstalados ou excludos, prepare-se para editar e restaurar o Registro. 6.2.4.5 Mtodos de Backup do Registro Antes de alterar o Registro, faa uma cpia de backup. Para isso, voc pode usar um programa como o Backup. Aps fazer alteraes no Registro, crie um disco de recuperao automatizada do sistema (ASR). Com a finalidade de solucionar problemas, guarde uma lista das alteraes efetuadas no Registro. Para obter mais informaes, consulte Dados do estado do sistema. Prof. Miguel Angel Mrquez Galleguillos 63 No substitua o Registro do Windows pelo Registro de outras verses de sistemas operacionais Windows ou Windows NT. Use ferramentas e programas que no o Editor do Registro para editar o Registro. A edio incorreta do Registro pode danificar gravemente o sistema. Voc deve usar ferramentas e programas que forneam mtodos mais seguros para editar o Registro. Nunca permita que o Editor do Registro seja executado em modo autnomo. Para exportar todo o Registro ou parte dele para um arquivo de texto 1. Abra o Editor do Registro. 2. No menu Arquivo, clique em Exportar. 3. Em Nome do arquivo, digite um nome para o arquivo de Registro. 4. Em Intervalo de exportao, siga um destes procedimentos: o Para efetuar backup de todo o Registro, clique em Todos . o Para efetuar backup somente de uma determinada seo da rvore do Registro, clique em Seo selecionada e digite o nome da ramificao que voc deseja exportar. 5. Clique em Salvar. 6.2.4.6 Recuperao do Registro Abra o Editor do Registro. Clique em Opes e em Imprimir para imprimir estas instrues. (Se estiver usando o Centro de ajuda e suporte, clique em Imprimir acima da rea do tpico.) Elas no estaro disponveis depois que voc desligar o computador na etapa 2. Clique em Iniciar e em Desligar. Na lista, clique em Reiniciar e, em seguida, clique em OK. Ao ver a mensagem Selecione o sistema operacional a ser iniciado, pressione F8. Use as teclas de direo para realar ltima configurao vlida e pressione ENTER. A tecla NUM LOCK deve estar desativada para que as teclas de direo do teclado numrico funcionem. Use as teclas de direo para realar um sistema operacional e pressione ENTER. Cuidado Prof. Miguel Angel Mrquez Galleguillos 64 A edio incorreta do Registro pode danificar gravemente o sistema. Antes de alter-lo, faa backup dos dados importantes contidos no computador. Observaes Para abrir o Editor do Registro, clique em Iniciar, clique em Executar, digite regedit e clique em OK. A escolha de ltima configurao vlida oferece uma maneira de solucionar problemas como a adio recente de um driver que possa ser inadequado para o hardware. Essa opo no soluciona problemas causados por drivers ou arquivos danificados ou que estejam ausentes. Quando voc escolhe ltima configurao vlida, o Windows restaura as informaes somente na chave do Registro HKLM\System\CurrentControlSet. Todas as alteraes feitas em outras chaves do Registro permanecem. 6.2.5.1 Ferramentas de Manuteno de Mdia 6.2.5.1 Deteo de erros Deteco de erros. Paridade uso de um bit adicional no caractere que provoca um nmero mpar ou par de bits no nvel 1 lgico, temos ento a paridade par ou paridade Impar. CRC(Cdigo de Razo Constante) a tcnica na quais os caracteres so gerados de tal forma que a razo entre o nmero de 1s e 0`s que compem o caractere seja constante. Cdigo Polinomial detecta qualquer tipo de erro. 6.2.5.2 Cpias de Segurana e Salvaguarda Disco de Recuperao do Sistema Para resolver alguns problemas que possam surgir no Windows XP devemos manter, sempre atualizado, um disco de recuperao do Sistema. Com este disco, caso o sistema no inicialize ou simplesmente se corrompa o Registro do Windows, podemos restaurar as ltimas configuraes do sistema. A criao de um disco de Restaurao muito simples, basta entramos no programa de Backup do Windows XP, seguindo os seguintes passos: Iniciar/ Programas/ Acessrios / Ferramentas do Sistema / Backup. Prof. Miguel Angel Mrquez Galleguillos 65
Exemplo de tela de opes de Backup Este sistema de Backup tem trs botes na tela principal: Assistente de backup Assistente para restaurao Assistente para recuperao automatizada do sistema Escolhermos a ultima opo, Disco de Reparao de Emergncia, para isto basta um clique no cone da opo escolhida. O programa apresentar uma tela de escolha do backup do Registro do Windows, escolhermos esta opo, inserimos o disquete clicamos em OK, assim est pronto o disco de Reparao do Sistema. 6.3 Agendamento de Tarefa 6.3.1 Definio Com as Tarefas agendadas, voc pode agendar qualquer script, programa ou documento para ser executado no momento mais conveniente. As Tarefas agendadas so iniciadas sempre que voc inicia o Windows XP e executadas em segundo plano. Com as Tarefas agendadas, voc pode: Prof. Miguel Angel Mrquez Galleguillos 66 Agendar a execuo de uma tarefa diariamente, semanalmente, mensalmente ou em determinados momentos (como na inicializao do sistema). Alterar o agendamento de uma tarefa. Interromper uma tarefa agendada. Personalizar o modo como uma tarefa ser executada em um horrio agendado. 6.3.2 Aplicabilidade Para agendar uma nova tarefa 1. Abra Tarefas agendadas. 2. Clique duas vezes em Adicionar tarefa agendada. 3. Siga as instrues do Assistente de tarefa agendada. Observaes Para abrir Tarefas agendadas, clique em Iniciar, aponte para Todos os programas, para Acessrios, para Ferramentas do sistema e clique em Tarefas agendadas. Para definir configuraes avanadas para a tarefa, marque a caixa de seleo Abrir as propriedades avanadas desta tarefa ao clicar em Concluir, na pgina final do assistente. Certifique-se de que a data e a hora do sistema no seu computador esto precisas, pois as Tarefas agendadas dependem dessas informaes para execuo. Para verificar ou alterar essas informaes, clique duas vezes no indicador de hora na barra de tarefas. Se deixar a senha em branco e desejar que a tarefa seja executada quando estiver conectado, abra a tarefa. Na guia Tarefa, marque a caixa de seleo Executar somente se conectado. A tarefa ser executada no horrio agendado quando o usurio que a criou estiver conectado ao computador. 6.4 Scripts de Automao (BAT, VBS) O Visual Basic uma linguagem de programao produzida pela empresa Microsoft, e parte integrante do pacote Microsoft Visual Studio. Sua verso mais recente faz parte do pacote Visual Studio .NET, voltada para aplicaes .Net. Sua verso anterior fez parte do Microsoft Visual Studio 6.0, ainda muito utilizado atualmente. Um aperfeioamento do BASIC, a linguagem dirigida por eventos (event driven), e possui tambm um ambiente de desenvolvimento integrado (IDE - Integrated Development Environment) totalmente grfico, facilitanto enormemente a construo da interface das aplicaes (GUI - Graphical User Interface), da o nome "Visual". Em suas primeiras verses, o Visual Basic no permitia acesso a bancos de dados, sendo portanto voltado apenas para iniciantes, mas devido ao sucesso entre as empresas - que faziam uso de Prof. Miguel Angel Mrquez Galleguillos 67 componentes adicionais fabricados por terceiros para acesso a dados - a linguagem logo adotou tecnologias como DAO, RDO, e ADO, tambm da Microsoft, permitindo fcil acesso a bases de dados. Mais tarde foi adicionada tambm a possibilidade de criao de controles ActiveX, e, com a chegada do Visual Studio .NET, o Visual Basic se tornou uma linguagem totalmente orientada a objetos. Existem vrias linguagens derivadas, entre as quais: VBScript a linguagem default (por definio) para Active Server Pages e pode ser usada no scripting (programao) de Windows e de pginas da Internet. Viso geral sobre o host de scripts do Windows Voc pode usar o host de scripts do Windows para executar scripts clicando em um arquivo de script na rea de trabalho do Windows ou digitando o nome de um arquivo de script no prompt de comando. Assim como o Microsoft Internet Explorer, o host de scripts do Windows serve como um controlador dos mecanismos de script em conformidade com script do Windows. Diferentemente do Internet Explorer, o host de scripts do Windows requer pouca memria e ideal para as necessidades de script interativas ou no, como o script de logon e o script administrativo. H duas verses do host de scripts do Windows: uma verso baseada em janelas (Wscript.exe), que fornece uma folha de propriedades para configurar as propriedades do script, e uma verso baseada em prompt de comando (Cscript.exe), que fornece opes de linha de comando para configurar as propriedades do script. Voc pode executar qualquer uma das duas digitando Wscript.exe ou Cscript.exe no prompt de comando. Anteriormente, a nica linguagem de script nativa para a qual o sistema operacional Windows oferecia suporte era a linguagem de comando MS-DOS. Embora o MS-DOS seja rpido e pequeno, possui recursos limitados se comparado ao VBScript e ao JScript. Por exemplo, a capacidade de controlar o fluxo de programas no existe nessa linguagem. Hoje em dia, a arquitetura do host de scripts do Windows permite que voc utilize essas avanadas linguagens de script, apesar de ainda oferecer suporte aos scripts de comando do MS-DOS. O host de scripts do Windows oferece suporte a scripts escritos no Visual Basic Scripting Edition (VBScript) ou no JScript. Quando um script iniciado na rea de trabalho do Windows ou no prompt de comando, o host de scripts l e passa o contedo do arquivo de script especificado para o mecanismo de script registrado. O mecanismo de script usa extenses de arquivo (.vbs para VBScript; .js para JScript) para identificar o script em vez de usar a marca SCRIPT (usada em HTML). Dessa forma, voc no precisa estar familiarizado com a identificao programtica (ProgID) exata dos diversos mecanismos de script. O prprio host de scripts mantm um mapeamento das extenses de script para as ProgIDs e usa o modelo de associao do Windows para iniciar o mecanismo apropriado para um determinado script. Esta verso do WSH adiciona funcionalidade a vrias reas: Tratamento de argumentos melhorado Prof. Miguel Angel Mrquez Galleguillos 68 Tratar e documentar argumentos de linha de comando agora est mais simples. Scripts remotos Voc pode carregar um script em vrios sistemas de computador remoto que podem ser executados ao mesmo tempo. Um processo em execuo um objeto Voc pode consultar o processo gerado, coletar seus eventos, acessar os seus fluxos de E/S padro e compartilhar suas variveis de ambiente com outros processos. A pasta de trabalho atual Voc pode determinar e modificar o caminho da pasta de trabalho atual do processo ativo. Questes de segurana do script O novo modelo de segurana de script torna mais seguro distribuir e executar scripts. Para definir propriedades globais para todos os scripts que so executados com um host de scripts do Windows 1. Clique em Iniciar e, em seguida, clique em Executar. 2. Na caixa Abrir, digite wscript e clique em OK. A caixa de dilogo Configuraes do Windows Script Host ser exibida. 3. Marque a caixa de seleo Interromper o script aps um determinado nmero de segundos. 4. Na caixa segundos, digite o limite de tempo que deseja colocar em todos os scripts. Observaes Com uma configurao, voc pode definir propriedades para todos os scripts que so executados com um host de scripts do Windows Cada script executado com esse host usa essas configuraes automaticamente.
Para definir propriedades para scripts individuais que so executados com um host de scripts do Windows 1. Windows Explorer. Navegue para a pasta que contm o script cujas propriedades deseja definir e clique duas vezes nele. 2. Selecione Propriedades e clique na guia Script. 3. Marque a caixa de seleo Interromper o script aps um determinado nmero de segundos. 4. Na caixa segundos, digite o limite de tempo que deseja colocar neste script. Prof. Miguel Angel Mrquez Galleguillos 69 Observaes Para abrir o Windows Explorer, clique em Iniciar, aponte para Programas, para Acessrios e clique em Windows Explorer. Essas definies substituem as configuraes globais. Depois de clicar em OK, um arquivo de comando criado para vincular as configuraes da propriedade ao script. Ele tem a extenso de nome de arquivo .wsh. Voc pode usar o arquivo de comando como um arquivo de script alternativo para executar o script. Para executar amostras do host de scripts do Windows 1. Prompt de comando 2. No prompt de comando, digite o seguinte: cscript pasta_de_amostras\nome_do_script Onde: pasta_de_amostras o caminho da pasta na qual voc fez o download das amostras. nome_do_script o nome do script de exemplo a ser executado. Esse nome deve ser completo, com a extenso de arquivo (por exemplo, .js ou .vbs). Por exemplo, se salvar as amostras em C:\Samples e desejar executar a amostra Network.vbs, digite: cscript c:\sample\network.vbs Observaes Para abrir um Prompt de comando, clique em Iniciar, aponte para Programas, para Acessrios e clique em Prompt de comando. Voc deve fazer o download dos arquivos de amostra do host de scripts do Windows do site da Microsoft na Web para que possa execut-los. Tambm pode clicar duas vezes no arquivo de script de amostra para executar um script usando o host de scripts Wscript.exe. Para executar scripts usando o host de scripts do Windows (Wscript.exe) Voc pode executar scripts com o host de scripts do Windows das seguintes formas: Navegando no Windows Prof. Miguel Angel Mrquez Galleguillos 70 Navegue para a pasta que contm o script que deseja executar e clique duas vezes nele. Os arquivos de script podem ser listados em Meu computador, no Windows Explorer, na janela Localizar, no menu Iniciar ou na rea de trabalho. Usando o comando Executar Clique em Iniciar e, em seguida, clique em Executar. Em Abrir, digite o nome do arquivo executvel do host do Windows (Wscript.exe), seguido por um espao e, em seguida, o caminho completo do script que voc deseja executar. Certifique-se de incluir a extenso do arquivo de script. Clique em OK para iniciar o script. Em uma janela de prompt de comando No prompt de comando, digite o nome do arquivo executvel do host do Windows (Wscript.exe), seguido por um espao e, em seguida, o caminho completo do script que voc deseja executar. Certifique-se de incluir a extenso do arquivo de script. Pressione Enter para iniciar o script. Observaes Os arquivos de script do Windows tm as seguintes extenses de nome: .wsf, .vbs, .js. Se voc clicar duas vezes em um arquivo de script cuja extenso no foi associada a um arquivo Wscript.exe, a caixa de dilogo Abrir com ser exibida. Selecione Wscript.exe e, em seguida, selecione Sempre usar este programa para abrir este tipo de arquivo. O arquivo Wscript.exe ser registrado como o host de script padro para arquivos desse tipo. Voc pode usar a caixa de dilogo Configuraes de Host de script do Windows para definir as propriedades de script globais de todos os scripts que o arquivo Wscript.exe executa no computador local. Voc pode definir propriedades para scripts individuais Consulte Tpicos relacionados para obter informaes sobre como faz-lo. Voc tambm pode usar o host de scripts do Windows para criar arquivos de script .wsf, com os quais voc pode chamar vrios mecanismos de script e executar diversos trabalhos de um arquivo. Para fazer o download de amostras do host de scripts do Windows 1. No painel de navegao do site Microsoft Windows Script Technologies na Web (http://www.microsoft.com/), clique em Windows Script Host. 2. No menu Overview, clique em Samples. 3. Na pgina Samples, clique em Download. A caixa de dilogo Download de arquivo ser exibida. 4. Na caixa de dilogo Download de arquivo, clique em OK. A caixa de dilogo Salvar como ser exibida. Prof. Miguel Angel Mrquez Galleguillos 71 5. Na caixa de dilogo Salvar como, crie uma nova pasta ou navegue para a pasta na qual deseja salvar os exemplos e clique em Salvar. Um arquivo chamado Samples.exe descarregado para a sua pasta. 6. Navegue para a pasta de exemplos e clique duas vezes no arquivo Samples.exe. A caixa de dilogo WinZip Self-Extractor exibida. 7. Em Unzip to Folder, digite o caminho da pasta Exemplos. Clique em Unzip para extrair o contedo de Samples.exe. Observaes A pasta de exemplos contm vrios arquivos JScript e VBScript (voc pode excluir Samples.exe). A pasta tambm inclui o arquivo leiame.doc, que contm informaes sobre os scripts de exemplo. Voc pode examinar e editar o cdigo do script clicando com o boto direito do mouse no arquivo de script no Windows Explorer e, em seguida, clicando em Editar. Voc pode executar um script clicando duas vezes nele no Windows Explorer. Prof. Miguel Angel Mrquez Galleguillos