Sistemas Operativos II - Funcionamento Interno - Sistema de Ficheiros - PDF
Document Details
Uploaded by jorgecosta
ISE C
Tags
Related
Summary
Presentation slides on the internal workings of operating systems, focusing on the structure and function of file systems. It uses examples to illustrate the principles.
Full Transcript
Sistemas Operativos II Funcionamento interno de sistemas operativos SO II – 24/25 Interpretador de Comandos (Chamadas ao...
Sistemas Operativos II Funcionamento interno de sistemas operativos SO II – 24/25 Interpretador de Comandos (Chamadas ao sistema) Gestão de Gestão de Processos ficheiros e (processos, pastas Principais comunicação e sincronização Componente entre s / Funções processos,…) do Sistema Operativo Gestão de Gestão de E/S memória (Periféricos, (Memória, Entrada e Segurança e Saída) proteção,...) Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Introdução ao sistema de ficheiros Um sistema de ficheiros é uma estrutura que o sistema operativo utiliza para organizar e armazenar dados no disco rígido ou noutro tipo de suporte de armazenamento. Ele define a forma lógica como os dados são gravados, lidos, organizados e geridos, permitindo o acesso eficiente aos ficheiros e pastas numa partição que gere de forma exclusiva. “É como um armário organizado em gavetas e pastas. ” Funcionamento interno SOs SO II – 24/25 Introdução ao sistema de ficheiros Imagine uma biblioteca com várias estantes e prateleiras, onde cada estante representa uma pasta e cada prateleira um ficheiro: O bibliotecário organiza os livros de acordo com um padrão, cuja procura seja fácil e não ocupe muitas prateleiras, assegurando a integridade destes Os livros são ainda organizados de acordo com as suas características (assunto, tipo, etc.) Depois de organizados, ou durante a organização, o bibliotecário cria uma lista com todos os livros da biblioteca, assuntos, localizações e códigos de identificação Funcionamento interno SOs SO II – 24/25 Introdução ao sistema de ficheiros O sistema de ficheiros faz algo semelhante, mas de forma digital: O sistema operativo seria o bibliotecário da "biblioteca de dados" do computador, o disco de armazenamento Exatamente igual à organização de uma biblioteca: O sistema operativo guarda os dados nos espaços vazios do disco, rotulando‐os com um FCB (File Control Block, Bloco de Controlo de Ficheiros) Cria uma lista com a posição deste dado, chamada de MFT (Master File Table, Tabela de Arquivos Mestra) Para saber a posição do ficheiro a ser aberto/gravado, o sistema operativo solicita a sua leitura, decodifica/codifica e realiza a abertura/gravação do dado Funcionamento interno SOs SO II – 24/25 Introdução ao sistema de ficheiros O sistema de ficheiros faz algo semelhante, mas de forma digital: O sistema operativo seria o bibliotecário da "biblioteca de dados" do computador, o disco de armazenamento Exatamente igual à organização de uma biblioteca: O sistema operativo guarda os dados nos espaços vazios do disco, rotulando‐os com um FCB (File Control Block, Bloco de Controlo de Ficheiros) Cria uma lista com a posição deste dado, chamada de MFT (Master File Table, Tabela de Arquivos Mestra) Para saber a posição do ficheiro a ser aberto/gravado, o sistema operativo solicita a sua leitura, decodifica/codifica e realiza a abertura/gravação do dado Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Constituição dos sistemas de ficheiros Para muitos utilizadores, o aspeto mais visível de um sistema operativo, pois a forma como organiza os dados, os metadados e a estrutura lógica de armazenamento mostra que cada sistema de ficheiros é desenhado para equilibrar a eficiência de armazenamento e acesso, gestão de dados, segurança e fiabilidade. Consiste em vários elementos, dos quais se destaca: Blocos de Dados É a unidade mínima de armazenamento no disco, e cada sistema de ficheiros divide o disco em blocos de um tamanho pré-determinado (por exemplo, 4 KB ou 8 KB). Quando um ficheiro é guardado, é armazenado em um ou mais blocos. Se um ficheiro for menor que o tamanho do bloco, o espaço restante dentro do bloco é desperdiçado (fenómeno chamado fragmentação interna). Funcionamento interno SOs SO II – 24/25 Constituição dos sistemas de ficheiros Superbloco Contém informações sobre o sistema de ficheiros como um todo. Ele é vital para o funcionamento do sistema, pois armazena metadados globais, tais como: Tamanho total do sistema de ficheiros Número de blocos disponíveis Posição das tabelas de alocação de ficheiros Estado do sistema de ficheiros (montado ou desmontado) Em caso de corrupção do superbloco, o sistema de ficheiros pode ficar inutilizável. Funcionamento interno SOs SO II – 24/25 Constituição dos sistemas de ficheiros Tabela de Alocação de Ficheiros (FAT, MFT, etc.) É usada para gerir o espaço livre e o ocupado no sistema de ficheiros. Dependendo do sistema de ficheiros, há diferentes abordagens: FAT (File Allocation Table): Utilizado em sistemas mais antigos, como o FAT32, mantém uma tabela que mapeia blocos ocupados e livres. MFT (Master File Table): Utilizada no NTFS, contém todas as informações sobre os ficheiros, incluindo os seus inodes e metadados adicionais. Bitmap ou Lista Livre: Alguns sistemas de ficheiros modernos, como ext4, utilizam bitmaps para gerir quais blocos estão livres ou ocupados. Funcionamento interno SOs SO II – 24/25 Constituição dos sistemas de ficheiros Estrutura de Diretórios Organiza os ficheiros e subdiretórios numa hierarquia. Um diretório é essencialmente uma lista de ficheiros e subdiretórios que contém, com ligações (links) para os metadados correspondentes. A estrutura hierárquica permite que os utilizadores naveguem no sistema de ficheiros de forma lógica, com pastas dentro de pastas. Funcionamento interno SOs SO II – 24/25 Constituição dos sistemas de ficheiros Metadados dos Ficheiros São informações adicionais sobre o ficheiro que não fazem parte dos dados propriamente ditos. Estes metadados são armazenados na memória secundária e incluem: Nome do ficheiro: O nome que aparece no sistema de ficheiros. Proprietário: A identidade do utilizador que possui o ficheiro. Grupo: O grupo de utilizadores que pode ter permissões especiais sobre o ficheiro. Tamanho: A quantidade de espaço que o ficheiro ocupa no disco. Permissões: Indicam quem pode aceder e o que pode fazer com o ficheiro (leitura, escrita, execução). Datas: As datas de criação, modificação e último acesso. Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Atributos Os ficheiros e pastas (diretórios) possuem atributos que definem como eles são manipulados e visualizados pelo sistema. Estes atributos podem ser configurados para alterar o comportamento do sistema em relação ao ficheiro ou pasta, são úteis para a gestão de permissões e segurança e variam de sistema operativo para sistema operativo. Principais Atributos de Ficheiros no Windows Nome: o nome simbólico do ficheiro é a única informação conservada em formato legível pelo utilizador. Funcionamento interno SOs SO II – 24/25 Principais Atributos de Ficheiros no Windows – cont. Identificador: rótulo único, geralmente um número, identifica o ficheiro dentro do sistema de ficheiros; é o nome não legível pelo utilizador Posição: esta informação é um ponteiro para um dispositivo e para a posição do arquivo naquele dispositivo. Tamanho: o tamanho atual do ficheiro e possivelmente o tamanho máximo permitido. Funcionamento interno SOs SO II – 24/25 Principais Atributos de Ficheiros no Windows – cont. Atributos básicos de ficheiros Atributos mais comuns e podem ser definidos através da linha de comandos (CMD) com o comando attrib, ou pela interface gráfica, clicando com o botão direito do rato no ficheiro ou pasta e selecionando "Propriedades". Funcionamento interno SOs SO II – 24/25 Principais Atributos de Ficheiros no Windows – cont. R (Read-only) – Somente leitura: Um ficheiro marcado como "somente leitura" não pode ser modificado. Pode ser lido, mas qualquer tentativa de alteração será bloqueada, a não ser que o atributo seja removido. Exemplo de uso na linha de comandos: attrib +R ficheiro.txt para definir um ficheiro como "somente leitura". A (Archive) – Arquivo: Este atributo é usado para marcar ficheiros que foram alterados desde o último backup. Programas de backup podem usar este atributo para identificar os ficheiros que precisam de ser incluídos num próximo backup incremental. Exemplo de uso na linha de comandos: attrib +A ficheiro.txt para definir um ficheiro como "arquivo". H (Hidden) – Oculto: Um ficheiro ou pasta com o atributo "oculto" não será mostrado por defeito no Explorador de Ficheiros, a menos que as opções de visualização estejam configuradas para mostrar ficheiros ocultos. Exemplo de uso na linha de comandos: attrib +H ficheiro.txt para tornar um ficheiro oculto. S (System) – Sistema: Indica que o ficheiro ou pasta é utilizado pelo sistema operativo, e geralmente não deve ser alterado ou apagado. Ficheiros de sistema são protegidos contra modificação ou eliminação acidental. Exemplo de uso na linha de comandos: attrib +S ficheiro.txt para definir um ficheiro como "de sistema". Funcionamento interno SOs SO II – 24/25 Principais Atributos de Ficheiros no Windows – cont. Permissões de segurança (ACL - Access Control List) Além dos atributos básicos, os ficheiros e pastas no Windows também podem ter permissões de segurança baseadas em listas de controlo de acesso (ACL). Estas listas permitem definir quais os utilizadores ou grupos que têm permissões específicas sobre um ficheiro ou pasta. Estas permissões podem ser configuradas na interface gráfica, clicando com o botão direito no ficheiro ou pasta, selecionando "Propriedades" e depois "Segurança". Funcionamento interno SOs SO II – 24/25 Principais Atributos de Ficheiros no Windows – cont. As principais permissões são: Full Control (Controle Total) – Dá ao utilizador todas as permissões possíveis, incluindo leitura, escrita, modificação e eliminação. Modify (Modificar) – Permite ao utilizador ler, escrever, modificar o conteúdo e apagar o ficheiro ou pasta. Read & Execute (Ler e Executar) – Permite ao utilizador ler o ficheiro e, se for um executável, executá-lo. Read (Ler) – Apenas permite a leitura do ficheiro ou pasta. Write (Escrever) – Permite a modificação ou criação de novos conteúdos no ficheiro ou pasta. Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Sendo um ficheiro um tipo abstrato de dados, as operações sobre ficheiros são fundamentais em qualquer sistema operativo, permitindo que os utilizadores, além das funções de escrita e leitura, possam criar, gravar, modificar, reposicionar, truncar e apagar ficheiros. Em sistemas operativos como Windows, Linux e macOS, existem várias operações padrão que podem ser realizadas sobre ficheiros, tanto através de interfaces gráficas como pela linha de comandos. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Criar ficheiro: Alocar espaço para o ficheiro no sistema de ficheiro Criar uma entrada para o novo ficheiro no diretório A entrada do diretório registra o nome do ficheiro e a sua posição no sistema de ficheiros, para além de outras informações Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Gravar ficheiro: Início da Operação: A aplicação que deseja gravar dados inicia o processo fazendo uma chamada ao sistema operativo. Esta chamada inclui o caminho do ficheiro onde os dados serão gravados e o conteúdo a ser escrito. Controlo de Acesso: O sistema operativo verifica se o utilizador ou a aplicação tem as permissões necessárias para gravar no ficheiro. Esta verificação é feita através das listas de controlo de acesso (ACL) associadas ao ficheiro. Se as permissões não forem adequadas (por exemplo, se o ficheiro for somente leitura), o sistema devolve um erro e a operação é interrompida. Caminho do Ficheiro: O sistema operativo utiliza o caminho do ficheiro fornecido na solicitação para localizar o ficheiro no sistema de ficheiros. Se o ficheiro já existir, o sistema irá abri-lo para edição; caso contrário, o sistema irá criar um novo ficheiro com o nome especificado. Preparação para Gravação: O sistema operativo prepara-se para escrever os dados no dispositivo de armazenamento. Se o ficheiro já existir, o sistema pode precisar de ler o conteúdo existente para preservar os dados que não serão alterados (dependendo do modo de abertura do ficheiro). Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Gravar ficheiro: Gravação do Conteúdo: O sistema operativo envia os dados a serem gravados do espaço da memória (onde a aplicação armazenou temporariamente os dados) para o dispositivo de armazenamento. Modificação de Metadados: Após os dados serem gravados, o sistema operativo atualiza os metadados do ficheiro. Isso inclui informações como a data e hora da última modificação, tamanho do ficheiro e, se aplicável, permissões de acesso. Finalização da Operação: Uma vez que a gravação é concluída, o sistema operativo pode devolver um status à aplicação, confirmando que a operação foi realizada com sucesso. A aplicação pode então proceder, sabendo que os dados foram armazenados. Fim da Operação: Após a gravação ser concluída, a aplicação deve fechar o ficheiro para liberar os recursos associados à operação de escrita. Este passo é importante para garantir que os dados sejam corretamente gravados e que o sistema operativo possa otimizar o acesso a outros ficheiros. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Ler ficheiro: Início da Operação: A aplicação que deseja ler um ficheiro inicia o processo fazendo uma chamada ao sistema operativo. Esta chamada inclui o caminho do ficheiro que se pretende ler e, em alguns casos, o modo de acesso (por exemplo, se é apenas leitura ou se se permite escrita) Controlo de Acesso: O sistema operativo verifica se o utilizador ou a aplicação tem as permissões necessárias para aceder ao ficheiro. Isso envolve a consulta das listas de controlo de acesso (ACL) associadas ao ficheiro. Se as permissões não forem adequadas, o sistema devolve um erro e a operação é interrompida. Caminho do Ficheiro: O sistema operativo utiliza o caminho do ficheiro fornecido na chamada para navegar pela estrutura do sistema de ficheiros. O sistema de ficheiros pode ser organizado em diretórios e subdiretórios, e o sistema operativo precisa encontrar a localização exata do ficheiro na árvore de diretórios. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Ler ficheiro: Leitura do Conteúdo: Uma vez encontrado o ficheiro, o sistema operativo comunica com o controlador de disco para aceder aos dados armazenados no suporte de armazenamento (disco rígido, SSD, etc.). Transferência de Dados: Os dados lidos do disco são transferidos para a memória RAM do sistema. Esta etapa é crucial, pois a memória é onde a aplicação pode aceder rapidamente aos dados. Retorno à Aplicação: Após os dados serem carregados na memória, o sistema operativo devolve um ponteiro ou referência à aplicação, permitindo-lhe aceder ao conteúdo do ficheiro. Fim da Operação: Após a leitura ser concluída, a aplicação pode fechar o ficheiro. O sistema operativo libera os recursos associados à operação de leitura e garante que as alterações (se houver) sejam corretamente gravadas, caso a aplicação tenha feito alguma modificação. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Reposicionar dentro de um ficheiro: Início da Operação: A aplicação ou utilizador que deseja modificar o conteúdo de um ficheiro inicia o processo ao fazer uma chamada ao sistema operativo. Esta chamada inclui o caminho do ficheiro que será modificado e o novo conteúdo a ser inserido. Controlo de Acesso: O sistema operativo verifica se o utilizador ou a aplicação tem permissões adequadas para modificar o ficheiro. Esta verificação é feita através das listas de controlo de acesso (ACL) associadas ao ficheiro. Se as permissões não forem adequadas (por exemplo, se o ficheiro for somente leitura), o sistema devolve um erro e a operação é interrompida. Preparação para Edição: O sistema operativo abre o ficheiro solicitado, permitindo que a aplicação aceda ao seu conteúdo. O ficheiro pode ser aberto em modos diferentes, como modo de leitura, modo de escrita ou modo de leitura/escrita, dependendo da operação que será realizada. Análise do Ficheiro: A aplicação pode ler o conteúdo atual do ficheiro, se necessário. Isso pode ser útil para decidir quais partes do ficheiro precisam ser alteradas. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Reposicionar dentro de um ficheiro: Execução da Reposição: A aplicação altera o conteúdo do ficheiro de acordo com a lógica de negócios ou a necessidade do utilizador. Isso pode incluir a adição, substituição ou remoção de partes do conteúdo existente. Dependendo da implementação, a aplicação pode modificar diretamente na memória ou preparar uma nova versão do conteúdo para substituir o antigo. Atualização do Ficheiro: Após a modificação, a aplicação escreve o novo conteúdo de volta para o ficheiro. O sistema operativo pode substituir completamente o conteúdo existente ou apenas escrever as partes alteradas, dependendo do método utilizado (por exemplo, usar operações de "overwrite" ou "append"). Fim da Operação: Após a gravação do novo conteúdo, a aplicação deve fechar o ficheiro. O sistema operativo libera os recursos associados à operação de edição. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Apagar ficheiro: Início da Operação: A aplicação ou o utilizador que deseja apagar um ficheiro inicia o processo ao fazer uma chamada ao sistema operativo. Esta chamada inclui o caminho do ficheiro a ser apagado. Controlo de Acesso: O sistema operativo verifica se o utilizador ou a aplicação tem as permissões necessárias para apagar o ficheiro. Esta verificação é feita através das listas de controlo de acesso (ACL) associadas ao ficheiro. Se as permissões não forem adequadas (por exemplo, se o ficheiro não puder ser apagado devido a restrições), o sistema devolve um erro e a operação é interrompida. Caminho do Ficheiro: O sistema operativo utiliza o caminho do ficheiro fornecido na solicitação para localizar o ficheiro no sistema de ficheiros. O sistema assegura que o ficheiro especificado existe e pode ser apagado. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros Apagar ficheiro: Remoção do Ficheiro: Dependendo do método de apagamento, o sistema operativo pode proceder de duas maneiras: Eliminação Permanente: O sistema remove completamente o ficheiro do sistema de ficheiros, libertando o espaço que ocupava e atualizando a estrutura do sistema de ficheiros para refletir essa eliminação. Movimento para a Reciclagem: Se a operação de apagar for realizada através de uma interface que suporte a Reciclagem (como no Windows), o ficheiro é movido para uma localização temporária, permitindo uma recuperação fácil posterior. Modificação de Metadados: O sistema operativo atualiza os metadados associados ao ficheiro e à pasta que o continha, assegurando que a informação sobre o ficheiro apagado seja removida da estrutura do sistema de ficheiros. Fim da Operação: O sistema operativo pode devolver um status à aplicação ou ao utilizador, confirmando que o ficheiro foi apagado com sucesso. Em algumas interfaces gráficas, pode ser apresentado um aviso ao utilizador sobre a conclusão da operação. Limpeza de Recursos: Se necessário, o sistema operativo liberta os recursos associados ao ficheiro que foi apagado, assegurando que o espaço em disco é otimizado para futuras operações. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros (Tabela de Ficheiros Abertos) A Tabela de Ficheiros Abertos (ou "Open File Table" em inglês) é uma estrutura de dados utilizada pelos sistemas operativos para gerir ficheiros que estão atualmente abertos por processos em execução, ou seja, é uma coleção de entradas, onde cada entrada corresponde a um ficheiro que foi aberto por um processo. Cada entrada contém informações sobre o ficheiro, incluindo o seu estado, localização no disco e o número de referências associadas a esse ficheiro. O seu principal propósito é facilitar o acesso e a manipulação de ficheiros abertos por diferentes processos. Quando um processo abre um ficheiro, o sistema operativo cria uma entrada correspondente na tabela, que permite que o processo aceda ao ficheiro sem precisar de conhecer detalhes sobre a sua localização no disco. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros (Tabela de Ficheiros Abertos) Cada entrada na Tabela de Ficheiros Abertos normalmente contém: Identificador do Ficheiro: Um número único ou identificador associado ao ficheiro aberto Localização do Ficheiro: O caminho ou endereço do ficheiro no sistema de ficheiros Modo de Acesso: Indica se o ficheiro está aberto para leitura, escrita ou ambos Cursor de Leitura/Escrita: Uma posição que indica onde as operações de leitura ou escrita devem ocorrer no ficheiro Contagem de Referências: O número de processos que têm o ficheiro aberto, o que ajuda o sistema a determinar quando o ficheiro pode ser fechado. Funcionamento interno SOs SO II – 24/25 Operações sobre ficheiros (Tabela de Ficheiros Abertos) Funcionamento Quando um processo abre um ficheiro, o sistema operativo verifica se o ficheiro já está na Tabela de Ficheiros Abertos. Se sim, aumenta a contagem de referências. Se não, cria uma nova entrada na tabela. Enquanto o ficheiro estiver aberto, o processo pode realizar operações como leitura, escrita sem precisar interagir diretamente com o sistema de ficheiros a cada vez. Quando um processo fecha o ficheiro, a contagem de referências na tabela é decrementada. Se a contagem chegar a zero, o sistema operativo pode remover a entrada da tabela e liberar os recursos associados. Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Organização Hierárquica de Nomes dos Ficheiros A organização hierárquica de nomes de ficheiros é um método utilizado pelos sistemas operativos para estruturar e organizar ficheiros de forma lógica e acessível. Este sistema utiliza uma estrutura semelhante a uma árvore, onde os ficheiros e diretórios (ou pastas) são organizados em níveis. A estrutura hierárquica começa na raiz, que é o ponto de partida do sistema de ficheiros. Em sistemas operativos como o Windows, é representada por letras de unidades, como C:\. A partir da raiz, podem existir vários diretórios. Cada diretório pode conter subdiretórios, formando uma estrutura em árvore. Funcionamento interno SOs SO II – 24/25 Organização Hierárquica de Nomes dos Ficheiros Caminhos Absolutos: Um caminho absoluto fornece a localização completa de um ficheiro, começando pela raiz. Por exemplo, c:\Documentos\Trabalho\projeto.txt. Caminhos Relativos: Um caminho relativo é baseado na localização atual do utilizador ou aplicação. Por exemplo, se o utilizador estiver na pasta Trabalho, o caminho para projeto.txt pode ser simplesmente projeto.txt. Nomes Descritivos: Os ficheiros dentro dos diretórios devem ter nomes descritivos para facilitar a identificação. Por exemplo, relatorio_2024.txt é mais informativo do que um nome genérico como ficheiro1.txt. Funcionamento interno SOs SO II – 24/25 Tipo de Ficheiro Extensão Descrição Documentos de Texto.docx Ficheiro do Microsoft Word (versão moderna).odt Ficheiro de texto do LibreOffice ou OpenOffice.pdf Ficheiro de documento portátil (Portable Document Format) Ficheiros de Dados.xlsx Ficheiro de folha do Microsoft Excel (versão moderna).csv Ficheiro de valores separados por vírgulas.xml Ficheiro de linguagem de marcação extensível Imagens.jpg Ficheiro de imagem em formato JPEG.png Ficheiro de imagem em formato Portable Network Graphics Extensões de Ficheiros: Os.gif Ficheiro de imagem em formato Graphics Interchange Format Áudio.mp3 Ficheiro de áudio em formato MPEG Audio Layer III nomes dos ficheiros muitas.wav Ficheiro de áudio em formato Waveform Audio File Format vezes incluem uma extensão Vídeo.mp4 Ficheiro de vídeo em formato MPEG-4.avi Ficheiro de vídeo em formato Audio Video Interleave que indica o tipo de ficheiro. Ficheiros Compactados.zip Ficheiro comprimido em formato ZIP.rar Ficheiro comprimido em formato RAR.tar Ficheiro de arquivo utilizado principalmente em Unix Programação e Script.html Ficheiro de documento HTML.css Ficheiro de folhas de estilo em cascata.java Ficheiro de código fonte Java Ficheiros de Sistema.exe Ficheiro executável no Windows.dll Ficheiro de biblioteca dinâmica (Dynamic Link Library).bat Ficheiro de script em lote no Windows Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Dispositivos de Memória Secundária Os dispositivos de memória secundária (ou memória secundária) desempenham um papel crucial para os sistemas de ficheiros e referem-se a dispositivos de armazenamento de dados que não fazem parte da memória principal (RAM) de um sistema, mas que servem para armazenar dados e informações de forma permanente ou a longo prazo e que não se perdem após desligar a energia. Funcionamento interno SOs SO II – 24/25 Exemplos de dispositivos de memória secundária Disco Rígido (HDD): O tipo mais comum de dispositivo de memória secundária. É usado para armazenar grandes quantidades de dados, como o sistema operativo, programas e ficheiros pessoais. Unidade de Estado Sólido (SSD): Uma versão mais moderna do disco rígido, mas sem partes móveis, oferecendo maior velocidade de acesso e melhor eficiência energética. Pen Drives e Cartões de Memória: Pequenos dispositivos de armazenamento portáteis usados para transferir e guardar ficheiros. Armazenamento Externo/Discos Externos: Discos rígidos ou SSDs externos usados para fazer backups ou transportar grandes volumes de dados entre dispositivos. Serviços de Armazenamento na Nuvem: Embora tecnicamente não seja um dispositivo físico, a nuvem (como Google Drive, OneDrive, etc.) pode ser considerada uma forma de memória secundária, onde os dados são armazenados em servidores remotos. Funcionamento interno SOs SO II – 24/25 Dispositivos de memória secundária Os sistemas de ficheiros são tradicionalmente usados para gerir informação armazenada em dispositivos de memória secundária (como discos rígidos ou SSDs), mas também podem ser úteis para gerir dados em memória volátil (RAM) em algumas situações específicas. Embora a RAM seja usada principalmente para armazenar dados temporários que são perdidos ao desligar o sistema, há cenários onde pode ser vantajoso aplicar conceitos de sistemas de ficheiros para gerir essa informação. Discos RAM (RAM disks): É uma porção da memória volátil (RAM) que é formatada como se fosse um disco rígido, permitindo que o sistema de ficheiros a trate como uma unidade de armazenamento tradicional. É útil em aplicações que requerem acesso extremamente rápido aos dados, como: Edição de vídeo ou imagem, onde ficheiros temporários podem ser armazenados na RAM para acelerar o processo. Jogar ou carregar dados pesados de jogos, onde ficheiros temporários (como cache) são geridos com maior rapidez. O sistema de ficheiros no disco RAM permite um acesso organizado e rápido aos dados temporários, eliminando os tempos de espera de leitura/escrita associados ao armazenamento em dispositivos tradicionais. Funcionamento interno SOs SO II – 24/25 Organização (Visão Lógica Utilizador) A visão lógica é centrada na forma como o utilizador interage com ficheiros e pastas, isto é, como o sistema de ficheiros é apresentado ao utilizador, ou seja, como os dados são organizados e acedidos de forma intuitiva e abstrata, sem a necessidade de entender os detalhes técnicos do funcionamento interno. Estrutura Hierárquica de Diretórios: O utilizador vê os dados organizados em pastas e subpastas (diretórios), que contêm ficheiros. Esta estrutura hierárquica ajuda a organizar os dados de forma simples e acessível. Exemplo: O utilizador pode ver o caminho C:\Utilizadores\João\Documentos\Trabalho.docx, que indica a localização de um ficheiro dentro de várias pastas. Ficheiros e Extensões: Os ficheiros são apresentados com nomes legíveis e extensões, como.docx,.txt,.jpg, que indicam o tipo de ficheiro e a sua associação com aplicações específicas. Isto permite que o utilizador reconheça o conteúdo sem precisar abrir o ficheiro. Funcionamento interno SOs SO II – 24/25 Organização (Visão Lógica Utilizador) Ações Simples: A visão lógica oferece ao utilizador a capacidade de realizar ações simples como criar, eliminar, mover e renomear ficheiros e pastas, sem precisar de saber como o sistema processa fisicamente essas operações. Metadados: O sistema de ficheiros também apresenta ao utilizador informações adicionais (metadados) sobre os ficheiros, como a data de criação, última modificação, tamanho, e permissões de acesso (leitura, escrita). Partições e Unidades: O utilizador vê o armazenamento como unidades lógicas (ex.: C:, D:) que podem representar partições de discos físicos, mesmo que não tenha consciência da estrutura física subjacente. Simplicidade: O utilizador não precisa de saber em que setor ou bloco de um disco rígido o ficheiro está armazenado, apenas precisa de interagir com as pastas e ficheiros num formato compreensível. Funcionamento interno SOs SO II – 24/25 Organização (Visão Física do Sistema) A visão física é a forma como o sistema operativo gere e organiza os dados de forma a armazená-los e recuperá-los eficazmente no dispositivo de armazenamento físico (ex.: disco rígido, SSD, pen drive). Mapeamento entre Visão Lógica e Física: O sistema de ficheiros mantém uma correspondência entre a estrutura lógica de diretórios e ficheiros vista pelo utilizador e a sua localização física no dispositivo de armazenamento. Isto permite que, quando o utilizador acede a um ficheiro, o sistema saiba exatamente onde procurar no disco físico. Metadados de Baixo Nível: Além dos metadados que o utilizador vê, o sistema de ficheiros também mantém informações de baixo nível (como permissões de acesso, datas de modificação e localização física dos ficheiros), que são usados para gerir o acesso e a organização dos ficheiros no nível físico, para alocar porções livres a ficheiros em criação ou expansão e libertar zonas ocupadas pelos ficheiros removidos. Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Estrutura Interna do Sistema de Ficheiros Todos os sistemas de ficheiros definem um conjunto de estruturas de memória para os ajudar a gerir a informação persistente mantida em disco, com o objetivo de criar e gerir os canais virtuais entre as aplicações e a informação em disco, aumentar o desempenho do sistema mantendo a informação em caches e tolerar eventuais faltas. As tabelas de ficheiros abertos são fundamentais para gerir o acesso a ficheiros enquanto estes estão a ser usados por aplicações. Estas tabelas permitem que o sistema mantenha informações sobre todos os ficheiros que estão atualmente abertos, garantindo que as operações de leitura, escrita e atualização de dados sejam realizadas de forma eficiente e segura. Existem dois tipos principais de tabelas de ficheiros abertos: a Tabela de Ficheiros Abertos Global e a Tabela de Ficheiros Abertos por Processo. Funcionamento interno SOs SO II – 24/25 Tabela de Ficheiros Abertos Global Esta tabela contém informações sobre todos os ficheiros que estão atualmente abertos no sistema, independentemente de qual aplicação ou processo os abriu e é necessária para evitar conflitos, por exemplo, garantindo que dois processos não tentem escrever simultaneamente no mesmo ficheiro de forma inconsistente. Contém os seguintes dados: Nome do ficheiro: O caminho do ficheiro no sistema de ficheiros. Posição no disco: A localização física do ficheiro no dispositivo de armazenamento. Modo de acesso: Indica se o ficheiro está aberto para leitura, escrita, ou ambos. Ponteiro de leitura/escrita: Indica a posição atual dentro do ficheiro, permitindo ao sistema saber onde ler ou escrever dados. Contador de referências: Um contador que regista o número de processos que estão a aceder ao ficheiro. Isto permite que o sistema determine quando o ficheiro pode ser fechado — apenas quando todos os processos que o estão a usar o fecharem. Funcionamento interno SOs SO II – 24/25 Tabela de Ficheiros Abertos por Processo Cada processo que abre um ficheiro mantém a sua própria tabela de ficheiros abertos, que contém referências a entradas na Tabela Global de Ficheiros Abertos. Esta tabela serve para que o processo possa aceder aos ficheiros de forma organizada e permite ao processo interagir com os ficheiros de forma isolada, mantendo o controlo sobre as operações de I/O (entrada/saída) sem precisar de interagir diretamente com a tabela global. Contém os seguintes dados: Descritor de ficheiro: Um identificador único para cada ficheiro aberto pelo processo. Este descritor é usado pelas funções do sistema operativo (como read ou write) para identificar o ficheiro com o qual o processo está a interagir. Modo de acesso: Regista se o processo abriu o ficheiro para leitura, escrita ou ambos. Ponteiro de ficheiro: Indica a posição no ficheiro onde o próximo acesso será feito. Cada processo pode ter o seu próprio ponteiro para o mesmo ficheiro, permitindo múltiplos acessos simultâneos Funcionamento interno SOs SO II – 24/25 Importância das Tabelas de Ficheiros Abertos Sincronização e Acesso Concorrente: Através das tabelas de ficheiros abertos, o sistema operativo consegue garantir que múltiplos processos podem aceder ao mesmo ficheiro sem interferências, controlando o acesso concorrente. Se um ficheiro estiver aberto para escrita, por exemplo, o sistema pode bloquear outros processos de o abrir simultaneamente para escrita, evitando corrupção de dados. Eficiência: A tabela global de ficheiros abertos minimiza o número de vezes que o sistema precisa de aceder ao disco para localizar e identificar ficheiros, já que mantém uma lista em memória de todos os ficheiros atualmente abertos. Gestão de Recursos: As tabelas ajudam a monitorizar e gerir os recursos do sistema, garantindo que os ficheiros são devidamente fechados e que não há ficheiros abertos desnecessariamente a consumir memória e outros recursos. Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 MBR ‐ Master Boot Record A MBR (Master Boot Record) é um setor especial de um disco, que contém informações essenciais para o arranque (boot) de um computador e para a gestão das partições no disco. Este setor encontra-se no primeiro bloco (setor 0, cilindro 0, cabeça 0) e é carregado para a memória pelo BIOS (ou UEFI em modo de compatibilidade) durante o processo de arranque do sistema. É uma entidade fundamental para localizar e executar um sistema operativo, porque o código e os dados de que é composto um sistema operativo, estão armazenados persistentemente e antes de o executar não é possível utilizar os seus mecanismos normais de acesso a ficheiros pois o sistema de ficheiros ainda não foi carregado. É necessário um outro sistema de armazenamento alternativo que permita a leitura e execução do SO, independente do tipo de sistema de ficheiros e do tipo de sistema operativo. Funcionamento interno SOs SO II – 24/25 Estrutura da MBR A MBR ocupa os primeiros 512 bytes do disco e tem uma estrutura específica composta por várias partes importantes: Código de arranque (Bootloader) – 446 bytes: Esta parte contém o código de arranque que é responsável por iniciar o processo de arranque do sistema operativo. Tabela de Partições – 64 bytes: A tabela de partições contém informações sobre até quatro partições primárias no disco, incluindo: Tipo de partição (ex.: FAT32, NTFS, EXT4). Endereço inicial e tamanho de cada partição em blocos. Estado de ativação: Indica qual partição está ativa (bootável), ou seja, de onde será iniciado o sistema operativo. Assinatura de Arranque (Boot Signature) – 2 bytes: Os últimos dois bytes do MBR contêm a assinatura de arranque, que é um número especial (0x55AA) usado para verificar se o setor MBR é válido. Se o BIOS não encontrar esta assinatura, assume que o MBR está corrompido e o processo de arranque falha. Funcionamento interno SOs SO II – 24/25 Funções da MBR Gestão das Partições: A MBR contém a tabela de partições, que descreve como o disco está dividido em diferentes partições e onde estas estão localizadas. Isso permite que o sistema operativo ou outras ferramentas de gestão de discos identifiquem as partições e saibam como aceder aos dados nelas contidos. Início do Processo de Arranque: O código de arranque na MBR é o primeiro código executado pelo computador após o BIOS. A sua função principal é localizar a partição ativa no disco, carregar o seu setor de arranque (boot sector) para a memória e passar o controlo para ele, que, por sua vez, inicia o carregamento do sistema operativo. Partições Primárias e Estendidas: A MBR só permite a existência de até quatro partições primárias, mas pode conter uma partição estendida. Esta partição estendida pode ser subdividida em várias partições lógicas, permitindo uma maior flexibilidade no uso do espaço do disco. Funcionamento interno SOs SO II – 24/25 Alternativa Moderna Devido às limitações do MBR, surgiu o GPT (GUID Partition Table) como uma alternativa mais moderna, especialmente com a transição para sistemas com UEFI. Permite gerir discos com mais de 2 TB, criar um número quase ilimitado de partições e oferece redundância de dados críticos (o GPT guarda múltiplas cópias da tabela de partições). Funcionamento interno SOs SO II – 24/25 Sistema de Ficheiros Estrutura Interna do Sistema de Ficheiros Introdução ao sistema de ficheiros MBR ‐ Master Boot Record Constituição dos sistemas de ficheiros Atributos Tipos de Sistema de Ficheiros Windows Operações sobre ficheiros FAT, FAT32, NTFS, ReFS, … Organização Hierárquica dos Nomes dos Ficheiros Estrutura Interna dos Sistemas de Armazenamento: Dispositivos de Memória Secundária Organização (Visão Lógica Utilizador e Visão Física Sistema) Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Sistemas de ficheiros mais conhecidos: Apple Macintosh (Mac OS) HFS HFS+ UNIX (FreeBSD, OpenBSD, Linux, Solaris, Red Hat, Android, etc.) UFS Ext, Ext2, Ext3, Ext4 SWAP Reiser HPFS JFS, XFS, ZFS Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows MS‐DOS/Microsoft Windows FAT 12 ‐ MSDOS 4.0 FAT 16 ou FAT ‐ DOS 4.0 ou superior / Windows 1.X ou superior (1.x, 2.x, 3.x, 95, 98, ME, 2000, XP,...) FAT 32 ‐ MS‐DOS 7.1 e 8.0 / Windows 95, ou superior (98, ME, NT, 2000, XP...) ExFAT ‐ FAT Estendido, também conhecido como FAT64, Windows XP ou superior ( Vista, 7...) NTFS ‐ Windows NT ou superior (NT, 2000, XP, 2003 Server,...) ReFS – Windows 8, Windows 10, Windows server 2016, … Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - FAT O sistema de ficheiros FAT (File Allocation Table) é um dos sistemas de ficheiros mais simples e antigos, criado originalmente pela Microsoft nos anos 1970. Ele foi amplamente utilizado no MS- DOS e as primeiras versões do Windows. Ainda hoje, devido à sua simplicidade e compatibilidade universal, é muito utilizado em dispositivos como cartões de memória, pendrives e outros sistemas de armazenamento portáteis. Principais versões: FAT12: A versão original do FAT, usada em disquetes e outros dispositivos com pouca capacidade. FAT16: Uma evolução que permite o endereçamento de volumes maiores (até 2 GB, dependendo do tamanho dos clusters). Foi utilizado nos primeiros discos rígidos e versões de sistemas como MS-DOS. FAT32: Introduzido com o Windows 95, permite volumes até 2 TB e é a versão mais comum em dispositivos de armazenamento amovíveis. O FAT32 melhorou a eficiência em discos maiores, mas tem limitações, como o tamanho máximo de ficheiros de 4 GB. Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - FAT É utilizada uma Tabela de Alocação de Ficheiros, que é essencialmente uma lista que indica o estado dos clusters no disco, ou seja, se estão livres, ocupados ou danificados. Para proteger o volume, são mantidas duas cópias da FAT, no caso de uma delas se danificar. Tabela FAT: Armazena a informação sobre o estado de cada cluster. Quando um ficheiro é gravado no disco, a FAT é atualizada com os clusters ocupados pelo ficheiro, porque, apesar de consumir tempo, se a tabela da FAT não for atualizada regularmente, pode levar à perda de dados. Boot Sector: Contém informações sobre o sistema de ficheiros, como o tamanho da FAT, o número total de sectores, e detalhes sobre a partição. Root Directory (directório raiz): Em versões mais antigas (FAT12 e FAT16), o directório raiz tinha um tamanho fixo e estava localizado numa posição específica no disco. No FAT32, o directório raiz pode ser maior e dinâmico. Clusters: São as unidades de armazenamento. Dependendo do tamanho da partição, o tamanho de cada cluster pode variar, influenciando o uso eficiente do espaço. Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - FAT Vantagens: Compatibilidade universal: O FAT é suportado por praticamente todos os sistemas operativos, como Windows, macOS, Linux, e mesmo dispositivos como câmaras fotográficas e consolas de jogos. Simplicidade: É fácil de implementar e não requer muitos recursos computacionais. Desvantagens: Limitações de tamanho: O FAT32 limita o tamanho máximo de ficheiros a 4 GB, o que pode ser insuficiente para vídeos, backups ou grandes bases de dados. Fragmentação: Devido à forma como os ficheiros são armazenados, o FAT tende a fragmentar os dados, o que pode reduzir a performance ao longo do tempo. Falta de segurança: Não tem mecanismos de permissões avançadas ou de encriptação, como sistemas de ficheiros modernos (por exemplo, NTFS ou ext4). Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - FAT Convenção de nomenclatura da FAT Nas versões FAT12 e FAT16, os nomes dos ficheiros seguiam o chamado formato 8.3, que limita o nome do ficheiro a: Máximo de 8 caracteres no nome base, um separador de ponto (.) e 3 caracteres na extensão. Caracteres permitidos: Letras maiúsculas (A–Z), números (0–9) e alguns caracteres especiais como o underscore (_), til (~), e símbolo do dólar ($). Sem distinção entre maiúsculas e minúsculas, não são permitidos espaços, nem caracteres como: \/.:;*?"|=, que são considerados inválidos. Nomes reservados: COM, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LTP3, PRN, NUL Extensões: A extensão era opcional, mas quando presente, seguia a convenção de 3 caracteres. Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - FAT Convenção de nomenclatura da FAT Com o FAT32, foi introduzido o suporte a nomes de ficheiros longos (LFN - Long File Names), permitindo: Até 255 caracteres no nome completo (incluindo a extensão). Caracteres permitidos: A maioria dos caracteres ASCII, incluindo espaços, pontuação e acentos (com exceção de alguns caracteres reservados: \ / : * ? " < > |). Case-insensitive, mas preserva maiúsculas/minúsculas no nome armazenado. Compatibilidade retroativa: Nomes longos podem ser automaticamente convertidos para o formato 8.3, se necessário, para manter a compatibilidade com versões anteriores do FAT12 e FAT16, o FAT32. Por exemplo: Um ficheiro chamado Documento Importante.txt pode ser gravado também como DOCUME~1.TXT para garantir que sistemas mais antigos ainda possam aceder ao ficheiro. Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - NTFS O NTFS (New Technology File System) foi desenvolvido pela Microsoft e introduzido em 1993 com o Windows NT. É uma evolução do sistema FAT (File Allocation Table), que tinha algumas limitações, especialmente em termos de segurança, eficiência e suporte para grandes volumes de dados. O NTFS é amplamente utilizado em versões modernas do Windows, incluindo Windows 10 e 11. Os principais objetivos do NTFS são: Confiabilidade Orientado para sistemas high‐end e servidores de ficheiros Plataforma para funcionalidades adicionais Remover as desvantagens da FAT Funcionamento interno SOs SO II – 24/25 Vantagens do NTFS Aceita volumes de até 256 TB utilizando tamanho de cluster de 64kb e pode lidar com discos rígidos e partições de grande capacidade, suportando ficheiros individuais com tamanhos superiores a 16 terabytes, o que é uma grande vantagem face a sistemas de ficheiros mais antigos, como o FAT32, que limita o tamanho dos ficheiros a 4 GB. O tamanho do ficheiro é limitado apenas pelo tamanho do volume e permite utilizar nomes de ficheiros com até 255 caracteres e caminhos completos (incluindo diretórios) com até 32.767 caracteres. Aceita nomes de volumes até 32 caracteres; Oferece suporte nativo para compressão de ficheiros e pastas, permitindo economizar espaço em disco. Além disso, suporta encriptação de ficheiros através do EFS (Encrypting File System), o que melhora a segurança, especialmente em dispositivos móveis ou partilhados. Funcionamento interno SOs SO II – 24/25 Vantagens do NTFS Oferece suporte para a clusters de 512 bytes; É um sistema de arquivos muito mais seguro que o FAT, porque perrmite políticas de segurança e gestão através do seu sistema de permissões e controlo de acesso a ficheiros e pastas, baseado no modelo ACL (Access Control List). Este permite definir quem pode ler, escrever ou executar um determinado ficheiro ou pasta, garantindo maior segurança em ambientes multiutilizador. É um sistema de ficheiros com journaling, o que significa que regista alterações antes de as aplicar. Isto ajuda a garantir a integridade dos dados em caso de falhas de energia ou falhas do sistema, permitindo recuperar facilmente o sistema de ficheiros para um estado consistente. Funcionamento interno SOs SO II – 24/25 Vantagens do NTFS Embora o NTFS seja mais eficiente em minimizar a fragmentação de ficheiros comparado ao FAT, ainda pode ocorrer fragmentação ao longo do tempo, o que pode reduzir o desempenho do sistema. Para mitigar este problema, existem ferramentas de desfragmentação no próprio Windows Permite associar metadados a ficheiros, como autor, título ou data de criação. Adicionalmente, suporta atributos estendidos, o que permite que aplicações armazenem informação adicional sobre ficheiros Controlo de quotas de disco que permite ao administrador do sistema definir limites sobre a quantidade de espaço em disco que um utilizador pode utilizar, o que é útil em ambientes empresariais ou em servidores. Funcionamento interno SOs SO II – 24/25 Algumas desvantagens do NTFS Foi desenvolvido pela Microsoft e é nativamente suportado apenas por sistemas Windows. Em sistemas operativos como macOS e Linux, o suporte é limitado. Por exemplo, no macOS, o NTFS pode ser lido, mas não pode ser escrito sem software adicional. No Linux, embora existam drivers que permitem leitura e escrita em NTFS, estes nem sempre funcionam perfeitamente. Em dispositivos de armazenamento removíveis, como pen drives e cartões de memória, o NTFS pode não ser a melhor escolha, porque tem uma sobrecarga maior em comparação com sistemas de ficheiros mais simples, como o FAT32 ou o exFAT, o que pode resultar em menor desempenho em dispositivos de baixa capacidade ou mais lentos. Utiliza mais recursos de processamento e memória para gerir as suas funcionalidades avançadas, como o journaling, as permissões de ficheiros e a compressão. Em sistemas mais antigos ou com hardware limitado, este consumo de recursos pode causar uma ligeira diminuição do desempenho global, especialmente quando comparado com sistemas de ficheiros mais simples como o FAT32. Funcionamento interno SOs SO II – 24/25 Algumas desvantagens do NTFS Se ocorrer uma falha grave no disco ou no sistema de ficheiros NTFS, a recuperação de dados pode ser mais difícil em comparação com sistemas de ficheiros mais simples. A complexidade do NTFS, juntamente com o uso de journaling e permissões avançadas, pode complicar o processo de recuperação de ficheiros corrompidos ou perdidos. Em configurações de dual boot, onde um utilizador utiliza mais do que um sistema operativo (por exemplo, Windows e Linux no mesmo computador), podem surgir problemas na gestão de partições NTFS. A partilha de ficheiros entre sistemas com diferentes suportes para NTFS pode resultar em incompatibilidades ou riscos de perda de dados, a menos que sejam tomadas precauções adequadas. Funcionamento interno SOs SO II – 24/25 Convenções de nomenclatura do NTFS Comprimento dos nomes de ficheiros e pastas Os nomes de ficheiros e pastas no NTFS podem ter até 255 caracteres, incluindo espaços. O caminho completo (incluindo diretórios e subdiretórios) pode ter um comprimento máximo de 32.767 caracteres quando representado no formato Unicode. Sensibilidade a maiúsculas e minúsculas O NTFS não diferencia maiúsculas de minúsculas no nome de ficheiros ou pastas, no entanto, mantém o formato de maiúsculas e minúsculas utilizado ao criar o ficheiro ou a pasta, Ou seja, o sistema trata ficheiros com nomes como “DOCUMENTO.TXT", "Documento.txt" e "documento.txt" como sendo o mesmo ficheiro, mas visualmente mantém a formatação original. Funcionamento interno SOs SO II – 24/25 Convenções de nomenclatura do NTFS Caracteres permitidos e proibidos Os nomes de ficheiros e pastas no NTFS podem incluir a maioria dos caracteres alfanuméricos (letras e números) e alguns caracteres especiais. No entanto, existem caracteres proibidos que não podem ser utilizados porque têm funções específicas no sistema de ficheiros : \ (barra invertida), / (barra) e | (barra vertical) : (dois pontos) * (asterisco) e " (aspas) ? (ponto de interrogação) < (menor que) e > (maior que) Caracteres permitidos: Pode-se utilizar espaços, pontos e a maioria dos caracteres especiais, como !, @, #, %, &, e _. Funcionamento interno SOs SO II – 24/25 Convenções de nomenclatura do NTFS Extensões de ficheiros As extensões de ficheiros (por exemplo,.txt,.jpg,.exe) são usadas no Windows para identificar o tipo de ficheiro e a aplicação associada Uso de ponto final nos nomes Apesar de o ponto ser permitido dentro do nome (por exemplo, para separar a extensão do ficheiro), o Windows e o NTFS removem automaticamente o ponto final de um nome ao gravar o ficheiro ou a pasta. Nomes reservados Não permite que certos nomes reservados: COM PRN AUX NUL COM1, COM2,... até COM9 LPT1, LPT2,... até LPT9. Estes nomes foram herdados das versões anteriores do MS-DOS e do Windows e são utilizados para dispositivos de hardware ou canais de comunicação. Funcionamento interno SOs SO II – 24/25 Tipos de Sistema de Ficheiros Windows - ReFS Os utilizadores do Windows necessitam duma plataforma económica que maximize a disponibilidade de dados, ofereça dimensionamento eficiente para conjuntos de dados de grandes dimensões, que suporte cargas de trabalho diversificadas e garanta a integridade dos dados através da resiliência aos danos (capacidade de responder a uma alteração, independentemente de ser uma falha de software ou hardware). Como uma alternativa mais moderna ao NTFS, o sistema de ficheiros ReFS (Resilient File System) foi desenvolvido pela Microsoft e introduzido pela primeira vez com o Windows Server 2012, tendo como objetivo de melhorar a resiliência, a eficiência na gestão de grandes volumes de dados e a tolerância a falhas, sendo particularmente utilizado em ambientes de armazenamento de grandes dimensões e servidores. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Integridade de dados O ReFS usa um mecanismo chamado Copy-on-Write (CoW) para gerir alterações de dados e metadados. Quando uma alteração é feita, o ReFS cria uma nova cópia dos dados em vez de modificar os dados existentes diretamente. Este processo assegura que, em caso de falha no meio de uma operação, os dados originais não são afetados, preservando assim a sua integridade. Armazena dados de uma forma que os protege de muitos dos erros comuns que normalmente podem causar a perda de dados e quando é utilizado em conjunto com um espaço espelhado ou um espaço de paridade (Sistemas RAID), os danos detetados podem ser reparados automaticamente. Existem ainda os cmdlets do Windows PowerShell (Get‐FileIntegrity e Set‐FileIntegrity) que pode utilizar para gerir as políticas de integridade e limpeza dos discos. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Correção de Erros Proactiva Trabalha em conjunto com a arquitetura Copy-on-Write (CoW) e as somas de verificação (checksums). Cada bloco de dados e de metadados armazenado no sistema de ficheiros tem uma soma de verificação associada, que é uma espécie de "impressão digital" dos dados que permite verificar se os mesmos estão intactos ou corrompidos.As capacidades de integridade do ReFS são aproveitadas por um analista de integridade de dados, também denominado de limpeza de dados. O analista de integridade analisa periodicamente o volume, identificando danos latentes e acionando proactivamente a reparação dos dados danificados. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Resiliência a falhas Dá prioridade à disponibilidade dos dados e foi projetado com foco na tolerância a falhas, garantindo a integridade dos dados. Uma das suas características mais notáveis é a capacidade de detetar e corrigir automaticamente corrupções de dados através de somas de verificação (checksums) para os metadados e, opcionalmente, para os próprios dados do ficheiro. Se uma corrupção for detectada, o ReFS pode reparar automaticamente os dados se existir uma cópia saudável disponível, sem a necessidade de desligar o sistema, como acontece com os sistemas de ficheiros mais antigos. Por este motivo não tem um comando chkdsk offline. Quando os metadados de uma pasta ReFS ficam danificados, as subpastas e os ficheiros associados são recuperados automaticamente e permanecendo online. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Escalabilidade Foi desenhado para suportar grandes volumes de dados, permitindo lidar com tamanhos massivos de ficheiros, partições e sistemas de armazenamento. Algumas das suas capacidades de escalabilidade incluem: Tamanho máximo de ficheiro: 35 petabytes (PB) Tamanho máximo de volume: 35 petabytes Número de ficheiros: infinito (limitado apenas pelo espaço em disco) Tamanho de um nome de ficheiro: 32.768 caracteres Estas características tornam o ReFS ideal para cenários de armazenamento de grandes dimensões, como datacenters ou sistemas com grandes volumes de ficheiros. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Desempenho otimizado para cargas específicas Foi otimizado para certos tipos de carga de trabalho, particularmente aquelas que envolvem grandes volumes de dados e gravações intensivas. Como tal, é frequentemente utilizado em servidores de ficheiros, infraestruturas de virtualização (como o Hyper-V) e sistemas de armazenamento em grande escala. Por exemplo, no contexto de máquinas virtuais Hyper-V, o ReFS tem a capacidade de criar ficheiros VHDX fixos (utilizados para armazenar discos de máquinas virtuais) muito rapidamente, uma vez que não precisa de escrever zeros no disco ao criar ficheiros de grande dimensão. Isto melhora significativamente o desempenho de certas operações. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Compatibilidade com NTFS Apesar de ter sido criado como um substituto do NTFS, o ReFS não é uma evolução direta, mas sim um sistema de ficheiros distinto. Embora o ReFS tenha várias melhorias em relação ao NTFS, ele não suporta todas as funcionalidades que o NTFS oferece, o que pode ser uma limitação em alguns casos: Encriptação de ficheiros (EFS): Não suporta nativamente a encriptação de ficheiros. Desfragmentação: Não requer desfragmentação, o que é uma vantagem, mas também não suporta a desfragmentação manual que é possível no NTFS. Compressão de ficheiros: Ao contrário do NTFS, não permite a compressão de ficheiros e pastas diretamente. Suporte para sistema de ficheiros de nomes curtos (8.3): Não oferece compatibilidade com os nomes de ficheiros no formato 8.3, usado em versões mais antigas do Windows e MS-DOS. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Integrado com o Storage Spaces É frequentemente utilizado em conjunto com o Storage Spaces, uma tecnologia da Microsoft que permite agrupar discos físicos num único volume de armazenamento virtual. Com essa integração, o ReFS pode beneficiar de redundância a nível físico, protegendo os dados em caso de falha de discos. Quando utilizado com Storage Spaces, o ReFS pode automaticamente corrigir ficheiros corrompidos usando cópias redundantes, graças à sua integração com pools de armazenamento em mirror ou paridade. Esta capacidade de auto-correção é um dos grandes benefícios para utilizadores de sistemas empresariais. Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Embora o ReFS tenha sido inicialmente introduzido para servidores, está também disponível a partir do Windows 8.1, embora o seu uso principal esteja voltado para cenários empresariais e de servidor. O NTFS já morreu? Não... Está bem e recomenda-se! Por enquanto o ReFS destina‐se apenas a um caso de uso especial: grandes volumes de dados em servidores de arquivos. O NTFS ainda é a opção padrão do sistema de arquivos no Windows Server 2012 ou superior e destina‐se a todas as outras necessidades gerais do sistema de arquivos (Ex: gestão de quotas). Funcionamento interno SOs SO II – 24/25 Características e funcionalidades ReFS Para usarmos o ReFS, é necessário formatar o volume, conforme mostrado na figura seguinte: SO II – 24/25