Gerenciamento de Arquivos, Páginas e Registros RESUMO DA AULA 3 Profa. Sandra de Amo GBC053 – BCC 2012-2 Gerenciar as páginas no heap file 1.Como encontrar determinada página num arquivo heap (sequencial) ? 2.Que página possui espaço livre? Método 1: Lista ligada de páginas Método 2: Diretório de páginas 11/5/2015 Bacharelado em Ciência da Computação - 2004 2 Lista Ligada de Páginas Tabela Arquivos- End 1a página Arquivo EndPag1 Alunos 1033 Hospital 5023 Páginas contendo Espaço Livre Header Page Páginas Cheias 1a página do arquivo 11/5/2015 Bacharelado em Ciência da Computação - 2004 3 Diretório de Páginas Tabela Arquivos- End 1a páginaDP Header Arquivo Endpg1DP Page Alunos Pg Dados 1 10 40 1033 35 Hospital 5023 Espaço Livre da Página 1 Pg Dados 2 Pg Dados N Diretório de Páginas = Lista Ligada 11/5/2015 Bacharelado em Ciência da Computação - 2004 4 Como os registros são organizados nas páginas rid = identificador do registro (record id) registro rid 2 50 Identificador da página Número do slot Página = coleção de slots Slot = espaço físico preenchido por um registro 11/5/2015 Bacharelado em Ciência da Computação - 2004 5 Como registros são organizados: Registros de tamanho fixo - 1a alternativa Slot 1 Slot 2 Slot 3 Slot N Espaço livre N Número de registros Informações sobre a página : Número da página, ponteiro para próxima página,… 11/5/2015 Bacharelado em Ciência da Computação - 2004 6 Como registros são organizados: Registros de tamanho fixo - 2a alternativa Registros de Tamanho Fixo : 2a alternativa Slot 1 Espaço livre Slot 2 Slot 3 Slot M Info sobre página 11/5/2015 1 0 1 1 M 1 2 M 3 Bacharelado em Ciência da Computação - 2004 Número de Slots 7 Como registros são organizados: Registros de tamanho variável Diretório de Slots da Página 200 Número de slots no diretório 1035 Ponteiro para o início do espaço livre na página (P1, T1) 1 (P2, T2) 2 Pi = ponteiro para o registro 1 Ti = tamanho do registro 1 (P200, T200) 11/5/2015 200 Rid = (np, i) Bacharelado em Ciência da Computação - 2004 Ti 8 Organização da Página Área de dados Página i rid = (i,N) rid = (i,1) rid = (i,2) Comprimento = 24 Espaço Livre Diretório de slots 11/5/2015 20 16 N 2 Bacharelado em Ciência da Computação - 2004 24 N 1 9 Como localizar um campo em um registro – registro de tamanho fixo O tamanho do campo Ci é o mesmo em todos os registros C1 L1 B= endereço do registro C2 L2 C3 C4 L3 L4 Endereço = B + L1 + L2 Ci = campo i Li = Comprimento do campo i 11/5/2015 Bacharelado em Ciência da Computação - 2004 10 Como localizar um campo em um registro – registro de tamanho variável 1a alternativa C1 $ C2 $ C3 $ C4 $ Registro 2a alternativa C1 C2 C3 C4 Endereço do final do registro 11/5/2015 Bacharelado em Ciência da Computação - 2004 11