230 likes | 309 Views
Sistemas Operacionais. Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari. Gerência de dispositivos. 12/11/2013. Introdução. A gerência de dispositivos de I/O é uma das mais complexas funções do SO; Sua implementação é em camadas;
E N D
Sistemas Operacionais Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari
Gerência de dispositivos 12/11/2013
Introdução • A gerência de dispositivos de I/O é uma das mais complexas funções do SO; • Sua implementação é em camadas; • Camadas mais baixas escondem detalhes do hardware; • Propicia interface amigável ao usuário; • Existe um subsistema de I/O que isola a complexidade dos dispositivos do sistema de arquivos e da aplicação; • O SO pode implementar a comunicação de processos com uso de qualquer dispositivo de I/O. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Introdução • Detalhes como taxa de transferência, velocidade de operação, representação dos dados, tipos de operações ficam a cargo da camada de device driver; • Nesta aula será abordada as camadas que compõe a gerência do subsistema de I/O. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Acesso ao subsistema de I/O • O SO possui um conjunto de rotinas que possibilitam acesso fácil aos dispositivos de I/O; • Rotinas de entrada e saída: • Possibilitam ao usuário realizar I/O sem se preocupar com detalhes do hardware. • Operações de I/O se dão através de System calls que chamam as rotinas do núcleo do SO; • System Callsde entrada e saída. • Programas podem manipular qualquer arquivo em qualquer mídia sem receber reprogramação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Acesso ao subsistema de I/O • A forma mais simples de acessar os dispositivos é através de comandos de leitura e gravação e chamadas a rotinas de bibliotecas oferecidas pelas linguagens de alto nível; • A comunicação entre os comandos de I/O e as system callsé feita através da passagem de parâmetros; • Pode ser feita diretamente pelas linguagens de alto nível. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Acesso ao subsistema de I/O Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
O subsistema de I/O • O Subsistema é responsável por realizar as funções comuns a todos os dispositivos de I/O; • Os detalhes dos dispositivos ficam a cargo dos devices drivers; • Cada dispositivo pode operar com tipos de dados diferentes: • Caracteres ou blocos de bits; • O subsistema de I/O deve criar unidades lógicas de transferência independente do dispositivo para passar para as camadas superiores. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
O subsistema de I/O • Os erros ocorridos nos dispositivos geralmente são tratados nas camadas mais próximas do hardware; • Podem ocorrer tratamentos de erros em camadas superiores, quando esses são reportados e possam ser tratados independente do tipo de dispositivo; • Todo dispositivo deve ser utilizado de forma compartilhada e segura: • Discos, impressoras, etc. • Cabe ao SO gerenciar esse compartilhamento de forma segura e protegida. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
O subsistema de I/O • Bufferização é outra característica do subsistema de I/O; • Permite melhorar o desempenho de operação dos dispositivos; • Consiste em armazenar em uma memória intermediária os dados acessados para equiparar as taxas de transferência de dados. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
O subsistema de I/O • O subsistema de I/O permite criar uma interface entre o hardware e o SO, escondendo os detalhes físicos dos dispositivos; • Sempre que um novo dispositivo é acoplado no computador, apenas uma camada é alterada, não afetando o SO como um todo: • Apenas a camada de Device Driver. • Todo dispositivo deve ter um driver para que possa operar e interagir com o SO. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Device Drivers • A função dos Drivers é prover interação do subsistema de I/O com o dispositivo para que haja comunicação; • O subsistema de I/O trata de todos os dispositivos; • O driver trata apenas do dispositivo específico; • Recebem instruções comuns a todos os dispositivos e os convertem para que um dispositivo em específico possa utilizar; • Cada driver controla apenas um dispositivo ou um grupo de dispositivos comuns. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Device Drivers Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Device Drivers • Um exemplo: • Ao ler um disco, a aplicação não necessita saber a trilha, cilindro e setor que a informação está gravada; • A aplicação solicita o arquivo, o driver se comunica com o disco para recuperar a informação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Device Drivers Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Device Drivers • Os drivers executam em modo Kernel; • Quando contém erros, os driver podem travar todo o sistema; • Devem ser escritos e testados com cuidado; • Para cada SO existe um driver diferente para o mesmo dispositivo: • Windows 32 bits, Windows 64 bits, Linux, MAC, etc. • Antes, ao instalar um driver, havia a necessidade de recompilar o Kernel do SO, atualmente a maioria dos SOs dispensam essa recompilação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores • Controladores são componentes de hardware responsáveis por manipular diretamente o dispositivo de I/O; • Os drivers se comunicam com o dispositivo através dos controladores; • Geralmente o controlador está em uma placa acoplada no computador através de um slot de expansão ou onboard. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores • Controladores possuem memória e registradores próprios; • Os dados lidos no dispositivo ficam armazenados em um buffer na controladora até que exista uma unidade transferível; • Após verificar erros nos blocos, os dados são transferidos do buffer para a memória principal; • Essa transmissão pode ser realizada pela CPU ou com técnicas de DMA. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores • Controladores possuem memória e registradores próprios; • Os dados lidos no dispositivo ficam armazenados em um buffer na controladora até que exista uma unidade transferível; • Após verificar erros nos blocos, os dados são transferidos do buffer para a memória principal; • Essa transmissão pode ser realizada pela CPU ou com técnicas de DMA. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Controladores Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Atividades • Da 1 até a 7 242 do livro ou página 258 PDF Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013