Buscar

aula2 multiprogramacao

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Sistemas Operacionais – Aula 1
*
Sistemas Operacionais
Multiprogramação
Aula 2
Profª. Me. Eduarda Rodrigues Monteiro
Faculdade de Desenvolvimento do Rio Grande do Sul 
Curso de Análise e Desenvolvimentos de Sistemas 
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Sumário
Revisão da aula passada
Histórico dos Sistemas Operacionais
Multiprogramação
Interrupção
Processo
Bibliografia
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Revisão da aula passada...
Histórico dos Sistemas Operacionais
1ª Geração: 
Hardware: válvulas 
Equipe: programador – técnico – projetista
Um programa / um usuário por vez
2ª Geração:
Transistores 
Separação de funções dentro da equipe - sistemas em Lotes
Jobs: programa entregue para o técnico executar
Fluxo de execução do programa (carregar, ler, codificar cartão, executar, imprimir....)
Monitor Residente
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Revisão da aula passada...
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Histórico dos Sistemas Operacionais
3ª Geração: 
Circuitos integrados – multiprogramação
Multiprogramação: múltiplos programas executados ao mesmo tempo. O que permite a multiprogramação?
Discos – armazenamento
Interrupções 
4ª Geração:
Circuitos integrados em grande escala (vários transistores...)
Miniaturização dos componentes – queda nos preços
Surgimento de computadores pessoais
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação
Torna os recursos do sistema mais eficientes
Permitir a execução simultânea* de vários programas:
Diversos programas são mantidos na memória
Avanço da tecnologia permitiu a multiprogramação:
Interrupções: sinalização de eventos para o sistema
Discos magnéticos: acesso aleatório a diferentes jobs (programas) 
O sistema operacional é um programa? 
Conceitos necessários à multiprogramação:
Processos 
Interrupção
Threads
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Principal conceito de Sistemas Operacionais
Conceito surgiu junto com a multiprogramação
Junto com a necessidade de executar mais de um programa simultaneamente 
Um programa em execução envolve:
2 segmentos (separados, por que ?) gerados pelo compilador
Instruções
Dados
... E área de memória onde será alocado
 Como um processo é representado dentro do “programa” Sistema Operacional? 
Através de um registro, denominado Registro Descritor/Bloco Descritor, entre outros....
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Registro Descritor de Processo:
Alguns componentes:
Prioridade do processo no sistema
Identificador do processo (PID) 
Localização
Memória principal ocupada
Estado do processo: apto, executando, bloqueado
Dito isso, o que é um processo? 
“Um processo é um programa em execução, o qual é constituído por uma sequência de instruções, um conjunto de dados e um registro descritor de processo.” – Toscani, et. al.
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Abstração que representa um programa em execução
Forma como o SO “enxerga” um programa e possibilita sua execução
Um programa é um conjunto de instruções
Possui uma linha de execução das instruções (Program Counter – PC) 
Instruções são executadas sequencialmente
Podem se comunicar: memória compartilhada, troca de mensagens
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Mas qual a diferença entre um programa e um processo? 
Tipos de processos:
Processos de usuário
Processos do próprio sistema operacional
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Chamada de Sistema
Chamada de sistema: 
Os programas solicitam serviços ao sistema operacional através das chamadas de sistemas 
As chamadas de sistemas transferem a execução do processo para o sistema operacional 
Chamadas de sistemas variam entre os sistemas operacionais
A maioria dos sistemas operacionais tem chamadas de sistema que desempenham as mesmas funções, diferindo apenas em detalhes
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Interrupção
Viabilizou a multiprogramação
Conceito importante para o entendimento do funcionamento e organização de um SO
Forma de sinalização de eventos ao sistema
“Forças” que movimentam e direcionam o SO
Analogia: interrupções x telefone
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Interrupção
O que acontece com o sistema quando ocorre uma interrupção?
O sistema desvia sua execução para uma rotina específica que é responsável por atender a interrupção
Essa rotina específica é chamada de: Tratador de interrupção
Quando tratador termina, a execução volta para rotina interrompida sem que perceba que foi interrompida
Podem ser geradas por:
Hardware ou Software
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Interrupção
Interrupção de Hardware
É originada de algum dispositivo físico (disco, impressora, teclado, etc)
O que acontece quando ocorre uma interrupção em nível de hardware? 
*
Sistemas Operacionais – Profª. Eduarda Monteiro
A CPU suspende a atividade que está executando (guardando as informações necessárias para que depois possa retomar a sua execução)
2. e passa a executar uma rotina específica (tratador de interrupções) que trata da interrupção que ocorreu.
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Interrupção
Interrupção de Software
É originada por uma instrução especial (contidas em programas de usuário)
Pode ser denominada de Chamada de Sistema
O que acontece quando ocorre uma interrupção em nível de software?
Mesmos passos da interrupção por hardware 
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Execução do programa corrente é suspenso
Informações salvas
Execução de rotina específica para tratamento da interrupção
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Interrupção
Qual a principal diferença de uma chamada de sistema e de uma interrupção por hardware?
Chamada de sistema: os eventos que irão ocorrer podem ser previstos. Dado o programa do usuário e seus dados se pode saber quando as interrupções irão ocorrer. 
Interrupção de Hardware: eventos totalmente imprevisíveis. Interrupções originadas por periféricos não tem como saber previamente quando irão ocorrer. 
Vídeo: https://www.youtube.com/watch?v=nt0P8ZAYuUo
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Criação
Execução
Término
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Criação
Ocorre no momento da execução
Sinalização: chamada de
sistema 
Identificação: PID
Exemplos: 
Podem ser associados a uma sessão de trabalho
Fornece usuário e senha
Sistema operacional valida os dados de autenticação
Cria um processo para atender o usuário que logou
Quando usuário “desloga”, processo associado a sessão de trabalho é destruído
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Execução
Processos apresentam dois ciclos básicos de operação:
Ciclo de processador 
Tempo que ocupa a CPU
Ciclo de E/S
Tempo em espera pela conclusão de um evento (ex: E/S)
Qual é o primeiro ciclo?
É sempre o do processador
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Execução
Quando trocam de ciclo:
CPU  E/S:
Solicitação de E/S
Ou seja: 
Realiza uma chamada de sistema para solicitar E/S. Através de uma interrupção de software
E/S  CPU: 
Na resposta da E/S
Dispositivo sinaliza evento (conclusão da chamada de sistema)
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Execução
Classificação dos processos
O processo que representaria a cópia de um arquivo é um processo de que tipo?
CPU Bound
E se todos os processos fossem CPU bound? O que aconteceria?
I/O Bound
E se todos os processos fossem I/O bound? O que aconteceria?
*
Sistemas Operacionais – Profª. Eduarda Monteiro
O gargalo do sistema seria o processador.
O processador ficaria inoperante enquanto todos os processos tentam acessar os periféricos.
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Execução
Classificação dos processos:
Então qual a situação ideal? 
Misturar os dois tipos de processos CPU bound com IO bound para melhor aproveitamento dos recursos físicos
Enquanto um processo está realizando operações referente a E/S o outro está utilizando a CPU
Benefícios a nível de escalonamento
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Ciclo de vida de um processo
Término
Os processo podem terminar suas execuções por diferentes razões:
Final do algoritmo (normal) 
Por erros: 
proteção, E/S, tentativa de execução de instruções inválidas, falta de memória, exceder tempo de limite
Intervenção de outros processos (kill)
Log off de usuários
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Relacionamento entre processos
Em geral os processos são independentes:
Não apresentam relacionamentos com outros processos.
Mas ... grupos de processo podem existir
Relacionamento
Hierarquia
Relação de filiação
Podem compartilhar recursos
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Relacionamento entre processos
Hierarquia de Processos:
Processo criador: pai
Processo criado: filho
*
Sistemas Operacionais – Profª. Eduarda Monteiro
O que fazer se um processo for destruído? Existem 3 opções.
Quem cria o processo pai?
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Estados de um processo
Após um processo ser criado
Necessidade: entrar em “Ciclo Processador”
Precisa utilizar a CPU
Cenário Tradicional: 
Como alocar os vários processos em única Unidade Central de Processamento (CPU)?
Quais as possíveis hipóteses? 
Vários processos estão sendo criados ao mesmo tempo
Uma vez alocado, o processador não estará disponível aos demais processos
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Estados de um processo
O que fazer?
Criar uma fila de processos “aptos”
Consiste em: 
Processos prontos para serem executados 
e estão esperando pela disponibilidade do processador
Estrutura de Dados – Fila: 
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Convencional
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Estados de um processo
Estado Apto
Processo que está pronto para ser executado
Estado Executando:
Processo que está sendo executado
Estado Bloqueado:
Processo que realiza uma chamada de sistema durante a sua execução e fica bloqueado até que a chamada termine. 
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Modelos de Operação de Processos
Modelo simplificado a dois estados
Elementos do Modelo
Fila de Aptos
Local onde os processos ficam esperando a vez de utilizar a CPU
Estado Aptos
Em Execução na CPU
 Um processo ocupa a CPU
Estado Executando
Escalonador (dispatcher)
Responsável pelas transições de estado
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Modelos de Operação de Processos
Modelo simplificado a dois estados
CPU
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo simplificado a dois estados
Elementos do Modelo
Escalonador:
Responsável pelas transições de estado 
Aloca a CPU para um processo da fila de aptos
Responsável pela justiça de uso da CPU
Previne a monopolização da CPU por um processo
O que acontece quando um processo está utilizando o processador há muito tempo?
Ele volta para o fim da fila de processos aptos
Um novo processo ganha o processador
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo simplificado a dois estados
Problemas
Não diferencia as causas do processo não estar executando
Processo esperando pela CPU: apto a executar na fila de Aptos
Processo esperando E/S: processo está esperando o retorno de um periférico (bloqueado)
Escalonador não pode selecionar um processo bloqueado
Modelo de dois processos não é suficiente
Criação de novos estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados
Executando
Idêntico ao de 2 estados
Apto	
Idêntico ao de 2 estados
Bloqueado
Esperando por E/S
Novo 
Processos recém criados
Esperando para entrar na lista de aptos
Terminado
Esperando pela destruição final
Hierarquia... 
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Criação
Apto
Executando
Destruição
Bloqueado
Interrupção:
Chamada de Sistema
Seleção
Término
Sinaliza ao SO que o processo necessita realizar uma operação E/S 
Sinaliza
ao 
sistema o 
término 
de uma 
operação E/S
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Criação
Apto
Executando
Destruição
Bloqueado
Interrupção:
Chamada de Sistema
Seleção
Término
Sinaliza ao SO que o processo necessita realizar uma operação E/S 
Sinaliza ao 
sistema o 
término 
de uma 
operação E/S
E se um erro ocorrer durante a execução da operação de E/S?
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Criação
Apto
Executando
Destruição
Bloqueado
Interrupção:
Chamada de Sistema
Seleção
Término
Sinaliza ao 
sistema o 
término 
de uma 
operação E/S
Erro
1. E se chamada de sistema for rápida? 
2. Processo não fica bloqueado?
3. Processo volta para fila de aptos? 
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Criação
Apto
Executando
Destruição
Bloqueado
Interrupção
Chamada de Sistema
Seleção
Término
Erro
Retorno Imediato
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Modelo de 5 estados: 
Problema: Desperdício de Memória
Processos bloqueados (esperam por E/S)
Não podem ser executados
E ocupam memória
Processos inativos
Não executam nada útil
Aguardam por alguma atividade 
E TAMBÉM ocupam memória
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Possíveis soluções
Liberar memória
Fazendo uma cópia destes processos ‘suspensos’ para o disco 
Este procedimento é chamado de Swap
Necessidade de novos estados
Processos aptos, na memória
Processos aptos, no disco
Processos bloqueados, na memória
Processos bloqueados, no disco
Os processos que estão no disco são chamados de processos suspensos
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Novo diagrama de estados
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Novo
Criar
Suspender
Executar
Parar
Apto,
suspenso
Apto
Bloqueado
Bloqueado,
suspenso
Evento
Ativar
Suspender
Executando
Terminado
Erro
Criar
Evento
Destruir
Ativar
Suspender
Retorno 
Imediato
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Modelos de Operação de Processos
Outras causas para suspender um processo
Swapping
SO precisa liberar memória para carregar um novo processo
Solicitação de usuário 
Procedimento usado por depuradores
Temporização
Interrupção da execução por um determinado tempo (o processo está temporizando uma ação) 
Processo suspende outro processo 
Um processo suspende o outro, para sincronização entre os processos
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Proteção entre processos
Na multiprogramação, diversos processos compartilham o computador
Questões
 Um processo pode acessar dados de outro processo? Em que condições? 
Um processo de usuário pode formatar o disco? 
Um processo pode utilizar o processador infinitamente?
Necessidade de proteção entre os processos
Garantia de utilização correta
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Quem implementa esta proteção? 
O Sistema Operacional
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Proteção entre processos
A implementação da multiprogramação explora características do hardware dos processadores
Se fosse explorar somente Software o sistema seria facilmente burlado
Mecanismos básicos
Modos de operação
Proteção de periféricos, memória e processador
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Proteção entre processos
Modos de Operação
Modo usuário e modo supervisor (privilegiado)
Modo supervisor: 
Não existem restrições
Qualquer instrução pode ser executada
Modo de execução do SO
Modo usuário:
Algumas instruções não podem ser executadas
Modo de execução dos processos de usuários
Estas instruções são chamadas Instruções Privilegiadas (somente são executadas em modo supervisor)
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Proteção entre processos
Modos de Operação
O que acontece se um processo de usuário tentar executar uma instrução privilegiada em modo usuário? 
O hardware automaticamente gera uma interrupção sinalizando a ocorrência ao SO, o qual pode até abortar o processo de usuário
As interrupções além de sinalizarem o SO também chaveiam automaticamente o processador para o modo supervisor
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Proteção entre processos
Proteção aos periféricos
Instruções que dão acesso a E/S são privilegiadas
Os usuários usam chamadas de sistema para acessar periféricos
O que acontece se um de usuário tentar acessar diretamente um periférico?
Ocorre uma interrupção: sinalizando acesso ilegal
Chaveamento para modo supervisor
Processo é abortado
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Proteção entre processos
Proteção de Memória
Proteção aos códigos, dados e memória usada por um processo 
Evita que um processo escreva na memória destinada a outro processo
Evita que um usuário consiga alterar áreas de código ou variáveis do sistema opercional
Só permite o acesso à memória que está delimitada no descritor/registrador de liminte
Registrador limite inferior E superior	
A cada acesso à memória, o hardware de proteção compara o endereço gerado com os registradores de limite
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Proteção entre processos
Proteção do Processador
Mecanismo Time-Sharing
Gera interrupções de tempos em tempos
As interrupções ativam o SO que então verifica se o processo está executando há muito tempo 
caso estiver, o SO pode abortar o processo ou voltar para o fim da fila de Aptos
Instruções usadas para controle de tempo são privilegiadas
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Multiprogramação: Processo
Tabelas de Dispersão – Aula 15
*
Sistemas Operacionais – Profª. Eduarda Monteiro
Bibliografia
*
Tanembaum, Andrew S. et. al. Operating Systems: Desigin and Implementation. 2ed. 2002. 
Tanembaum, Andrew S. Modern Operating Systems. 3ed. 2007 
Oliveira, R. S.; Carissimi, S. A.; Toscani, S. S. Sistemas Operacionais. Revista de Informática Teórica e Aplicada. Volume VIII. 2001. 
Sistemas Operacionais – Profª. Eduarda Monteiro
Tabelas de Dispersão – Aula 15
*
*

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes