Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
http://www.inf.ufes.br/~rgomes/so.htm
Introduo
Consideraes:
Recurso caro e escasso; Programas s executam se estiverem na memria principal; Quanto mais processos residentes na memria principal, melhor ser o compartilhamento do processador; Necessidade de uso otimizado; O S.O. no deve ocupar muita memria; um dos fatores mais importantes em um projeto de S.O..
LPRM/DI/UFES
Sistemas Operacionais
http://www.inf.ufes.br/~rgomes/so.htm
Introduo
Sistema operacional deve
controlar quais regies de memria so utilizadas e por qual processo decidir qual processo deve ser carregado para a memria, quando houver espao disponvel alocar e desalocar espao de memria
http://www.inf.ufes.br/~rgomes/so.htm
Compilador
Montador
linkeditor
Executvel: programa em ling de mquina
Carregador
Memria
Sistemas Operacionais
LPRM/DI/UFES
Execuo de um Programa
Executvel: programa em ling de mquina
(2)
Cdigo absoluto: - Endereos relativos ao incio da memria (endereos reais) - Programas exclusivos para parties especficas na memria
Sistemas Operacionais
Cdigo relocvel - O programa pode ser carregado em qualquer posio da memria. - Deve haver uma traduo de endereos (ou relocao de endereos)
5
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Execuo de um Programa
Relocao de Endereos
Esttica
(3)
O Loader (em tempo de carga) reloca os endereos das instrues relocvies (ex: JMP endx)
Dinmica
Em tempo de execuo O processo pode ser movimentado dentro da memria fsica Um hardware especial deve estar disponvel para que funcione (MMU)
Sistemas Operacionais
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Execuo de um Programa
Relocao de Endereos
Executvel: programa em ling de mquina (cont.)
(4)
Traduo
Sistemas Operacionais
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Gerncia de Memria Memria Lgica - aquela que o processo enxerga, o processo capaz de acessar. Memria Fsica - aquela implementada pelos circuitos integrados de memria, pela eletrnica do computador (memria real)
CPU Endereo lgico Gerenciador Endereo de Memria fsico Memria
Sistemas Operacionais
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Parties Variveis
Alocao Particionada Dinmica.
Sistemas Operacionais
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(1)
Alocao implementada nos primeiros sistemas e ainda usada nos monoprogramveis; A Memria dividida em duas reas:
rea do Sistema Operacional rea do Usurio
Memria principal
Sistema Operacional
Um usurio no pode usar uma rea maior do que a disponvel; Sem proteo:
Um usurio pode acessar a rea do Sistema Operacional.
Sistemas Operacionais
10
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(2)
Registrador de proteo delimita as reas do sistema operacional e do usurio; Reg Sistema verifica acessos memria em relao ao endereo do registrador; A forma de alocao era simples, mas no permitia utilizao eficiente de processador e memria;
Memria principal
Sistema Operacional
Sistemas Operacionais
11
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(3)
Programas de usurio limitados pelo tamanho da memria principal disponvel. Soluo: Overlay
Dividir o programa em mdulos; Permitir execuo independente de cada mdulo, usando a mesma rea de memria;
Memria principal
Sistema Operacional rea do Mdulo Principal rea de Overlay
rea de Overlay
rea de memria comum onde mdulos compartilham mesmo espao.
A
Sistemas Operacionais
C
LPRM/DI/UFES
12
http://www.inf.ufes.br/~rgomes/so.htm
Alocao Particionada
Multiprogramao.
Necessidade do uso da memria por vrios usurios simultaneamente.
Ocupao mais eficiente do processador; A memria foi dividida em pedaos de tamanho fixo chamados parties; O tamanho de cada partio era estabelecido na inicializao do sistema; Para alterao do particionamento, era necessrio uma nova inicializao com uma nova configurao.
Sistemas Operacionais
13
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(1)
Compiladores gerando cdigo absoluto; Programas exclusivos para parties especficas. Simples de gerenciar E se todos os processos s pudessem ser executados em uma mesma partio (mesmo endereo base?)
http://www.inf.ufes.br/~rgomes/so.htm
(2)
Memria principal
Reg. de Relocao Reg Limite
Programas no ocupam totalmente o espao das parties, gerando uma fragmentao interna.
Sistemas Operacionais
Partio B Partio C
15
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(1)
Memria principal
Sistema Operacional Processo A Processo C Processo F Processo E
Ao terminarem, os programas deixam espalhados espaos pequenos de memria, provocando a fragmentao externa.
os fragmentos so pequenos demais para serem reaproveitados
Sistemas Operacionais
16
LPRM/DI/UFES
(2)
REA LIVRE 11 KB
B - 4 kB
E - 6 kB
D- 3 kB
17
?
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(3)
Memria principal
Sistema Operacional Processo A
Processo F Processo E
18
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(4)
Proteo
Sistemas Operacionais
19
http://www.inf.ufes.br/~rgomes/so.htm
(5)
20
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Mapa de bits
Usado para o gerenciamento com alocao dinmica Memria dividida em unidades de alocao
De algumas palavras a vrios kilobytes
Qto menor maior o mapa de bits Qto maior desperdio na ltima unidade
Principal problema
Busca de k zeros consecutivos para alocao de k unidades Raramente utilizado atualmente.
muito lenta
Sistemas Operacionais
21
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Lista duplamente encadeada facilita de concatenao de segmenos Lista ordenada por endereo permite vrios algoritmos de alocao P: Processo
H: Hole (buraco)
Header
Sistemas Operacionais
http://www.inf.ufes.br/~rgomes/so.htm
P 0 100
H 100 200
P 300 50
H 350 400
P 750 50
H 800 50
A: 190
Header
H 350 400
P 750 50
H 800 50
Header
P 0 100
H 100 200
H 800 50
23
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(1)
Existem 4 maneiras de percorrer a lista de espaos livre atrs de uma lacuna de tamanho suficiente, so eles:
Best-fit (utiliza a lacuna que resultar a menor sobra)
Espao mais prximo do tamanho do processo; Tempo de busca grande; Provoca fragmentao.
Sistemas Operacionais
24
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(2)
Sistemas Operacionais
25
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
(3)
Sistemas Operacionais
26
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Referncias
A. S. Tanenbaum, ''Sistemas Operacionais Modernos'', 2a. Edio, Editora Prentice-Hall, 2003.
Captulo 4 (at seo 4.2 inclusa)
Silberschatz A. G.; Galvin P. B.; Gagne G.; ''Fundamentos de Sistemas Operacionais'', 6a. Edio, Editora LTC, 2004.
Captulo 9 (at seo 9.3 inclusa)
Deitel H. M.; Deitel P. J.; Choffnes D. R.; Sistemas Operacionais, 3. Edio, Editora Prentice-Hall, 2005
??
Sistemas Operacionais
27
LPRM/DI/UFES
http://www.inf.ufes.br/~rgomes/so.htm
Referncias
A. S. Tanenbaum, ''Sistemas Operacionais Modernos'', 2a. Edio, Editora Prentice-Hall, 2003.
Captulo 4 (at seo 4.2 inclusa) Silberschatz A. G.; Galvin P. B.; Gagne G.; ''Fundamentos de Sistemas Operacionais'', 6a. Edio, Editora LTC, 2004.
Captulo 9 (at seo 9.3 inclusa)
Deitel H. M.; Deitel P. J.; Choffnes D. R.; Sistemas Operacionais, 3. Edio, Editora Prentice-Hall, 2005
??
Sistemas Operacionais
28
LPRM/DI/UFES