Introução Sistemas Oeracionais Alocação não contígua Paginação Segmentação Segmentação com aginação Trabalho sob a Licença Atribuição-SemDerivações-SemDerivaos. Brasil Creative Commons. Para visualizar uma cóia esta licença, visite htt://creativecommons.org/licenses/by-nc-n/./br/ Aula Problema com alocação articionaa estática ou inâmica Necessiae e uma área contígua e memória (tamanho o rocesso) Solução: Retirar a restrição e ue o esaço e enereçamento eva ser contíguo Estratégia básica: Maear o esaço e enereçamento lógico (contíguo) em um esaço e enereçamento físico não contíguo Dois métoos funamentais Paginação Segmentação Princíio básico a aginação Esaço e enereçamento lógico Divisão o esaço e enereçamento em blocos e tamanho fixo O esaço e enereçamento lógico (rocesso) é iviio em O esaço e enereçamento físico (RAM) é iviio em uaros (frames) As e o uaro tem o mesmo tamanho Regra e alocação: Uma ágina oe ser carregaa em ualuer uaro livre Quebra a noção e esaço contíguo Necessário maear enereço lógico em físico Imortante: Processo enxerga um esaço e enereçamento contíguo, embora ele seja não contíguo Noção e enereço lógico versus enereço fisico Enereço lógico é iviio em uas comonentes: Número a ágina () Deslocamento entro e uma ágina () Páginas oem ter ualuer tamanho Tamanho otência e facilita as oerações iv e mo Processo A E L Página E L = + = E L iv P = E L mo P P = tamanho a ágina E L SE otência e: m-n m bits n
Esaço e enereçamento físico Traução e enereço lógico em enereço físico Enereço físico é iviio em uas comonentes: Número o uaro Deslocamento entro o uaro Quaros ossuem o mesmo tamanho a ágina Memória RAM Quaro = + = iv Q = mo Q Q = tamanho o uaro SE otência e: k-n k bits n Tabela e Fornece maeamento ágina-uaro Inexao elo número a ágina En. lógico Tabela e - Memória RAM En. Físico - Uma tabela e or rocesso - Informação a localização (em memória) a tabela é mantia no PCB Exemlo e aginação Exemlo e aginação (cont.): traução Características o sistema: Memória física: kbytes ( bits) Tamanho rocesso (máx): kbytes ( bits) Páginas 8 kbytes Paginação: Número e uaros: /8 = 8 ( a ) bits Número e : /8 = ( a ) bits Deslocamento: 8 kbytes bits En. Lógico bits En. Físico bits En. lógico bits bits C98 Tabela e x x x () (xc98 ou ) C98 En. físico bits bits En. físico En. Quaro E C A 8 Memória física (x8c98 ou 99 ) 8
Proteção e comartilhamento Exemlo e roteção (valiae) e comartilhamento Proteção e acesso é garantia or efinição: Processos acessam somente suas en. válios Se há fragmentação interna, oe haver acesso incorreto, mas válio!! Inclusão e bits e controle na tabela e ágina (or entraa) Bit e valiae: ágina ertence ou não ao en. lógico o rocesso Controle e acesso: inicação se a ágina é e leitura, leitura/escrita ou executável Cóigo comartilhao Uma cóia o cóigo (rea-only, reentrante) oe ser comartilhaa entre vários rocessos (e.g.; eitores e texto, comilaores, etc...) O cóigo comartilhao ertence ao esaço lógico e toos os rocessos Processo Processo Bit válio Tabela e Tabela e Bit comartilhamento En. E C A 8 P P P/P P P P Memória física Quaro Caa entraa oeria ter aina um outro bit e controle ara izer se a ágina é só e leitura ou leitura/escrita 9 Características a aginação Segmentação Enereçamento lógico é iviio em e enereçamento físico em uaros Páginas e uaros ossuem o mesmo tamanho Maeamento e ágina em uaros via tabela e Uma tabela e or rocesso Maeamento é transarente ao usuário, isso é, é feito elo sistema oeracional sem conhecimento o usuário Alocação e memória Qualuer ágina oe ir ara ualuer uaro livre Necessita manter informação e uaro livre/ocuao (bitma) Aresenta fragmentação interna uano o rocesso não ossui tamanho múltilo as Consiera a visão e rogramaores e comilaores Um rograma é uma coleção e segmentos, tiicamente: Móulos e funções (cóigo) Daos alocaos estaticamente OU alocaos inamicamente Pilha Um segmento oe ser uma uniae lógica e.g: roceimentos (funções), bibliotecas, etc. Caa segmento efine um novo enereçamento entro o esaço e enereçamento lógico
Enereço lógico em segmentação Esuema lógico a segmentação Enereço lógico é comosto or uas artes: Número e segmento Deslocamento entro o segmento Os segmentos não necessitam ter o mesmo tamanho Existe um tamanho máximo ara um segmento Segmentação é similar a alocação articionaa inâmica Diferença está no fato ue segmentos e um mesmo rocesso não recisam estar em áreas contíguas. Segmento S S S Pilha main Daos Esaço e Usuário (rocesso) Enereço lógico: ientificaor o segmento + eslocamento S subrotinas Esaço físico (RAM) En. carga e S Pilha Daos main subrotinas Enereço físico: one segmento foi carregao + eslocamento Traução e enereço lógico em enereço físico Esuema e traução a segmentação Traução é feita e forma similar a aginação (via tabela) Tabela e segmentos Entraa na tabela e segmento: Base: enereço inicial (físico) o segmento na memória RAM Limite: tamanho o segmento em bytes Necessiae e verificar a caa acesso se ele é válio Harware (comaraor) Tabela e segmentos Fornece maeamento segmento-enereço e carga Inexao elo número e segmento Informa limite (tamanho) o segmento em memória En. lógico s Tabela e segmentos s- base limite... <= Não En. Físico Memória Física (RAM) INT base - Uma tabela e segmentos or rocesso - Informação a localização (em memória) a tabela é mantia no PCB + N-
Características a segmentação Comaração entre aginação e segmentação Paginação Segmentação Processo é iviio em segmentos Caa segmento é ientificao or um número e ossui um tamanho máximo Poem ter tamanhos iferentes Maeamento e segmento a área e memória via tabela e segmentos Informação e base (en. e carga) e tamanho (limite) Alocação e memória Segmentos oem ser alocaos em ualuer orção e RAM e tamanho suficiente ara ele Necessiae e manter listas e lacunas livres e ocuaas Métoos best-fit, worst-fit, first-fit, next-fit Não aresenta fragmentação interna, mas gera fragmentação externa Comactação e concatenação Fragmentação Interna (elimina a externa) Externa (elimina a interna) Usuário é consciente a técnica ue está seno usaa? Nro. e esaços e enereçamento lógicos lineares? O esaço lógico oe exceer a caaciae o enereço físico? Faz istinção entre aos, ilhas e cóigos? Traução en. lógico en. físico Princial objetivo Não n (se usao memória virtual) Não (tuo são ) + ara + (tabela e ) lificar a obtenção e um esaço e um esaço físico ara o lógico. (se usao memória virtual) s+ ara base+ ( < limite)) (tabela e segmentos) Permitir ue rogramas e aos sejam iviios em iferentes uniaes lógicas (facilitar roteção e comartilhamento). 8 Segmentação com aginação Esuema e traução a segmentação c/ aginação Objetivo é unir as vantagens os ois métoos Faciliae e alocação e gerenciamento e memória a aginação Flexibilização a segmentação (Visão e comilaores e rogramas, tamanhos variáveis ara segmentos) Eliminação a fragmentação externa e minimização a fragmentação interna En. Lógico (segmentação ura) Paginar o segmento, isso é, não torná-lo contíguo em memória En. Lógico (segmentação aginação) s s Exemlo: = bits (segmentos e KB) k k Segmento contém e k (=; =) En. inicial En. lógico s Tabela e segmentos Tabela e En. Físico Memória física Esaço lógico é iviio em segmentos com tamanhos múltilos e Esaço físico é iviio em uaros 9
Alocação não contígua na rática (muno real) Leituras comlementares Métoo emregao é a aginação Faciliae e alocação e gerenciamento e memória Imlementação em harware menos custosa Não há necessiae e comaraor e somaor Entraas nas tabelas e maeamento tenem a ser menores Base ara imlementação e memória virtual (aginação or emana) Questões e imlementação a aginação Gerenciamento e uaros livres e ocuaos (bitmas) Como imlementar a tabela e? (multinível, tabela e invertia) One armazenar a tabela e? (registraores internos, memória, isco) Desemenho na traução o enereço lógico ara enereço físico? (TLBs) A. Tanenbaum. Sistemas Oeracionais Moernos ( a eição), Pearson Brasil,. Caítulo : seções. e. A. Silberchatz, P. Galvin; Oerating Systems concet. (8 a eição). John Wiley & Sons, 9. Caítulo 8 (seções 8. a 8.) R. Oliveira, A. Carissimi, S. Toscani; Sistemas Oeracionais. Eitora Bookman a eição, Caítulo