PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Tamanho: px
Começar a partir da página:

Download "PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br"

Transcrição

1 - Aula 4 - NÍVEL DE MÁQUINA DE SISTEMA OPERACIONAL 1. INTRODUÇÃO Este é o nível responsável por fazer a interface homem-máquina, com a capacidade de suportar sistemas de comandos ou de janelas. Figura 1 - Níveis Este nível suporta algumas facilidades, como: - Memória virtual (uso de memória secundária como se fosse memória principal, aumentando o espaço de endereçamento). - E/S virtual (instruções de E/S de alto nível facilitam a programação e fornecem garantias mínimas de segurança). - Multiprogramação (possibilidade de interpretar várias máquinas de nível 3 em paralelo). 2. MEMÓRIA VIRTUAL Os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida, por exemplo: PDP-1 funcionava em tempo compartilhado com memória de 4096 palavras de 18 bits cada para rodar o sistema operacional e os programas dos usuários. Por falta de memória, às vezes se implementava algoritmos mais lentos. A solução tradicional para a falta de memória era o uso de memória secundária era a divisão do programa em partes, chamadas overlays, que cabiam na memória disponível. Cada 1

2 overlay era carregado do disco para a memória, segundo a seqüência do programa, e executado. O programador era responsável por gerenciar todo o processo de overlays sem qualquer ajuda do computador. A definição de overlays evoluiu para o conceito de memória virtual. Em 1961, um grupo de pesquisadores ingleses apresentaram um Sistema Operacional capaz de processar overlays automaticamente, implementando assim o conceito de memória virtual. Em 1970, essa ferramenta estava implementada em, praticamente, todas as arquiteturas computacionais. Atualmente existem sistemas sofisticados de memória virtual Paginação A paginação é uma implementação de memória virtual que usa os conceitos de: - espaço de endereços físicos: espaço real disponível em memória. - espaço de endereços virtuais: endereços virtuais do programa, que podem ser maior do que o espaço de memória física. Características do esquema de paginação: - um mapa de memória, ou tabela de páginas, relaciona os endereços virtuais com os endereços físicos; - os programas são escritos com base no pressuposto que o tamanho de memória principal é suficiente para todo o espaço de endereços virtuais - os programas podem trazer, ou armazenar, qualquer palavra do, ou no, espaço virtual ou desviar para qualquer instrução situada dentro do espaço virtual, sem se preocupar com o tamanho da memória física. - A paginação dá ao programador a ilusão de uma memória principal grande, com endereços contíguos e lineares, do mesmo tamanho da memória virtual. - A Figura abaixo ilustra o processo de mapeamento de parte da memória virtual para uma memória de 4096 palavras. Figura 2 - Critério para mapeamento no qual os endereços virtuais 4096 a 8191 correspondem aos endereços 0 a 4095 da memória principal Como o programador pode escrever seu programa como se não existisse a paginação, esse mecanismo é chamado de transparente. Somente os programadores de sistemas 2

3 operacionais (e os estudantes de Sistemas Operacionais) precisam saber como essa ilusão se sustenta Implementação da paginação - O espaço de endereçamento virtual é dividido em um conjunto de páginas, todas do mesmo tamanho (512 Bytes, 64 KB e às vezes 4MB, sempre potência de 2); - O espaço de endereçamento físico também é dividido em pedaços do mesmo tamanho do virtual. Essas partes são conhecidas como molduras de página. Figura 3 - Paginação (a) Os primeiros 64 K do espaço de endereços virtuais divididos em 16 páginas, de 4 K cada uma. (b) Memória principal de 32 K dividida em 8 molduras de página, de 4 k cada. A memória virtual da figura acima deve ser implementada a partir de uma tabela de páginas com tantas entradas quantas forem às páginas existentes no espaço de endereçamento virtual. O sistema funciona através do mapeamento do endereço virtual para o endereço físico. O mapeamento virtual-físico é realizado por um dispositivo conhecido com MMU (Memory Management Unit - Unidade de Gerenciamento de Memória). A figura abaixo mostra o funcionamento desse dispositivo. - Os 32 bits de um endereço virtual são divididos em 2 partes: 3

4 A primeira, com 20 bits, representando o número da página virtual A segunda, com 12 bits, representando o deslocamento dentro da página - O número da página virtual é usado para indexar a tabela de páginas. Figura 4 - Formação do endereço da memória principal a partir do endereço virtual Seguindo esta linha de raciocínio, abaixo segue a representação de um possível esquema para mapear as primeiras 16 páginas virtuais do espaço de endereçamento virtual, em uma memória principal com 8 molduras de página. 4

5 Figura 5 - Esquema possível para mapear as primeiras 16 páginas virtuais do espaço de endereçamento virtual, em uma memória principal com 8 molduras de página 2.3. Paginação por Demanda e Modelo do Conjunto de Trabalho (Workset) Quando é feita uma referência a um endereço situado em uma página que não está na memória principal diz-se que ocorreu uma falta de página. Neste caso é necessário que: - leia-se, do disco, a página faltante; - se coloque essa página na memória principal e; - se repita a referência ao endereço de interesse. Esse método de operação é chamado de paginação por demanda. Na paginação por demanda, as páginas são trazidas para a memória principal em função das requisições explicitas para cada uma delas e não antecipadamente. Quando temos vários processos sendo executados, num regime de compartilhamento de tempo, o mapeamento de páginas muda cada vez que há uma troca de contexto. Neste caso a paginação por demanda pode ter um impacto negativo. Uma solução é usar um modelo, chamado conjunto de trabalho, que carrega, antecipadamente, as páginas necessárias a execução ou continuação de um processo. 5

6 2.4. Política de Substituição de Páginas Quando ocorre um problema de falta de página, o Sistema Operacional deve substituir uma moldura, página da memória física, por uma página do disco. Problema: Qual página deve ser devolvida ao disco? O Sistema Operacional deve escolher, automaticamente, a página de mais baixa probabilidade de vir a pertencer ao conjunto de trabalho em breve. Algoritmos de substituição LRU (Least Recently Used), LRV (Lowest Relative Value) e FIFO (First In First Out) podem ser usados nesses casos ALGORITMO LRU (LEAST RECENTLY USED) Substitui a página menos usada recentemente, ou seja, a que está sem uso há mais tempo. Um contador de uso de página pode ser usado nessa implementação. Essa estratégia falha em situações como apresentada abaixo. A figura abaixo ilustra uma seqüência de um loop que usa um conjunto de trabalho maior do que a quantidade de páginas físicas. Figura 6 - Falha do algoritmo LRU ALGORITMO FIFO (FIRST IN FIRST OUT) O primeiro a entrar é o primeiro a sair. Remove a página mais antiga, ou seja, aquela que está a mais tempo na memória principal. Cada moldura tem um contador de número de falhas que a moldura sobrevive. Este algoritmo também pode falhar quando um conjunto de trabalho maior do que a quantidade de páginas físicas. 6

7 2.5. Tamanho da Página e Fragmentação Se o programa, com seus dados, não couberem exatamente em um número inteiro de páginas haverá desperdícios. Alguns bytes da última página alocada não serão usados. O problema de desperdício de bytes é conhecido como fragmentação interna. Para páginas de n bytes perde-se em média, n/2 bytes. Isto sugere que páginas pequenas perdem menos espaço. Porém, quando as páginas são muito pequenas temos um número maior de páginas e, em conseqüência, uma tabela de páginas maior que requer mais registradores tornando o processador, sendo assim mais caro. Também é maior o tempo gasto para mover páginas da memória virtual para a física. Portanto, tem que haver uma solução de compromisso para definição do tamanho das páginas Segmentação O sistema de memória virtual, discutido até aqui é unidimencional. Os endereços variam de 0 até um endereço máximo, um endereço após o outro. Às vezes são necessários dois ou mais espaços de endereçamento virtual separados. Exemplo: Um compilador gera muitas tabelas que precisam ser construídas na medida em que o processo de compilação evolui. Entre essas podemos citar: 1. Tabela de símbolos, com os nomes e os atributos das variáveis. 2. Tabela com o código fonte. 3. Tabela de constantes inteiras e de ponto flutuante usadas pelo programa. 4. Tabela analítica, com a análise sintática do programa. 5. A pilha usada para chamadas a procedimentos dentro do compilador. Em um sistema de memória unidimensional, essas 5 tabelas precisariam ser alocadas em pedaços contíguos conforme mostra a figura abaixo. 7

8 Figura 7 - Alocação de algumas tabelas num sistema de memória unidimensional Problema: Em um espaço de endereçamento unidimensional que suporte tabelas cujos tamanhos podem aumentar ou diminuir dinamicamente, existe o perigo de uma tabela invadir a área de outra. As tabelas podem se expandir ou contrair durante a execução do programa. Solução: Fazer com que o sistema de memória suporte vários espaços de endereçamento completamente independentes. Esses espaços são denominados segmentos. Cada segmento é composto por uma seqüência linear de endereços, de 0 até um valor máximo. O tamanho dos segmentos podem ser diferentes e variam durante a execução do programa. A abaixo exemplifica a operação de uma memória segmentada, usada para acomodar as tabelas do compilador descritas acima. Figura 8 - Uma memória segmentada permite que cada tabela cresça ou encolha independentemente das outras tabelas Alguns segmentos podem ser protegidos contra leitura ou escrita. Por exemplo, um segmento que contenha um procedimento pode ser especificado como segmento de código e, 8

9 portanto, só pode ser lido. Como o usuário de uma memória segmentada tem a ilusão que todos os segmentos estão em memória principal ao mesmo tempo, eles podem ser endereçados sem que tenhamos que nos preocupar com a administração do overlay da memória Implementação da Segmentação A segmentação pode ser implementada de duas maneiras: por swapping ou por paginação. Características da implementação por swapping: - é muito parecida com a paginação por demanda: os segmentos inteiros vão e vem do disco para a memória principal e vice-versa, na medida em que são necessários - a principal diferença é que as páginas têm tamanho fixo e os segmentos não. - A figura abaixo parte (a) mostra um exemplo de uma memória física contendo, inicialmente, cinco segmentos. As partes seguintes (b) a (d) mostram como a memória começa a ficar fragmentada ao substituirmos alguns segmentos por outros menores. - Esse fenômeno é chamado fragmentação externa (pois o espaço perdido fica fora do segmento, concentrado em buracos entre eles). Figura 9 - (a) a (d) Aparecimento da fragmentação externa na memória. (e) Remoção da fragmentação externa por meio da compactação do conteúdo da memória A parte (e) mostra como fica a memória após um processo chamado compactação dos segmentos. A compactação é realizada movendo-se todos os segmentos para mais próximo do endereço 0 (para baixo) toda vez que um buraco de memória aparecer. Tem a desvantagem de ser lenta. Outras opções são: 9

10 - usar o algoritmo best fit (melhor assentamento), que escolho o menor de todos os buracos no qual o segmento poderá ser abrigado. Este é mais rápido, mas gera muitos buracos pequenos. - usar o algoritmo first fit (primeiro assentamento), que busca o primeiro buraco suficientemente grande para acomodar o segmento. Este é mais rápido que os anteriores e tem uma performance global melhor que o best fit. As principais características de uma implementação por paginação é uma mistura de segmentação com paginação; há uma divisão de cada segmento em um conjunto de páginas e passa a trabalhar como no esquema de paginação por demanda; e exige-se que seja criada uma tabela de páginas, individual, para cada segmento Memória Virtual e Memória Cache Embora pareça que os assuntos memória virtual (paginação por demanda) e memória cache não tem qualquer relação entre si, conceitualmente eles são muito semelhantes. No caso de emprego da memória virtual: - Todo o programa é mantido no disco, dividido em páginas de tamanho fixo; - Um subconjunto dessas páginas é mantido na memória principal; - Se um programa usar as páginas de memória com muita frequência serão geradas poucas faltas de página, e o programa vai rodar rapidamente. fixo. No caso de emprego da memória cache: - Todo programa é mantido na memória principal, dividido em blocos da cache de tamanho - Um subconjunto desses blocos deve ser mantido na cache. - Se um programa usar os blocos que estiverem na cache com muita freqüência, serão geradas poucas falhas no acesso a cache e o programa vai rodar rápido. Conceitualmente, essas duas memórias são idênticas; a única diferença é que elas atuam em níveis diferentes de hierarquia. As principais diferenças entre elas são: - as falhas no acesso à cache são tratadas por hardware, enquanto as faltas de páginas são tratadas pelo Sistema Operacional - os blocos da cache são muito menores que as páginas (Exemplo: 64 bytes x 8 KB). 3. INSTRUÇÕES VIRTUAIS DE E/S O conjunto de instruções de nível ISA é completamente diferente do conjunto de instruções de microarquitetura. As operações que podem ser executadas e também os formatos das instruções são bem diferentes nos dois níveis. A existência ocasional de algumas instruções, que são as mesmas em ambos os níveis, é, em essência, acidental. 10

11 Em contraste, o conjunto de instruções de nível do Sistema Operacional contém grande parte das instruções de nível ISA com a adição de algumas instruções novas, porém importante, e a remoção de algumas poucas instruções potencialmente danosas. Entrada/saída é uma das áreas em que os dois níveis apresentam consideráveis diferenças. A razão para essas diferenças é simples: um usuário que pudesse executar as instruções de E/S reais de nível ISA poderia ler dados confidenciais armazenados em qualquer lugar do sistema, escrever em terminais de outros usuários e, em geral, se transformar em um grande transtorno porque seria uma ameaça a segurança do próprio sistema. Em segundo lugar, programadores normais, sensatos, não querem fazer E/S no nível ISA porque ela é tediosa e complexa Arquivos Um modo de organizar E/S virtual é usar uma abstração denominada arquivo. Se o dispositivo de E/S for um dispositivo de armazenamento o arquivo pode ser lido de volta mais tarde. Se for uma impressora isso não é possível. Para o Sistema Operacional, um arquivo é apenas uma seqüência de bytes. A E/S de arquivos é feita por chamada de sistema para abrir, ler, escrever e fechar. O processo de abertura deve permitir que o sistema operacional localize o arquivo em disco e traga informações da memória necessária para acessá-lo. Uma vez aberto, o arquivo pode então ser lido. A chamada de sistema read deve ter os seguintes parâmetros: 1) Uma indicação de qual arquivo aberto deve ser lido; 2) Um ponteiro para um buffer na memória no qual colocar os dados. 3) O número de bytes a ser lido. Figura 10 - Leitura de um arquivo 11

12 A chamada read coloca os dados no buffer. Após uma read, o ponteiro avança conforme o número de bytes lido. Reads consecutivas lêem blocos de dados consecutivos do arquivo Implementação Para entender como as instruções de E/S virtuais são implementadas é necessário examinar como os arquivos são organizados e armazenados. Um aspecto bastante comum é a alocação de armazenamento. A unidade de alocação pode ter um único setor de disco ou um bloco de setores consecutivos. Outra propriedade da implementação de um sistema de arquivos é se um arquivo é armazenado em unidades de alocação consecutivas ou não. Figura 11 - Alocação em disco A alocação consecutiva de blocos é comumente utilizada em CD-Roms. Nos discos magnéticos o arquivo não precisa ocupar setores consecutivos. É importante destacar que o Sistema Operacional vê o arquivo como uma coleção de unidades de alocação ordenadas e não necessariamente consecutivas. Sendo assim, é necessário que o Sistema Operacional disponha de algum método para localizar os dados. Se for alocado consecutivamente basta saber onde está o início do arquivo para calcular a posição do byte ou registro lógico. Caso contrário é necessário uma tabela denominada índice de arquivo que indica as unidades de alocação e seus endereços de disco. Método alternativo a esse é organizar o arquivo como uma lista encadeada, onde cada unidade possui o endereço de sua sucessora. Para alocar espaço no disco o Sistema Operacional deve monitorar quais blocos estão livres. Um método consiste em manter uma lista de todas as lacunas. Esta lista é denominada lista de livres. 12

13 Figura 12 - Lista e Mapa de Bits Método alternativo é manter um mapa de bits, com 1 bit por unidade de alocação. Cada bit representa uma unidade de alocação (bit=1 espaço ocupado e bit=0 desocupado). A desvantagem da lista de espaço vazio é não ter um tamanho definido (diminui e aumenta na medida em que os arquivos são criados e destruídos). O mapa, ou tabela, de bits tem sempre o mesmo tamanho, porém é mais custoso encontrar um bloco de tamanho determinado. Ambos os métodos exigem que a lista de alocação seja atualizada sempre que um arquivo for gravado ou apagado 4. INSTRUÇÕES VIRTUAIS PARA PROCESSAMENTO PARALELO Alguns algoritmos podem ser programados para dois ou mais processos cooperativos operando em paralelo. Para que isso seja possível são necessárias algumas instruções virtuais. Este conceito também é conhecido por multiprogramação. O objetivo principal é diminuir tempo de execução das instruções. A multiprogramação permite o suporte de várias máquinas virtuais de nível 3 rodando em paralelo. A implementação se dá de duas formas: a) Paralelismo real: o computador possui mais de um processador. O sistema operacional deve gerenciar a distribuição das tarefas entre os diversos processadores. b) Paralelismo simulado: o computador possui um único processador. O sistema operacional deve multiplexar no tempo a execução dos processos paralelos. 13

14 Figura 13 - a) Paralelismo real. b) Paralelismo simulado. Mesmo quando o paralelismo é simulado, podemos considerar que cada processo tem seu próprio processador virtual, ou seja, O processador real é compartilhado pelos processos. NOTA Os problemas de comunicação entre processos são os mesmos tanto no paralelismo verdadeiro quanto no simulado. Um programa roda como parte de um Processo, sendo que um processo = programa + espaço de endereçamento + estado (valor de PC, SP, PSW, etc.). Os Sistemas operacionais fornecem instruções de nível 3 (chamadas) para criar parar, examinar reiniciar e terminar a execução de processos dinamicamente. Por meio destas instruções, processos pais podem criar processos filhos, podendo ter controle total, parcial ou nenhum sobre os mesmos fazendo uso das chamadas de sistema. Essa chamada pode apenas fazer um clone do chamador ou permitir a criação de um processo que especifique seu estado inicial Condições de Disputa (ou Condições de Corrida) Em muitas aplicações, os processos paralelos precisam se comunicar e se sincronizar de modo a realizar seus trabalhos de maneira cooperativa. O problema conhecido como condição de corrida ocorre devido a falta de sincronismo entre os processos que compartilham um mesmo recurso, por exemplo: dados comuns em uma parte de memória, uma mesma impressora, etc. No caso desses compartilhamentos, um processo pode suspender ("fazer dormir") ou reiniciar ("acordar") outro processo rodando em paralelo. Caso esses comandos sejam fornecidos assincronamente, quando o outro processo está ocupado com alguma tarefa, os comandos podem ser perdidos. Neste caso um processo pode informações erradas do outro, ocasionando situações inesperadas que, em geral, levam ao travamento do computador. A Figura abaixo ilustra o problema de condição de corrida quando dois processos compartilham de dados num único buffer circular. 14

15 Figura 14 Buffer circular No exemplo acima dois processos, produtor e consumidor, rodam em paralelo. O produtor gera números primos e coloca-os no buffer enquanto que o consumidor lê os números primos e os imprime. Quando buffer está cheio o produtor deve ser suspenso (dormir) e esperar um sinal de reinicio (acordar) do consumidor. Quando o buffer está vazio, o consumidor deve ser suspenso (dormir) e aguardar um sinal do produtor para reinicio. Os processos se perdem quando, por exemplo, o consumidor está imprimindo um último número primo do buffer e o produtor está colocando um novo número no buffer. O produtor vê o buffer vazio e envia um sinal para acordar o consumidor (pois acha que ele estava dormindo), mas este sinal se perde (pois o consumidor está imprimindo o número). Assim, o produtor acha que o consumidor está acordado mas o consumidor vai dormir, eternamente, após o trabalho de impressão (pois não recebeu o sinal de acordar). Problema de sincronismo da informação Sincronização de Processos Usando Semáforos O problema da condição de corrida entre dois processos pode ser evitada com o uso de um bit de sinal para acordar um processo. O consumidor verifica esse bit, antes de dormir. Se bit = 1 ele deve continuar, caso contrário ele pode ir dormir. Porém, isto não funciona quando temos vários processos rodando em paralelo. Quando temos n processos se comunicando entre si é possível usar semáforos IMPLEMENTAÇÃO DO SEMÁFORO O sistema operacional fornece duas chamadas de sistema: a) Up - adiciona 1 unidade ao valor corrente do semáforo b) Down - subtrai 1 unidade ao valor corrente do semáforo - Sempre que um processo produz dados para os consumidores ele chama a função Up. - Toda vez que um processo consome dados dos produtores ele chama a função Down. 15

16 - Cada processo consulta o valor do semáforo antes de alimentar ou consumir um dado. O quadro abaixo resume as propriedades fundamentais das chamadas de sistema Up e Down. Tabela 1 Efeito da Operação do Semáforo INSTRUÇÃO SEMÁFORO = 0 SEMÁFORO >0 Up Down Semáforo = Semáforo +1 Se outro processo estiver parado, aguardando o término da execução de uma instrução Down nesse semáforo, ele pode agora completar a execução dessa instrução e continuar rodando. O processo para até que outro processo execute a instrução Up sobre esse semáforo Semáforo = Semáforo + 1 Semáforo = Semáforo - 1 Em essência, o semáforo é um contador que armazena os sinais para acordar processos para uso futuro, de maneira que esses sinais não se percam. NOTA Down. Só um processo de cada vez tem acesso ao semáforo para executar as chamadas Up e 4. EXEMPLO DE SISTEMAS OPERACIONAIS 4.1. Arquitetura Windows de 32 bits A arquitetura do Windows 32 bits é composta por diversos elementos, como mostra a figura abaixo. Cada elemento cuida de uma parte do ambiente Windows. Por exemplo, a camada API (Application Programming Interface) permite que os aplicativos se comuniquem com os elementos internos do sistema básico. Antes de analisar cada um dos elementos, é necessário conhecer alguma coisa do sistema de anéis de proteção fornecidos pelos processadores e mais avançados. Existem quatro anéis de segurança no esquema de proteção da Intel, mas a maioria dos sistemas operacionais utiliza apenas dois deles (às vezes três). O anel de segurança máxima, o mais interno, é o Ring 0. É onde está o sistema operacional. O anel mais afastado, onde reside o aplicativo, é o Ring 3. Em diversas situações, o acesso a alguns recursos do sistema é facilitado se estes puderem ser executados a partir do Ring 1 ou Ring 2. Mas o Windows não faz qualquer tipo de concessão: os drivers de dispositivos são executados apenas nos anéis 0 e 3, dependendo da sua finalidade. 16

17 Figura 15 - Sistemas de anéis de proteção O Windows utiliza estes anéis de proteção para assegurar que apenas os componentes do sistema possam acessar os componentes internos, impedindo desta forma que um aplicativo possa alterar parâmetros do sistema básico e provocar uma paralização do sistema. Por exemplo, o Windows se reserva o direito de alocar memória a partir do pool global. Deste modo, os recursos necessários para desempenhar esta tarefa residem no Ring 0. Por outro lado, os aplicativos precisam acessar a memória atribuída a eles. É por isto que o sistema atribui à memória local o valor 3. Imagine cada anel como uma barreira de segurança. Antes de ultrapassar esta barreira você precisa fornecer uma senha para obter a permissão. O Windows apenas fornece a senha para aplicativos nos quais ele confia, os que possuem "documentos de identificação" em ordem porque estão registrados no sistema. Sempre que um aplicativo tentar burlar a segurança, o processador dá um alerta emitindo uma exceção. Ao receber este alarme de segurança, o sistema "captura" e desativa o aplicativo infrator e avisa o usuário. Por isso o sistema Windows é chamado de Sistema Fechado, o usuário não tem como acessar diretamente o sistema básico O SISTEMA BÁSICO DO WINDOWS O componente Sistema Básico (Basic System) contém todos os serviços específicos do sistema operacional. É o núcleo do Windows, a parte que sempre precisa estar em operação para que o Windows funcione adequadamente. Está no Ring 0, sob proteção máxima. O Sistema Básico é composto por diversos subsistemas: o subsistema de Gerenciamento de Arquivos (File Management Subsystem), o subsistema de Rede (Network Subsystem), os Serviços do Sistema Operacional (Operating System Services), o Gerenciador da Máquina Virtual (Virtual Machine Manager) e os Controladores de Dispositivos (Device Drivers). Apesar de não poderem ser acessados diretamente pelo programador, cada um deles terá sua função explicada. 17

18 SUBSISTEMA DE GERENCIAMENTO DE ARQUIVOS É responsável pelo gerenciamento de arquivos em dispositivos de armazenamento de dados como disquetes, disco rígido, CD-ROM, etc. Muita coisa mudou nas sucessivas versões do Windows. Veja maiores detalhes em "Sistema de Gerenciamento de Arquivos" SUBSISTEMA DE REDE Torna possível executar a rede não hierárquica da Microsoft. Também fornece ganchos (hooks) de modo protegido para a maioria das redes locais de terceiros. É possível manter mais de uma rede ativa por vez. A natureza modular do subsistema de rede permite incluir recursos através da utilização de VxDs SERVIÇOS DO SISTEMA OPERACIONAL É o componente do sistema que lida com recursos como o Plug and Play. Atende diversas solicitações, tanto do próprio sistema operacional quanto do usuário, por exemplo, fornecendo a hora atual GERENCIADOR DA MÁQUINA VIRTUAL É a alma do sistema Windows, onde todas as coisas são ligadas. O gerenciador da máquina virtual cuida do agendamento de tarefas e da inicialização e interrupção de cada aplicativo. É também o componente que gerencia a memória virtual e, como trata de todas as alocações de memória, atua também como um servidor DPMI (DOS Protected Mode Interface). Por fim, o gerenciador da máquina virtual é responsável pela comunicação entre tarefas. Isto significa que todas as solicitações DDE e OLE são filtradas através desta seção do sistema operacional CONTROLADORES DE DISPOSITIVOS O Windows simplesmente ignora todos os dispositivos que não tiverem um driver correspondente. O driver, ou controlador, nada mais é do que um código especial que atua como intérprete. Ele transforma as solicitações do sistema operacional para um formato que o dispositivo possa compreender. Por exemplo, a impressora só pode imprimir o texto solicitado se "entender" o que o sistema quer. Para isto são necessários drivers da impressora associados ao sistema. Os Virtual Device Drivers, ou VxD como são conhecidos, são controladores especiais que permitem ao Windows se comunicar com os dispositivos do sistema sem precisar alternar para o modo real A CAMADA API A camada API do Windows pode ser considerada como o cão de guarda do Ring 0. Só através dela é que os aplicativos podem se comunicar com o Sistema Básico. Existem três componentes principais nesta camada: são os arquivos KERNEL32. DLL, USER32.DLL e GDI32.DLL. Arquivos DLL são executáveis especiais que contêm as funções necessárias para 18

19 que um aplicativo possa ser executado no ambiente Windows. Já existiam nas versões de 16 bits do Windows sob os nomes de KRNL386.EXE, USER.EXE e GDI.EXE KERNEL32 Fornece suporte para as funções de baixo nível que um aplicativo necessita para ser executado. Por exemplo, toda vez que o aplicativo precisar de memória, ele irá obtê-la no Kernel do Windows. Da mesma maneira, operações em disco, com arquivos, o relógio do sistema, são atribuições do Kernel. Este componente não lida com a interface ou com os dispositivos - ele apenas interage com o Windows propriamente dito USER32 O Windows, como o próprio nome indica, é um sistema baseado em janelas. Bem por isso ele precisa de um gerente para administrar todas as janelas criadas por aplicativos. Esse gerente é o User, que trata principalmente da interface com o usuário GDI32 GDI vem de Graphical Device Interface - interface do ambiente gráfico. Este componente cuida de vídeo, gerenciamento de cores, fontes e outros aspectos ditos artísticos, responsáveis pelo grande apelo visual deste sistema operacional A MÁQUINA VIRTUAL DO SISTEMA (System Virtual Machine ou VM) A System Virtual Machine possui dois elementos principais: aplicativos win32 e a shell. Os aplicativos win32 são programas que podem rodar simultaneamente (o Win32 é multitarefa) fazendo uso dos serviços e recursos que o sistema operacional oferece. Uma shell (a tradução é casca ou concha) também é um aplicativo, mas de um tipo especial que o sistema oferece. Com uma shell é possível agrupar, iniciar e de alguma forma controlar outros aplicativos. O Windows Explorer é uma shell para o gerenciamento de arquivos em disco - é um utilitário, como tantos outros, que acompanha o Windows. Existe um tratamento especial para as shells pela API, obtido através da SHELL32.DLL OUTROS ASPECTOS IMPORTANTES O Windows é um sistema operacional multitarefa e orientado a eventos. Quando se pressiona uma tecla, quando se toca no mouse ou se altera algum parâmetro, o Windows reconhece isto como um evento, por exemplo. O sistema executa uma tarefa para cada evento, chamando o aplicativo que pode tratar do evento ou tratando-o por conta própria. Uma das consequências da natureza multitarefa do Windows é que os eventos podem ocorrer em diversos aplicativos diferentes, por isto é preciso tratar os eventos de forma coordenada para que cada aplicativo receba as informações que lhe competem e a integridade, tanto do sistema como dos aplicativos, seja preservada. 19

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerenciamento de Memória Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille, Paula Prata e nas transparências

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.

Leia mais

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos

Leia mais

Arquitetura de Computadores. Sistemas Operacionais IV

Arquitetura de Computadores. Sistemas Operacionais IV Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as

Leia mais

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis

Leia mais

Memória Virtual. Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto

Memória Virtual. Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Memória Virtual Prof Dr José Luís Zem Prof Dr Renato Kraide Soffner Prof Ms Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Espaço de Endereçamento Virtual

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Sistemas Operacionais Gerência de Dispositivos

Sistemas Operacionais Gerência de Dispositivos Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerência de Dispositivos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução A gerência

Leia mais

Infraestrutura de Hardware. Memória Virtual

Infraestrutura de Hardware. Memória Virtual Infraestrutura de Hardware Memória Virtual Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo HW? Qual é a interface

Leia mais

Gerenciamento de memória

Gerenciamento de memória Na memória principal ficam todos os programas e os dados que serão executados pelo processador. Possui menor capacidade e custo maior. S.O buscam minimizar a ocupação da memória e otimizar sua utilização.

Leia mais

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL 6.1 Introdução Nível que automatiza as funções do operador do sistema. Nível 3 Nível de Sistema Operacional Sistema Operacional Nível 2 Nível de Máquina Convencional

Leia mais

AULA 13 - Gerência de Memória

AULA 13 - Gerência de Memória AULA 13 - Gerência de Memória omo sabemos, os computadores utilizam uma hierarquia de memória em sua organização, combinando memórias voláteis e não-voláteis, tais como: memória cache, memória principal

Leia mais

6 - Gerência de Dispositivos

6 - Gerência de Dispositivos 1 6 - Gerência de Dispositivos 6.1 Introdução A gerência de dispositivos de entrada/saída é uma das principais e mais complexas funções do sistema operacional. Sua implementação é estruturada através de

Leia mais

AULA 5 Sistemas Operacionais

AULA 5 Sistemas Operacionais AULA 5 Sistemas Operacionais Disciplina: Introdução à Informática Professora: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Sistemas Operacionais Conteúdo: Partições Formatação Fragmentação Gerenciamento

Leia mais

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano Sistemas Operacionais Marcos Laureano 1/25 Roteiro Estrutura de um sistema operacional Interrupções Proteção do núcleo Níveis de privilégio Chamadas de sistema 2/25 Mono-processadores atuais seguem um

Leia mais

Processos e Threads (partes I e II)

Processos e Threads (partes I e II) Processos e Threads (partes I e II) 1) O que é um processo? É qualquer aplicação executada no processador. Exe: Bloco de notas, ler um dado de um disco, mostrar um texto na tela. Um processo é um programa

Leia mais

Sistema Operacional. Prof. Leonardo Barreto Campos 1

Sistema Operacional. Prof. Leonardo Barreto Campos 1 Sistema Operacional Prof. Leonardo Barreto Campos 1 Sumário Introdução; Tipos de Sistemas Operacionais; Escalonamento; Gerenciamento de Memória; Bibliografia. Prof. Leonardo Barreto Campos 2/25 Introdução

Leia mais

Prof.: Roberto Franciscatto. Capítulo 1.1 Introdução

Prof.: Roberto Franciscatto. Capítulo 1.1 Introdução Sistemas Operacionais Prof.: Roberto Franciscatto Capítulo 1.1 Introdução Tipos de Sistemas Operacionais Sistemas Monoprogramáveis / Monotarefa Voltados tipicamente para a execução de um único programa.

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção Sistemas de Arquivos Funções de um SO Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção 2 Sistemas Operacionais Necessidade de Armazenamento Grandes quantidades

Leia mais

Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos

Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos Pilhas de Dispositivos Drivers no Windows Vista podem fazer todo trabalho sozinho; Uma requisição pode passar por uma seqüência

Leia mais

Memória Cache. Prof. Leonardo Barreto Campos 1

Memória Cache. Prof. Leonardo Barreto Campos 1 Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Gerenciamento de memória. Carlos Eduardo de Carvalho Dantas

Gerenciamento de memória. Carlos Eduardo de Carvalho Dantas Carlos Eduardo de Carvalho Dantas Motivos: 1 Manter a CPU ocupada o máximo de tempo para não existir gargalos na busca de dados na memória; 2 Gerenciar os espaços de endereçamento para que processos executem

Leia mais

7 Processos. 7.1 Introdução

7 Processos. 7.1 Introdução 1 7 Processos 7.1 Introdução O conceito de processo é a base para a implementação de um sistema multiprogramável. O processador é projetado apenas para executar instruções, não se importando com qual programa

Leia mais

BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento

BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento 1 Gerência de espaço em disco Cópia de segurança do sistema de arquivo Roteiro Confiabilidade Desempenho

Leia mais

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos Sistema de Arquivos Prof. Edwar Saliba Júnior Março de 2007 1 Objetivos Facilitar o acesso dos usuários ao conteúdo dos arquivos; Prover uma forma uniforme de manipulação de arquivos, independente dos

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Sistema de Arquivos - II Prof. Galvez Implementação de Arquivos Arquivos são implementados através da criação, para cada arquivo no sistema, de uma estrutura de dados

Leia mais

Memória cache. Prof. Francisco Adelton

Memória cache. Prof. Francisco Adelton Memória cache Prof. Francisco Adelton Memória Cache Seu uso visa obter uma velocidade de acesso à memória próxima da velocidade das memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

Introdução aos Computadores

Introdução aos Computadores Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas

Leia mais

Sistemas Operacionais Arquivos. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Sistemas Operacionais Arquivos. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Sistemas Operacionais Arquivos Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Cin/UFPE Implementação do Sistema de Arquivos Sistemas de arquivos são

Leia mais

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Alocação Contígua

Leia mais

Sistemas de Informação. Sistemas Operacionais 4º Período

Sistemas de Informação. Sistemas Operacionais 4º Período Sistemas de Informação Sistemas Operacionais 4º Período SISTEMA DE ARQUIVOS SUMÁRIO 7. SISTEMA DE ARQUIVOS: 7.1 Introdução; 7.2 s; 7.3 Diretórios; 7.4 Gerência de Espaço Livre em Disco; 7.5 Gerência de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Gerência de Arquivos É um dos serviços mais visíveis do SO. Arquivos são normalmente

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Introdução

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10 Índice 1. A Organização do Computador - Continuação...3 1.1. Memória Primária - II... 3 1.1.1. Memória cache... 3 1.2. Memória Secundária... 3 1.2.1. Hierarquias de

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores MemóriaVirtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Gerência de memória convencional Divide um programa em unidades menores Partes

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 4 SUPORTE AO SISTEMA OPERACIONAL Prof. Luiz Gustavo A. Martins Sistema Operacional (S.O.) Programa responsável por: Gerenciar os recursos do computador. Controlar a execução

Leia mais

Programação Concorrente Processos e Threads

Programação Concorrente Processos e Threads Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por

Leia mais

Sistema Operacional Correção - Exercício de Revisão

Sistema Operacional Correção - Exercício de Revisão Prof. Kleber Rovai 1º TSI 22/03/2012 Sistema Operacional Correção - Exercício de Revisão 1. Como seria utilizar um computador sem um sistema operacional? Quais são suas duas principais funções? Não funcionaria.

Leia mais

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA 8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente

Leia mais

Capítulo 4 Gerenciamento de Memória

Capítulo 4 Gerenciamento de Memória Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição

Leia mais

Fundamentos de Sistemas Computacionais Introdução

Fundamentos de Sistemas Computacionais Introdução Fundamentos de Sistemas Computacionais Introdução Prof. Eduardo Alchieri Sistema Computacional Hardware Software Usuários Um ou mais processadores, memória, discos, impressoras, teclado, mouse, monitor,

Leia mais

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador

Leia mais

Memórias Prof. Galvez Gonçalves

Memórias Prof. Galvez Gonçalves Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores

Leia mais

Estruturas do Sistema de Computação

Estruturas do Sistema de Computação Estruturas do Sistema de Computação Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Estruturas do Sistema de

Leia mais

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress. Sistemas Operacionais Aula 3 Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.com Nunca cone em um computador que você não pode jogar pela janela.

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Arquitetura Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Sistemas monolíticos Sistemas em camadas Sistemas micro-núcleo Modelo Cliente-Servidor Máquinas

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

SISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger

SISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger SISTEMA DE ARQUIVOS Instrutor: Mawro Klinger Estrutura dos Discos As informações digitais, quer sejam programas ou dados do usuário, são gravadas em unidades de armazenamento. O HD é uma unidade de armazenamento

Leia mais

Gerência de Memória RAM em Computadores com Mais de 4GB O sistema Windows x86 (32bits) não tem capacidade de reconhecer, fisicamente, mais que 3,X GB de RAM, a não ser que seja ativado, manualmente, o

Leia mais

Introdução a Informática. Prof.: Roberto Franciscatto

Introdução a Informática. Prof.: Roberto Franciscatto Introdução a Informática Prof.: Roberto Franciscatto 2.1 CONCEITO DE BIT O computador só pode identificar a informação através de sua elementar e restrita capacidade de distinguir entre dois estados: 0

Leia mais

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco AULA 04 - Estruturas Sistemas Computacionais Nosso objetivo é apenas revisar conceitos relacionados a estrutura geral um sistema computacional para pois explicarmos os talhes operação do sistema e como

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais

Como instalar uma impressora?

Como instalar uma impressora? Como instalar uma impressora? Antes de utilizar uma impressora para imprimir seus documentos, arquivos, fotos, etc. é necessário instalá-la e configurá-la no computador. Na instalação o computador se prepara

Leia mais

3. Arquitetura Básica do Computador

3. Arquitetura Básica do Computador 3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4

Leia mais

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger O controle da entrada e saída (E/S ou I/O, input/output) de dados dos dispositivos é uma das funções principais de um sistema operacional.

Leia mais

ESTUDO DE CASO WINDOWS VISTA

ESTUDO DE CASO WINDOWS VISTA ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado

Leia mais

Diminui o gargalo existente entre processador e memória principal; 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP;

Diminui o gargalo existente entre processador e memória principal; 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP; Diminui o gargalo existente entre processador e memória principal; Diferença de velocidade 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP; Tecnologia semelhante à da CPU e,

Leia mais

Everson Scherrer Borges João Paulo de Brito Gonçalves

Everson Scherrer Borges João Paulo de Brito Gonçalves Everson Scherrer Borges João Paulo de Brito Gonçalves 1 Tipos de Sistemas Operacionais Os tipos de sistemas operacionais e sua evolução estão relacionados diretamente com a evolução do hardware e das

Leia mais

SISTEMAS OPERACIONAIS 2007

SISTEMAS OPERACIONAIS 2007 SISTEMAS OPERACIONAIS 2007 VISÃO GERAL Sumário Conceito Máquina de Níveis Conceituação de SO Componentes do SO Visões do SO Conceito de Sistemas O que se espera de um sistema de computação? Execução de

Leia mais

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz SISTEMAS OPERACIONAIS LIVRES Agendar uma tarefa Você deve estar com logon de administrador para executar essas etapas. Se não tiver efetuado logon como administrador, você só poderá alterar as configurações

Leia mais

Visão Geral de Sistemas Operacionais

Visão Geral de Sistemas Operacionais Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

Análises Geração RI (representação intermediária) Código Intermediário

Análises Geração RI (representação intermediária) Código Intermediário Front-end Análises Geração RI (representação intermediária) Código Intermediário Back-End Geração de código de máquina Sistema Operacional? Conjunto de Instruções do processador? Ambiente de Execução O

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola SO - Conceitos Básicos Introdução ao Computador 2010/01 Renan Manola Definição de SO É uma camada de software que opera entre o hardware e os programas aplicativos voltados ao usuário final. É uma estrutura

Leia mais

Ministério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul

Ministério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul QUESTÃO: 29 Além da alternativa a estar correta a alternativa e também pode ser compreendida como correta. Segundo a definição de diversos autores, a gerência de falhas, detecta, isola, notifica e corrige

Leia mais

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas de Computação O sistema operacional precisa garantir a operação correta do sistema de computação. Operação

Leia mais

BARRAMENTO DO SISTEMA

BARRAMENTO DO SISTEMA BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade

Leia mais

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. Unidade aritmética e lógica - Executa operações aritméticas (cálculos);

Leia mais

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 11

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 11 Sumário: O disco rígido e a disquete estrutura física. Como os dados são armazenados fisicamente. Como o MS-DOS organiza o disco. O registo de boot. Aula Teórica 11 Leitura Recomendada: Capítulos 28 e

Leia mais

Sistemas Operacionais valnaide@dca.ufrn.br kliger@dca.ufrn.br affonso@dca.ufrn.br

Sistemas Operacionais valnaide@dca.ufrn.br kliger@dca.ufrn.br affonso@dca.ufrn.br Sistemas Operacionais valnaide@dca.ufrn.br kliger@dca.ufrn.br affonso@dca.ufrn.br INTRODUÇÃO O que é um sistema operacional? História dos sistemas operacionais Conceitos dos Sistemas Operacionais Estrutura

Leia mais

Exercícios de revisão V2. FAT: 300 GB / 2KB = 150MB X 8 bytes (64 bits / 8) = 1.2GB

Exercícios de revisão V2. FAT: 300 GB / 2KB = 150MB X 8 bytes (64 bits / 8) = 1.2GB Exercícios de revisão V2 1 Uma empresa que possui partições FAT em seus servidores, estava impressionada com um processo em específico na memória, onde o mesmo ocupava um espaço grande. Este servidor dedicado

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

Sistemas Operacionais Processos e Threads

Sistemas Operacionais Processos e Threads Sistemas Operacionais Processos e Threads Prof. Marcos Monteiro, MBA http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br 1 Estrutura de um Sistema Operacional 2 GERÊNCIA DE PROCESSOS Um processo

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Tópico 4 Estrutura do Sistema Operacional Prof. Rafael Gross prof.rafaelgross@fatec.sp.gov.br FUNÇÕES DO NUCLEO As principais funções do núcleo encontradas na maioria dos sistemas

Leia mais

Capítulo 4 Gerenciamento de Memória

Capítulo 4 Gerenciamento de Memória Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição

Leia mais

TRABALHO COM GRANDES MONTAGENS

TRABALHO COM GRANDES MONTAGENS Texto Técnico 005/2013 TRABALHO COM GRANDES MONTAGENS Parte 05 0 Vamos finalizar o tema Trabalho com Grandes Montagens apresentando os melhores recursos e configurações de hardware para otimizar a abertura

Leia mais

Armazenamento Secundário. SCE-183 Algoritmos e Estruturas de Dados II

Armazenamento Secundário. SCE-183 Algoritmos e Estruturas de Dados II Armazenamento Secundário SCE-183 Algoritmos e Estruturas de Dados II 1 Armazenamento secundário Primeiro tipo de armazenamento secundário: papel! Cartões perfurados HDs, CD-ROM, floppy disks, memórias

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais