Sistema FSYNC Ligue para C

Sistema FSYNC Ligue para C

“Você pode ter ouvido muito sobre a estrutura básica do idioma C e sua simplicidade, porque a maioria dos desenvolvedores tende a aprender primeiro antes de aprender qualquer outro idioma. Possui uma chamada ou função do sistema fsync () que libera (passa) todas as atualizações no disco para refletir as alterações feitas em um arquivo. Além disso, a função FSYNC interrompe o processo de Flush até que todas as atualizações que ocorram por vários processos em um único arquivo foram feitas, e então o rubor aconteceria usando a chamada de função fsync (). Este artigo demonstrará o funcionamento da função fsync () na linguagem C.

Qualquer sistema em que você esteja trabalhando ou instalado seu ambiente de codificação deve ser atualizado e atualizado para que os novos erros possam ser bem encontrados, e podemos evitar qualquer inconveniente. Portanto, é recomendável atualizar seu sistema, especialmente o sistema Linux, antes e depois de qualquer instalação e configurações. Assim, o utilitário "apt" é o melhor a ser usado para atualizar com os direitos "sudo" no console. Se ele solicitar sua permissão solicitando uma senha, você deve fornecê -la. Em um momento de segundos, seu sistema será atualizado.”

Atualização $ sudo apt-get

Da mesma maneira, você deve atualizar seu sistema Linux com o utilitário recomendado i.e. "Apt" com direitos "sudo". O processo de atualização pode demorar um pouco mais do que o processo de atualização.

Este processo pode exigir confirmação. Você pode chamá -lo de uma etapa segura, onde receberá informações sobre o espaço que esse processo exige do seu sistema. Se esse espaço não se incomodar em prosseguir com esta instalação, use a tecla "y" para confirmação. Depois disso, seu sistema será atualizado com novos recursos.

Depois que todos os pré -requisitos necessários são instalados e configurados em nosso sistema, é necessário configurar o compilador de C também. Use o comando apresentado no console para fazer isso.

Exemplo

O conceito de arquivo é muito conhecido entre os desenvolvedores, especialmente quando você trabalha muito em linguagens de programação orientadas a objetos, algumas linguagens estruturais e linguagens processuais simples. Este exemplo C seria uma grande ajuda para qualquer desenvolvedor, porque o idioma C é a linguagem de aprendizado mais básica para cada aluno de programação e eles preferem aprender. Portanto, estamos iniciando este exemplo com as bibliotecas C básicas que precisam ser importadas para esse código para usar diferentes funções C, juntamente com algumas funções de arquivamento.

As duas primeiras bibliotecas são as bibliotecas padrão para usar as funções "entrada" e "saída", mutáveis ​​e fluxos nos códigos. Em outras palavras, essas duas bibliotecas nos ajudam a criar um fluxo de entrada de fora ou dentro e a gerar saídas facilmente. Lá vem o “fcntl.H ”Cabeçalho de C. É o cabeçalho principal que não podemos perder quando queremos trabalhar em arquivos do nosso sistema.

Depois disso, o uso de “sistemas/tipos.H ”e“ SYS/STAT.As bibliotecas de cabeçalho H ”nos permitem usar diferentes tipos de dados e estatísticas no código, i i.e., Personagens, ponteiros, funções Exit (), etc. Junto com isso, alguns tipos de arquivamento também podem ser utilizados usando as três bibliotecas acima mencionadas, eu.e., Leia e escreva operações. Por fim, temos uma corda.h um unistd.h cabeçalho que é usado principalmente para fazer uso de string mutável e funções e unicode padrão no script.

#incluir
#incluir
#incluir
#incluir
#incluir
#incluir
#incluir

Agora, a execução deste código começa quando as funções principais () são implementadas no código. Todas as outras funções relacionadas só são executadas depois de terem sido chamadas da função principal (). Portanto, dentro desta função main (), estamos inicializando uma variável de ponteiro do tipo de caractere com um valor de uma longa sequência de caracteres. Você precisa assumir que precisamos salvar essa string em um arquivo usando o arquivamento. Então, duas variáveis ​​inteiras, "arquivo" e "r" foram declaradas. Na variável "arquivo", estaremos obtendo um valor usando a função "Criar" do arquivo, i.e., A variável "arquivo" funciona como um descritor de arquivo.

A função create () seria usada para criar um arquivo de texto aleatório chamado “fsync.txt ”na pasta onde colocamos nosso arquivo de código ou estamos trabalhando. Esta função leva um argumento opcional que define o modo de acesso de um arquivo a ser criado. Estamos usando duas opções, s_irusr e s_iwusr, para acessar o arquivo no futuro, eu.e., Podemos acessá -lo para ler e escrever. Se o arquivo fosse criado com sucesso, o descritor "FILE" receberá "1" em troca; Caso contrário, 0 ou qualquer outro valor negativo.

A declaração "se" que foi usada neste script está verificando se o descritor "arquivo" obteve algum valor negativo além de "-1". Nesse caso, isso significa que o arquivo não é criado com sucesso, e a declaração do método Perror é utilizada para lançar uma exceção de função create (). A declaração de saída (1) estaria aqui para encerrar o programa se a função creat () não funcionar corretamente. Da mesma forma, a função write () de C é usada para escrever o ponteiro de string de caracteres "a" em um arquivo "fsync.txt ”usando o descritor“ arquivo ”.

Para isso, passamos o comprimento de uma variável a ser passada pelo uso da função de Strlen (a) como o terceiro argumento, o descritor de "arquivo" como o primeiro argumento e o ponteiro variável "A" como o segundo argumento. Se o valor "A" foi escrito com sucesso no arquivo, a função Write () retornaria algum valor não negativo à variável "R", incluindo "-1". Se algum valor negativo fosse passado para a variável "R", a instrução "se" lançaria um erro de função "write ()", usando a função "Perror" mais uma vez. A função fsync () usa o descritor de arquivo "arquivo" para informar o dispositivo de armazenamento sobre o estado de um "fsync.arquivo txt ”, eu.e., vazio, preenchido ou atualizado.

int main (int argc, char *argv [])
char *a = "Bem -vindo à programação Linux e C ...";
arquivo int, r;
arquivo = creat ("fsync.txt ", s_iwusr | s_irusr);
if (arquivo < -1)
perror ("creat ()");
saída (1);
r = write (arquivo, a, strlen (a));
if (r < -1)
perror ("write ()");
saída (1);
fsync (arquivo);
fechar (arquivo);
retornar 0;

Após a compilação de arquivos com a ferramenta “GCC” e a execução com o “./a.out ”Comando Utility, adicionamos os dados com sucesso a um arquivo de texto, eu.e., De acordo com a saída abaixo.

Conclusão

É isso! Depois de passar por todo o guia, assumimos que agora você tem todo o conhecimento sobre a função fsync () de C sem dúvida.