1. Resumo Conceitos de Multiprocessamento
Arquitetura de Sistemas Operativos
! Prof. Hernani
Hernani Costa
hpcosta@dei.uc.pt
Sistemas Operativos 2011/2012
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
2. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
1 Conceitos de Multiprocessamento
Introduc~ao
Gest~ao de Programas
Controlo de Recursos de Hardware
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
3. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Introduc~ao
Os sistemas operativos gerem um conjunto de func~oes basicas
que t^em evoludo ao longo dos tempos.
Vamos ent~ao analisar a evoluc~ao de algumas dessas func~oes:
Gest~ao de programas
Controlo de recursos de hardware:
Gest~ao do Microprocessador
Gest~ao da Memoria
Gest~ao dos perifericos de entrada e sada
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
4. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas
A func~ao mais importante de um sistema operativo, e que
afeta diretamente a sua
5. abilidade, e o metodo como este
gere a execuc~ao dos programas.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
6. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Monotarefa
No caso dos sistemas operativos classi
7. cados por monotarefa,
estes executam apenas uma tarefa de cada vez.
Vejamos o seguinte exemplo:
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
8. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Monotarefa
Imaginemos que estamos a usar um editor de texto e temos
necessidade de ir buscar informac~ao a uma folha de calculo.
Neste tipo de sistema operativo temos de sair do editor de
texto para podermos entrar na folha de calculo e fazer o
mesmo para voltarmos ao editor de texto.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
9. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Monotarefa
Voltando ao editor de texto e na hora da impress~ao do
documento e necessario aguardar que todo o documento seja
impresso ou passado para a memoria da impressora, para que
seja possvel trabalhar novamente com o editor de texto.
Quem ja utilizou o sistema operativo MS-DOS ja passou por
estas situac~oes.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
10. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa
Um sistema operativo multitarefa permite que um utilizador
trabalhe com dois ou mais programas em simult^aneo.
Na pratica o microprocessador n~ao executa diversos
programas de uma so vez, mas reserva uma frac~ao de tempo
para cada um dos programas.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
11. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa
Existem diferentes tecnicas de gest~ao da multitarefa.
Consoante o metodo utilizado, a estabilidade do sistema
operativo e afetada.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
12. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Cooperativa
Neste caso de multitarefa cooperativa, os utilizadores
podem executar dois ou mais programas, mas o programa que
se encontra em primeiro plano ganha o controlo sobre o
microprocessador e mantem esse controlo ate que a tarefa
termine.
So depois e que o microprocessador e libertado para se ocupar
com os restantes programas.
Neste caso o que e que acontece se um dos programas para de
funcionar?
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
13. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Cooperativa
O programa que esta parado, ou travado, n~ao liberta o
microprocessador, consequentemente o computador
congela, ou
14. ca suspenso, e o utilizador tem que reiniciar
o computador.
O Windows 3.11 e as vers~oes anteriores a vers~ao Mac OS 8
utilizavam este tipo de multitarefa.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
15. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Preemptiva
A multitarefa preempetiva e melhor do que a anterior e
permite que o sistema operativo recupere o controlo caso um
aplicativo interrompa a sua execuc~ao.
O utilizador perde todos os trabalhos que n~ao tinham sido
guardados no programa que travou, mas a falha neste
aplicativo n~ao vai in
uenciar o funcionamento do restante
sistema.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
16. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Preemptiva
Os sistemas operativos atuais para computadores pessoais ja
utilizam este tipo de multitarefa, como e o caso do Unix,
Linux, Windows 95, 98, M. Windows NT, 2000 e XP, Mac OS
8 e vers~oes mais recentes, e o OS/2, entre outros.
No entanto, nem todos os sistemas que utilizam a multitarefa
preemptiva, a gerem de modo e
18. Resumo Conceitos de Multiprocessamento
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Multithreading
Um sistema mais recente de multitarefa e designado por
multithreading e permite que o computador execute mais
do que uma tarefa de um unico programa.
Para facilitar o multithreading, os programadores devem
dividir os programas em tarefas distintas, denominadas por
threads.
! Prof. Hernani
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
19. Resumo Conceitos de Multiprocessamento
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Multithreading
Por exemplo, podemos ter uma thread a tratar da impress~ao,
enquanto que outra trata da recuperac~ao de
20. cheiros.
Com este tipo de multitarefa o utilizador pode estar a executar
uma tarefa de um programa aplicativo e em simult^aneo
podem estar a ser executadas outras tarefas desse programa.
! Prof. Hernani
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
21. Resumo Conceitos de Multiprocessamento
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Multithreading
Podemos tambem obter bene
22. cio quando se executam varios
programas aplicativos.
A thread do programa que se encontra em segundo plano
continua a trabalhar, enquanto o utilizador esta a trabalhar
com o programa aplicativo em primeiro plano.
! Prof. Hernani
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
23. Resumo Conceitos de Multiprocessamento
Gest~ao de Programas
Gest~ao de Programas - Multitarefa Multithreading
Os sistemas operativos mais e
24. cazes combinam a multitarefa
preempetiva e multithreading.
Os sistemas operativos para computadores pessoais
mencionados na multitarefa preempetiva tambem suportam o
multithreading.
! Prof. Hernani
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
25. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao do Microprocessador
No caso da multitarefa preempetiva e do multithreading, o
sistema operativo tem que gerir quanto tempo cada tarefa vai
ocupar no microprocessador.
Quando mandamos imprimir um documento e de imediato
continuamos a escrever, n~ao nos podemos esquecer que o
sistema operativo vai atribuir uma frac~ao de tempo a cada
tarefa e para o utilizador parece que este esta a realizar tudo
em simult^aneo.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
26. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao do Microprocessador
Este tipo de processamento por partilha no tempo do
microprocessador e conhecido por pseudoparalelismo.
Neste caso, o tempo de execuc~ao das duas tarefas e o
somatorio das duas a trabalhar isoladamente.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
27. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao do Microprocessador
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
28. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao do Microprocessador
Nos sistemas informaticos constitudos por mais do que um
microprocessador, e possvel atribuir a cada um uma tarefa
diferente para que o trabalho seja distribudo por todos.
Os sistemas operativos t^em de estar preparados para poderem
realizar esta gest~ao e nem todos os sistemas operativos mais
recentes t^em esta potencialidade.
O Linux, Unix, Windows NT, 2000, XP, o Mac OS 8 e vers~oes
mais recentes, s~ao exemplos de sistemas operativos que
suportam multiprocessamento.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
29. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Multiprocessamento
Assim, o multiprocessamento e a capacidade de um sistema
operativo executar simultaneamente dois ou mais processos.
Pressup~oe a exist^encia de dois ou mais processadores.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
30. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Multiprocessamento
A ideia e ter mais de um processador que funciona na mesma
memoria mas executa processos simultaneamente.
Difere da multitarefa, pois esta simula a simultaneidade,
utilizando-se de - usando - varios recursos, sendo o principal a
partilha de tempo de uso do processador entre varios
processos.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
31. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Caractersticas do Multiprocessamento
Um multiprocessador e um sistema integrado de
computac~ao com as seguintes caractersticas:
Envolve dois ou mais processadores fsicos (separados ou
multiplos nucleos encapsulados no mesmo chip) ou logicos
(processadores com a tecnologia HyperThreading da Intel)
com o mesmo poder computacional e cada um capaz de
executar processos autonomamente.
Os processadores partilham um unico espaco de
enderecamento de memoria.
O sistema de hardware e como um todo gerido por um unico
sistema operativo.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
32. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Caractersticas do Multiprocessamento
O sistema operativo com suporte a multiprocessamento deve
ser capaz de:
suportar multitarefa;
manter multiplas
33. las de processos, uma para cada
processador.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
34. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Arquitetura de Sistemas Multiprocessados
Sistemas multiprocessados podem ser basicamente de dois
tipos: SMP e NUMA.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
35. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Multiprocessamento simetrico (SMP)
Os processadores partilham a mesma memoria, embora
possam ter caches separadas.
O sistema operativo deve estar preparado para trabalhar com
coer^encia de caches e, principalmente, evitar condic~oes de
corrida na memoria principal.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
36. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Acesso n~ao uniforme a memoria (NUMA)
A cada processador e associado um bloco de memoria.
O sistema operativo trata cada bloco separadamente, pois
cada bloco tem um custo de acesso diferente, dependendo de
qual o processador a que esta associado e onde esta a ser
executado o processo que tenta aceder a memoria.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
37. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao da Memoria
O sistema operativo atribui a cada programa que se encontra
em execuc~ao uma fatia de memoria.
Os sistemas operativos mais evoludos implementam a
memoria virtual, que e um metodo de utilizar o disco rgido
do computador como uma extens~ao da memoria RAM.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
38. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao da Memoria
Na memoria virtual, as instruc~oes e os dados do programa s~ao
divididos em unidades de tamanho
39. xo, designadas por
paginas.
Se a memoria RAM estiver cheia, o sistema operativo
armazena as paginas num
43. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao da Memoria
Quando ha necessidade das paginas armazenadas no disco
rgido, elas s~ao copiadas para a memoria RAM.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
44. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao dos perifericos de entrada e sada
Os perifericos que s~ao ligados ao computador t^em de ser
geridos pelo sistema operativo.
Cada periferico gera interrupc~oes, que s~ao sinais enviados
para o microprocessador.
Por exemplo, se o utilizador pressionar uma tecla ou se move
rato, geram-se interrupc~oes e o sistema operativo vai dar
ordem para executar o programa respectivo a cada pedido de
interrupc~ao.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
45. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao dos perifericos de entrada e sada
Encontra-se no mercado informatico uma grande variedade de
marcas 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 determinada
marca tem as suas proprias caractersticas, o sistema
operativo necessita do driver do periferico.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
46. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao dos perifericos de entrada e sada
Os drivers dos perifericos s~ao programas que cont^em
informac~oes espec
47. cas destes e que s~ao responsaveis pela
interligac~ao do periferico com o sistema operativo.
O driver de um periferico e espec
48. co para um determinado
sistema operativo.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
49. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Controlo de Recursos de Hardware
Gest~ao dos perifericos de entrada e sada
Se houver alterac~ao de sistema operativo e necessario ter o
driver do periferico adequado para que este funcione.
Um periferico sem o driver n~ao funciona.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B
50. Resumo Conceitos de Multiprocessamento
! Prof. Hernani
Avaliac~ao
Trabalho Teorico-Pratico 1
Descreva um dos seguintes conceitos num texto.
Gest~ao de Programas:
Monotarefa
Multitarefa
Cooperativa
Preemptiva
Multithreading
O texto devera: ser feito em grupo; enviado por email ao
professor no
51. nal da aula; e devera conter entre 250 a 500
palavras.
Hernani Costa hpcosta@dei.uc.pt
TGPSI 09/12 Sistemas Operativos Modulo 5B