Fundamentos sistemas op
Tópicos:
Journaling
HFS - Hierarchical File System
JFS - Journaling File System
Thread
Modelo de Geração de Multithreads
Você Sabia?
Journaling
Um sistema de arquivos com journaling dá permissão ao Sistema Operacional de manter um log (journal), de todas as mudanças no sistema de arquivos antes de escrever os dados no disco. Normalmente este log é um log circular alocado em uma área especial do sistema de arquivos.
Este tipo de sistema de arquivos tem a oferecer uma melhor probabilidade de não sofrer corrupção de dados no caso de o sistema travar ou faltar energia, e uma recuperação mais rápida, pois não necessita verificar todo o disco, somente aqueles que pertenciam a um log que não fora fechado devidamente.
Exemplos de sistemas de arquivos que suportam journaling, HFS+, Ext3, Ext4, JFS,
JFFS, JFFS2, LogFS, NTFS, Reiser4, ReiserFS e XFS.
A principal diferença entre o Ext2 e o Ext3 é a implementação do journaling, que consiste em um registro (log ou journal) de transações cuja finalidade é recuperar o sistema em caso de desligamento não programado.
Há três níveis de journaling disponíveis na implementação do Ext3:
Writeback: os metadados são escritos no journal mas não o conteúdo dos arquivos. Essa opção permite um melhor desempenho em relação ao modo journal, porém introduz o risco de escrita fora de ordem.
1
Journal: os metadados e os dados (conteúdo) dos arquivos são escritos no journal antes de serem de fato escritos no sistema de arquivos principal. Isso aumenta a confiabilidade do sistema com uma perda de desempenho, devido a necessidade de todos os dados serem escritos no disco duas vezes.
Ordered: é como o writeback, mas força que a escrita do conteúdo dos arquivos seja feita após a marcação de seus metadados como escritos no journal. Esse é considerado um meio-termo aceitável entre confiabilidade e performance, sendo, portanto, o nível padrão.
Prof. Carlos