Upload
vannhu
View
255
Download
0
Embed Size (px)
Citation preview
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Arquitetura de Sistemas Operativos
Hernani Costa
Sistemas Operativos 2011/2012
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
1 Conceitos de MultiprocessamentoIntroducaoGestao de ProgramasControlo de Recursos de Hardware
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Introducao
Os sistemas operativos gerem um conjunto de funcoes basicasque tem evoluıdo ao longo dos tempos.
Vamos entao analisar a evolucao de algumas dessas funcoes:
Gestao de programasControlo de recursos de hardware:
Gestao do MicroprocessadorGestao da MemoriaGestao dos perifericos de entrada e saıda
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas
A funcao mais importante de um sistema operativo, e queafeta diretamente a sua fiabilidade, e o metodo como estegere a execucao dos programas.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Monotarefa
No caso dos sistemas operativos classificados por monotarefa,estes executam apenas uma tarefa de cada vez.
Vejamos o seguinte exemplo:
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Monotarefa
Imaginemos que estamos a usar um editor de texto e temosnecessidade de ir buscar informacao a uma folha de calculo.
Neste tipo de sistema operativo temos de sair do editor detexto para podermos entrar na folha de calculo e fazer omesmo para voltarmos ao editor de texto.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Monotarefa
Voltando ao editor de texto e na hora da impressao dodocumento e necessario aguardar que todo o documento sejaimpresso ou passado para a memoria da impressora, para queseja possıvel trabalhar novamente com o editor de texto.
Quem ja utilizou o sistema operativo MS-DOS ja passou porestas situacoes.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa
Um sistema operativo multitarefa permite que um utilizadortrabalhe com dois ou mais programas em simultaneo.
Na pratica o microprocessador nao executa diversosprogramas de uma so vez, mas reserva uma fracao de tempopara cada um dos programas.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa
Existem diferentes tecnicas de gestao da multitarefa.
Consoante o metodo utilizado, a estabilidade do sistemaoperativo e afetada.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Cooperativa
Neste caso de multitarefa cooperativa, os utilizadorespodem executar dois ou mais programas, mas o programa quese encontra em primeiro plano ganha o controlo sobre omicroprocessador e mantem esse controlo ate que a tarefatermine.
So depois e que o microprocessador e libertado para se ocuparcom os restantes programas.
Neste caso o que e que acontece se um dos programas para defuncionar?
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Cooperativa
O programa que esta parado, ou ”travado”, nao liberta omicroprocessador, consequentemente o computador“congela”, ou fica “suspenso”, e o utilizador tem que reiniciaro computador.
O Windows 3.11 e as versoes anteriores a versao Mac OS 8utilizavam este tipo de multitarefa.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Preemptiva
A multitarefa preempetiva e melhor do que a anterior epermite que o sistema operativo recupere o controlo caso umaplicativo interrompa a sua execucao.
O utilizador perde todos os trabalhos que nao tinham sidoguardados no programa que travou, mas a falha nesteaplicativo nao vai influenciar o funcionamento do restantesistema.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Preemptiva
Os sistemas operativos atuais para computadores pessoais jautilizam este tipo de multitarefa, como e o caso do Unix,Linux, Windows 95, 98, M. Windows NT, 2000 e XP, Mac OS8 e versoes mais recentes, e o OS/2, entre outros.
No entanto, nem todos os sistemas que utilizam a multitarefapreemptiva, a gerem de modo eficiente.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Multithreading
Um sistema mais recente de multitarefa e designado pormultithreading e permite que o computador execute maisdo que uma tarefa de um unico programa.
Para facilitar o multithreading, os programadores devemdividir os programas em tarefas distintas, denominadas porthreads.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Multithreading
Por exemplo, podemos ter uma thread a tratar da impressao,enquanto que outra trata da recuperacao de ficheiros.
Com este tipo de multitarefa o utilizador pode estar a executaruma tarefa de um programa aplicativo e em simultaneopodem estar a ser executadas outras tarefas desse programa.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Multithreading
Podemos tambem obter beneficio quando se executam variosprogramas aplicativos.
A thread do programa que se encontra em segundo planocontinua a trabalhar, enquanto o utilizador esta a trabalharcom o programa aplicativo em primeiro plano.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Gestao de Programas
Gestao de Programas - Multitarefa Multithreading
Os sistemas operativos mais eficazes combinam a multitarefapreempetiva e multithreading.
Os sistemas operativos para computadores pessoaismencionados na multitarefa preempetiva tambem suportam omultithreading.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao do Microprocessador
No caso da multitarefa preempetiva e do multithreading, osistema operativo tem que gerir quanto tempo cada tarefa vaiocupar no microprocessador.
Quando mandamos imprimir um documento e de imediatocontinuamos a escrever, nao nos podemos esquecer que osistema operativo vai atribuir uma fracao de tempo a cadatarefa e para o utilizador parece que este esta a realizar tudoem simultaneo.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao do Microprocessador
Este tipo de processamento por partilha no tempo domicroprocessador e conhecido por ”pseudoparalelismo”.
Neste caso, o tempo de execucao das duas tarefas e osomatorio das duas a trabalhar isoladamente.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao do Microprocessador
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao do Microprocessador
Nos sistemas informaticos constituıdos por mais do que ummicroprocessador, e possıvel atribuir a cada um uma tarefadiferente para que o trabalho seja distribuıdo por todos.
Os sistemas operativos tem de estar preparados para poderemrealizar esta gestao e nem todos os sistemas operativos maisrecentes tem esta potencialidade.
O Linux, Unix, Windows NT, 2000, XP, o Mac OS 8 e versoesmais recentes, sao exemplos de sistemas operativos quesuportam multiprocessamento.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Multiprocessamento
Assim, o multiprocessamento e a capacidade de um sistemaoperativo executar simultaneamente dois ou mais processos.
Pressupoe a existencia de dois ou mais processadores.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Multiprocessamento
A ideia e ter mais de um processador que funciona na mesmamemoria mas executa processos simultaneamente.
Difere da multitarefa, pois esta simula a simultaneidade,utilizando-se de - usando - varios recursos, sendo o principal apartilha de tempo de uso do processador entre variosprocessos.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Caracterısticas do Multiprocessamento
Um multiprocessador e um sistema integrado decomputacao com as seguintes caracterısticas:
Envolve dois ou mais processadores fısicos (separados oumultiplos nucleos encapsulados no mesmo chip) ou logicos(processadores com a tecnologia HyperThreading da Intel)com o mesmo poder computacional e cada um capaz deexecutar processos autonomamente.
Os processadores partilham um unico espaco deenderecamento de memoria.
O sistema de hardware e como um todo gerido por um unicosistema operativo.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Caracterısticas do Multiprocessamento
O sistema operativo com suporte a multiprocessamento deveser capaz de:
suportar multitarefa;
manter multiplas filas de processos, uma para cadaprocessador.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Arquitetura de Sistemas Multiprocessados
Sistemas multiprocessados podem ser basicamente de doistipos: SMP e NUMA.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Multiprocessamento simetrico (SMP)
Os processadores partilham a mesma memoria, emborapossam ter caches separadas.
O sistema operativo deve estar preparado para trabalhar comcoerencia de caches e, principalmente, evitar condicoes decorrida na memoria principal.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Acesso nao uniforme a memoria (NUMA)
A cada processador e associado um bloco de memoria.
O sistema operativo trata cada bloco separadamente, poiscada bloco tem um custo de acesso diferente, dependendo dequal o processador a que esta associado e onde esta a serexecutado o processo que tenta aceder a memoria.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao da Memoria
O sistema operativo atribui a cada programa que se encontraem execucao uma fatia de memoria.
Os sistemas operativos mais evoluıdos implementam amemoria virtual, que e um metodo de utilizar o disco rıgidodo computador como uma extensao da memoria RAM.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao da Memoria
Na memoria virtual, as instrucoes e os dados do programa saodivididos em unidades de tamanho fixo, designadas porpaginas.
Se a memoria RAM estiver cheia, o sistema operativoarmazena as paginas num ficheiro do disco rıgido, denominadopor ficheiro de troca (swap file).
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao da Memoria
Quando ha necessidade das paginas armazenadas no discorıgido, elas sao copiadas para a memoria RAM.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao dos perifericos de entrada e saıda
Os perifericos que sao ligados ao computador tem de sergeridos pelo sistema operativo.
Cada periferico gera interrupcoes, que sao sinais enviadospara o microprocessador.
Por exemplo, se o utilizador pressionar uma tecla ou se moverato, geram-se interrupcoes e o sistema operativo vai darordem para executar o programa respectivo a cada pedido deinterrupcao.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao dos perifericos de entrada e saıda
Encontra-se no mercado informatico uma grande variedade demarcas e modelos de perifericos, tais como placas de som,modems, monitores e placas de rede, entre .
Dado que cada dispositivo de um modelo de uma determinadamarca tem as suas proprias caracterısticas, o sistemaoperativo necessita do driver do periferico.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao dos perifericos de entrada e saıda
Os drivers dos perifericos sao programas que conteminformacoes especıficas destes e que sao responsaveis pelainterligacao do periferico com o sistema operativo.
O driver de um periferico e especıfico para um determinadosistema operativo.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Controlo de Recursos de Hardware
Gestao dos perifericos de entrada e saıda
Se houver alteracao de sistema operativo e necessario ter odriver do periferico adequado para que este funcione.
Um periferico sem o driver nao funciona.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B
! Prof. Hernani
Resumo Conceitos de Multiprocessamento
Avaliacao
Trabalho Teorico-Pratico 1
Descreva um dos seguintes conceitos num texto.
Gestao de Programas:MonotarefaMultitarefa
CooperativaPreemptivaMultithreading
O texto devera: ser feito em grupo; enviado por email aoprofessor no final da aula; e devera conter entre 250 a 500palavras.
Hernani Costa [email protected]
TGPSI 09/12 Sistemas Operativos Modulo 5B