Sistema de Arquivos no Linux - Parte 7

Aula 14 · GNU/Linux para Servidores

Descrição

Esta aula aborda os dispositivos de entrada e saída no Linux, conhecidos como arquivos especiais de bloco e de caracter, explicando que todo dispositivo é mapeado no sistema de arquivos como arquivo. Discute-se como o sistema de arquivos do Linux é virtual, diferentemente do Windows, e menciona-se a possibilidade de unir múltiplos discos em um só por meio de LVM (não RAID). São apresentadas as diferenças entre dispositivos de caracter (teclado, mouse), que leem e escrevem byte a byte, e dispositivos de bloco (HD, SSD, pendrive), que operam em blocos de 512 bytes para maior desempenho. Por fim, demonstra-se em código a listagem desses dispositivos em /dev, testando se são de bloco ou caracter, além de alertas sobre problemas ao

Transcrição do áudio

E aí, coleguinha, vamos falar sobre dispositivos de entrada e saída, bom, nós conhecemos eles aqui no Linux como arquivos especiais de blocos e de caracter. Está no livro do Turniball, está na internet, só não sabe quem não ler. Todo o dispositivo de entrada e saída no Linux, ele é mapeado no sistema de arquivos como arquivo. No vídeo anterior você ficou sabendo que diretório não existe, como uma pasta. Agora você descobre que os dispositivos de entrada e saída estão mapeados no sistema de arquivos como se fosse no disco, coisa esquisita, é porque você do mundo Windows tem que entender você da pasta. O seguinte, a árvore do sistema de arquivos do Windows é a realidade do que tem no disco. No Linux o sistema de arquivos é todo virtual, então ele não existe como você ou enxerga. Então dá uma ágima, você criar por exemplo, múltiplas soluções que você não encontra no mundo Windows, como por exemplo, o teu monte de discos sendo uma coisa só. Eu não estou falando de hide, vou repetir, o monte de discos sendo um disco só, mas não é hide, é LVM. Então o mundo Linux é para servidores, é para coisa parruda, é para coisa top. Esse é o mundo Linux, de programador para programador. E esses arquivos especiais de bloco e caracté, exemplo, meu teclado é um dispositivo de caracté, meu mouse é um dispositivo especial de caracté. Qual a diferença entre eles na visão do sistema operacional? Nenhuma. Esses dois dispositivos de caracté que estão aqui na minha mesa para o sistema operacional não há nenhuma diferença entre eles, há não ser a porta que ele está conectado. A USB 1, a USB 0, só isso, só isso. Ai caramba, e dispositivo de bloco? Um pendrive, é um dispositivo de bloco, um HD é um dispositivo de bloco, no caso SSD hoje em dia. Por isso que você consegue instalar um sistema operacional em um pendrive, porque ele é encarado como um sistema de bloco. Ele pode alocar arquivos como um sistema operacional. Você tem uma noção de como o Linux é poderoso, dispositivos de bloco, conforme a teoria descrita, permite que seja feita escrita ou leitura, byte, em blocos de byte, se é dispositivo de bloco é de blocos de byte. 512, porque você pense, você tem um arquivo de 1 giga, pensa você escrever no seu HD byte a byte, vai lidar byte a byte, é escrever um byte, vai lidar um byte, escrever um byte, vai lidar um byte. Vai lidar, por isso que existem os sistemas de bloco com byte de 512 e o read de 512. Ele escreve 512 bytes, valida, escreve mais 512 bytes, valida, sempre assim, e aí fica mais rápido. Já o teclado não, né, quando eu pressiono uma tecla, ele realmente escreve um byte e valida, porque o meu teclado já é de dispositivo especial de cara que ter, não é isso? Legal, nesse próximo programa é o clássico listar, que nós vimos até então, beleza, e com um teste, se for um dispositivo especial de bloco, eu estou testando com esblockfile, de fons de dispositivo especial de carácter, is carácter file. E a leitura pode ser feita sem nenhuma recursividade, pois todos esses arquivos estão em barra deve, todos eles estão em barra deve. Então, naturalmente que eu já separei o código, já organizei aqui, então aqui em barra deve, aqui eu faço a interação, conforme eu expliquei o que que é um interator, tem um if aqui mágico, para verificar se é de bloco ou se é de carácter, e um continue. E ele só vai escrever se for um desses dois dispositivos. Deixa eu ver se o C-Aute está corretamente, o STD and line, ok, tudo correto, contra o X. Legal. Eu vou precisar de recompilar. Eita! Hummm! Tem alguma cagadinha então aqui, vamos lá. Hummm! O for que continue, if, que. Deixa eu ver se não tem nenhum carácter especial maluco. Ha ha ha! Galera puta que pariu, olha só, em bicho. Cara, é aquele negócio, eu sempre falo que essa coisa vai acontecer com aluno que copiei cola, eu copiei e colei, deu merda, hein. Tá vendo isso aqui? Você não enxerga isso, olha só. Tá aqui ó, tá aqui. Mas tem uma técnicazinha que eu sempre falo para meus alunos, no Conej Copie e Cola, principalmente coisas de PDF que são geradas a partir de Word, pode vir uns caracteres malucos por causa do estilo do Word. E olha só, cara, aqui ó, tá vendo aqui, essa é a quebra natural, quebra natural de string, quebra natural de string, natural de string, natural de string, natural de string, legal? Quebra natural de string, quebra natural de string, aqui também. Aí de repente, isso aqui, tá vendo? Isso aqui. Isso aqui cagou tudo. Aqui ó, aqui ó, tá vendo? Então tem que remover isso aqui, cara. Bom, vamos lá. É o copiar cola, né cara. Vamos lá galera, olha só. Ó, limpei ó, o Ctrl C, Ctrl V, vai tá bom, que só aconteceu com você, porque muita gente fala, ah, mas eu copiei e colei o código. Cara, pode dar problema porque eu tô usando o terminal, né? Ah, vamos lá, isso aqui. Ah, pô, eu podia ter de novo isso, cara. É pra você compilar, bicho. É o G mais mais. Aló, foi bom que aconteceu, cara. Aqui, ele listou todos os dispositivos, ó. É dispositivo especial de caracté, de caracté, de caracté, de caracté. São todos os dispositivos especiais de caracté. Ó, que que é isso aqui? Que que é isso aqui? Eu desconheço, hein? Puta merda, vou ter que ver isso aqui. Ah, coleguinha. Ele escreveu todos de caracté. Deixa eu ver meu código. Olha só. Cadê os dispositivos de bloco? Deveria ter aqui. Aqui, ó. Pô, tá ficando doido, meu? Aqui, ó. Aí, coleguinha, que tá aqui, ó. É que é quase tudo de caracté. Olha, esse aqui é o disco, né? Se eu colocar um pendrive, vai aparecer o pendrive também. Legal. Não tem nada errado, não. É isso aí. Até o próximo vídeo. Até mais. Tchau.
Voltar ao curso