TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Um sistema de computação é constituído basicamente por hardware e software.

Por:   •  4/10/2018  •  Relatório de pesquisa  •  5.167 Palavras (21 Páginas)  •  211 Visualizações

Página 1 de 21

Conceitos básicos

Um sistema de computação é constituído basicamente por hardware e software.

O hardware é composto por circuitos eletrônicos (processador, memória, portas de entrada/saída, etc.) e periféricos eletro‐ópticomecânicos (teclados, mouses, discos rígidos, unidades de disquete, CD ou DVD, dispositivos USB, etc.).

Por sua vez, o software de aplicação é representado por programas destinados ao usuário do sistema, que constituem a razão final de seu uso, como editores de texto, navegadores de Internet ou jogos. Entre os aplicativos e o hardware reside uma camada de software multi‐facetada e complexa, denominada genericamente de Sistema Operacional.

Se cada programador de aplicações tivesse de entender como tudo isso funciona em detalhes, por exemplo, nenhum código chegaria a ser escrito. Além disso, gerenciar todos esses componentes e usá‐los de maneira otimizada é um trabalho extremamente difícil.

Por exemplo, a forma de acesso de baixo nível a discos rígidos IDE difere da forma de acesso a discos SCSI ou leitores de CD. Além disso, difere os discos IDEs de diferentes fabricantes.

Essa grande diversidade pode ser uma fonte de dores de cabeça para o desenvolvedor de aplicativos. Portanto, torna‐se desejável oferecer aos programas aplicativos uma forma de acesso homogênea aos dispositivos físicos, que permita abstrair as diferenças tecnológicas entre eles.

Por isso, os computadores tem um dispositivo de software denominado Sistema Operacional, cujo trabalho é fornecer aos programas do usuário um modelo de computador melhor, mais simples e mais limpo e lidar com o gerenciamento de todos os recursos mencionados.

O sistema operacional é uma estrutura de software ampla, muitas vezes complexa, que incorpora aspectos de baixo nível (como drivers de dispositivos e gerência de memória física) e de alto nível (como programas utilitários e a própria interface gráfica).

Os objetivos básicos de um sistema operacional podem ser sintetizados em duas palavras‐chave: “abstração” e “gerência”, cujos principais aspectos são detalhados a seguir.

Abstração de recursos

Acessar os recursos de hardware de um sistema de computação pode ser uma tarefa complexa, devido às características específicas de cada dispositivo físico e a complexidade de suas interfaces. Por exemplo, a sequência a seguir apresenta os principais passos envolvidos na abertura de um arquivo (operação open) em um leitor de disquete:

Foi dado o exemplo do disquete, que embora obsoleto, ainda é mais simples a sua explicação do que o disco rígido. O chip que controla o disquete, por exemplo, o PD765, possui 16 comandos, especificados pela carga de 1 a 9 bytes no seu registrador para leitura e escrita de dados, movimentação do braço do disco e formatação de trilhas, inicialização do driver, verificação se há disquete no driver, reinicialização, calibração do controlador e das unidades de disquete.

Para ler ou escrever um arquivo no disquete, cada operação de leitura ou escrita requer 13 parâmetros, agrupados em 9 bytes. Esses parâmetros especificam o endereço do bloco de dados a ser lido, o número de setores por trilha, o modo de gravação usado no meio físico, o espaço livre entre os setores, etc.

Quando a operação de leitura ou escrita é completada, o chip controlador retorna 23 campos de status e de erros agrupados em 7 bytes. Como se isso não bastasse, o programador da unidade de discos flexíveis ainda deve saber se o motor está ligado ou não, se estiver desligado, então deverá ser ligado (com um longo atraso de inicialização) antes que os dados possam ser lidos ou escritos.

O motor não pode permanecer ligado por muito tempo, senão o disco flexível poderá sofrer desgaste. O programador é, então, forçado a equilibrar dois fatores: longos atrasos de inicialização versus desgastes do disco flexível (e a perda dos dados nele gravados).

Esses comandos e procedimentos diferem de fabricante para fabricante de controlador de unidade de disquete e, falamos anteriormente, que a complexidade de se programar uma unidade de disco rígido é ainda maior.

Assim, o sistema operacional deve definir interfaces abstratas para os recursos do hardware, visando atender os seguintes objetivos:

Prover interfaces de acesso aos dispositivos, mais simples de usar que as interfaces de baixo nível, para simplificar a construção de programas aplicativos.

Por exemplo: para ler dados de um disco rígido, uma aplicação usa um conceito chamado arquivo, que implementa uma visão abstrata do disco rígido, acessível através de operações como open, read e close.

Tornar os aplicativos independentes do hardware. Ao definir uma interface abstrata de acesso a um dispositivo de hardware. Por exemplo, o código de um editor de textos não deve ser dependente da tecnologia de discos rígidos utilizada no sistema.

Definir interfaces de acesso homogêneas para dispositivos com tecnologias distintas. Através de suas abstrações, o sistema operacional permite aos aplicativos usar a mesma interface para dispositivos diversos. Por exemplo, um aplicativo acessa dados em disco através de arquivos e diretórios, sem precisar se preocupar com a estrutura real de armazenamento dos dados, que podem estar em um disquete, um disco IDE, na rede, etc.

Gerência de recursos

Os programas aplicativos usam o hardware para atingir seus objetivos: ler e armazenar dados, editar e imprimir documentos, etc.

Em um sistema com várias atividades simultâneas, podem surgir conflitos no uso do hardware, quando dois ou mais aplicativos precisam dos mesmos recursos para poder executar. Cabe ao sistema operacional definir políticas para gerenciar o uso dos recursos de hardware pelos aplicativos, e resolver eventuais disputas e conflitos.

Exemplo:

Cada computador normalmente possui menos processadores que o número de tarefas em execução.

Por isso, o uso desses processadores deve ser distribuído entre os aplicativos presentes no sistema, de forma que cada um deles possa executar na velocidade adequada para cumprir suas funções sem prejudicar os demais.

O mesmo ocorre com a memória RAM, que deve ser distribuída de forma justa entre as aplicações.

A impressora é um recurso cujo acesso deve ser efetuado de forma mutuamente exclusiva (apenas um aplicativo por vez), para não ocorrer mistura de conteúdo nos documentos impressos.

• Ataques de negação de serviço (DoS – Denial of Service) são comuns na Internet.

...

Baixar como (para membros premium)  txt (35.1 Kb)   pdf (228.8 Kb)   docx (48.2 Kb)  
Continuar por mais 20 páginas »
Disponível apenas no TrabalhosGratuitos.com